blob: b9faae12ad9cbe49f5db4ca19838950dea04a543 [file] [log] [blame]
# 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="d03de8e4b1ab3eab2bfbb924342b02f176b50b08"
CROS_WORKON_TREE="281c4e1d191b9075aafb7447fb29d80bc74e6d87"
CROS_WORKON_INCREMENTAL_BUILD="1"
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_LOCALNAME="platform2"
CROS_WORKON_OUTOFTREE_BUILD=1
PLATFORM_SUBDIR="debugd"
inherit cros-workon platform user
DESCRIPTION="Chrome OS debugging service"
HOMEPAGE="http://www.chromium.org/"
LICENSE="BSD-Google"
SLOT="0"
KEYWORDS="*"
IUSE="cellular wimax"
RDEPEND="
chromeos-base/chromeos-login
chromeos-base/chromeos-minijail
chromeos-base/chromeos-ssh-testkeys
chromeos-base/chromeos-sshd-init
chromeos-base/libbrillo
chromeos-base/shill-client
chromeos-base/system_api
chromeos-base/vboot_reference
!chromeos-base/workarounds
dev-libs/dbus-c++
dev-libs/libpcre
dev-libs/protobuf
net-libs/libpcap
net-wireless/iw
sys-apps/iproute2
sys-apps/memtester
sys-apps/rootdev
sys-apps/smartmontools
cellular? ( virtual/modemmanager )
"
DEPEND="${RDEPEND}
chromeos-base/chromeos-login
chromeos-base/debugd-client
sys-apps/dbus
virtual/modemmanager"
pkg_preinst() {
enewuser "debugd"
enewgroup "debugd"
enewuser "debugd-logs"
enewgroup "debugd-logs"
enewgroup "daemon-store"
enewgroup "logs-access"
}
src_install() {
dobin "${OUT}"/generate_logs
into /
dosbin "${OUT}"/debugd
dodir /debugd
exeinto /usr/libexec/debugd/helpers
doexe "${OUT}"/capture_packets
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
use cellular && doexe "${OUT}"/modem_status
use wimax && doexe "${OUT}"/wimax_status
doexe src/helpers/{capture_utility,minijail-setuid-hack,systrace}.sh
use cellular && doexe src/helpers/send_at_command.sh
# 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
insinto /etc/perf_commands
doins -r share/perf_commands/*
}
platform_pkg_test() {
pushd "${S}/src" >/dev/null
platform_test "run" "${OUT}/debugd_testrunner"
./helpers/capture_utility_test.sh || die
popd >/dev/null
}