blob: 0a2f17158d93dc05c9c34beaf80b6d2e759d4f52 [file] [log] [blame]
# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=6
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"
inherit cros-workon platform user
DESCRIPTION="Device telemetry and diagnostics for Chrome OS"
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics"
LICENSE="BSD-Google"
SLOT="0"
KEYWORDS="~*"
IUSE="+seccomp"
COMMON_DEPEND="
chromeos-base/libbrillo:=
chromeos-base/libmojo
dev-libs/grpc
dev-libs/protobuf:=
"
DEPEND="
${COMMON_DEPEND}
chromeos-base/system_api
"
RDEPEND="
${COMMON_DEPEND}
chromeos-base/minijail
"
pkg_preinst() {
enewuser diagnostics
enewgroup diagnostics
}
src_install() {
dobin "${OUT}/diagnosticsd"
dobin "${OUT}/diagnostics_processor"
# Install seccomp policy files.
insinto /usr/share/policy
use seccomp && newins "init/diagnosticsd-seccomp-${ARCH}.policy" \
diagnosticsd-seccomp.policy
use seccomp && newins "init/diagnostics_processor-seccomp-${ARCH}.policy" \
diagnostics_processor-seccomp.policy
# Install D-Bus configuration file.
insinto /etc/dbus-1/system.d
doins dbus/org.chromium.Diagnosticsd.conf
# Install the init scripts.
insinto /etc/init
doins init/diagnosticsd.conf
doins init/diagnostics_processor.conf
}
platform_pkg_test() {
local tests=(
diagnosticsd_test
libgrpc_async_adapter_test
)
local test_bin
for test_bin in "${tests[@]}"; do
platform_test "run" "${OUT}/${test_bin}"
done
}