blob: fe6af547378107916ecd5a144b1dbc84010e90d1 [file] [log] [blame]
# 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="0c814ece11a50512bd229dc0ddcec46c698519d0"
CROS_WORKON_TREE=("cf397e9600a0b2d153f579c58419577cfca75ab7" "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="75564b225722d164aba99e0d628b4a9af6e0e063"
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
epatch "${FILESDIR}"/quipper-disable-flaky-tests.patch
epatch "${FILESDIR}"/quipper-arraysize.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
}