blob: 73caa134b54953ef0fc47f0860964155daade680 [file] [log] [blame]
# Copyright 2012 The ChromiumOS Authors
# 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 https://issuetracker.google.com/201299127.
#
# eclass bug workaround count: 8
EAPI=7
CROS_WORKON_PROJECT=(
"chromiumos/platform/ec"
"chromiumos/third_party/cryptoc"
"external/gitlab.com/libeigen/eigen"
"external/gob/boringssl/boringssl"
"external/github.com/google/googletest"
)
CROS_WORKON_LOCALNAME=(
"platform/ec"
"third_party/cryptoc"
"third_party/eigen3"
"third_party/boringssl"
"third_party/googletest"
)
CROS_WORKON_EGIT_BRANCH=(
"main"
"main"
"upstream/master"
"upstream/master"
"main"
)
CROS_WORKON_DESTDIR=(
"${S}/platform/ec"
"${S}/third_party/cryptoc"
"${S}/third_party/eigen3"
"${S}/third_party/boringssl"
"${S}/third_party/googletest"
)
inherit cros-ec coreboot-sdk cros-workon
# TODO(b/332378804): Compile build host tools with clang.
BDEPEND="
sys-devel/gcc
"
# Make sure config tools use the latest schema.
BDEPEND+="
>=chromeos-base/chromeos-config-host-0.0.2
"
# coreboot-sdk cross-compilers are used by the EC build.
# TODO - b/330748516: Some boards may not need all of these cross-compilers. We
# could use USE flags to determine the required toolchains for each board.
BDEPEND+="
cross-embedded-arm-eabi/coreboot-sdk
cross-embedded-nds32le-elf/coreboot-sdk
cross-embedded-riscv-elf/coreboot-sdk
"
DESCRIPTION="Embedded Controller firmware code"
KEYWORDS="~*"
# Restrict strip because chromeos-ec package installs unstrippable firmware.
RESTRICT="strip"