blob: 86d016fe25207ab07adb59c4e4178e44e774cb17 [file] [log] [blame]
# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI="4"
CROS_WORKON_PROJECT="chromiumos/platform/mtpd"
CROS_WORKON_OUTOFTREE_BUILD=1
inherit cros-debug cros-workon
DESCRIPTION="MTP daemon for Chromium OS"
HOMEPAGE="http://www.chromium.org/"
SRC_URI=""
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="-asan -clang test"
REQUIRED_USE="asan? ( clang )"
LIBCHROME_VERS="180609"
RDEPEND="
chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=]
chromeos-base/libchromeos
chromeos-base/platform2
dev-cpp/gflags
dev-libs/dbus-c++
>=dev-libs/glib-2.30
dev-libs/protobuf
media-libs/libmtp
sys-fs/udev
"
DEPEND="${RDEPEND}
test? ( dev-cpp/gtest )"
src_prepare() {
cros-workon_src_prepare
}
src_configure() {
clang-setup-env
cros-workon_src_configure
}
src_compile() {
cros-workon_src_compile
}
src_test() {
if ! use x86 && ! use amd64 ; then
einfo Skipping unit tests on non-x86 platform
else
# Needed for `cros_run_unit_tests`.
cros-workon_src_test
fi
}
src_install() {
cros-workon_src_install
exeinto /opt/google/mtpd
doexe "${OUT}"/mtpd
# Install seccomp policy file.
insinto /opt/google/mtpd
newins "mtpd-seccomp-${ARCH}.policy" mtpd-seccomp.policy
# Install upstart config file.
insinto /etc/init
doins mtpd.conf
# Install D-Bus config file.
insinto /etc/dbus-1/system.d
doins org.chromium.Mtpd.conf
}