blob: a9329585eae386432b78332f01a488994878c606 [file] [log] [blame]
# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "dad0772f352db386bc9b524f46ecfc0d22ca9723")
CROS_WORKON_TREE=("4fdfdbe461ccedeaaf176391c0bbb0f74943be45" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "b45ddf70409958a65c0330dc8f5702e7074f8cc7" "9e4d851d5f49d3ff4dd1b7b8a0f59b2650d3242f")
CROS_WORKON_INCREMENTAL_BUILD=1
CROS_WORKON_PROJECT=(
"chromiumos/platform2"
"chromiumos/platform/dev-util"
)
CROS_WORKON_LOCALNAME=(
"platform2"
"platform/dev"
)
CROS_WORKON_SUBTREE=(
".clang-format common-mk chromeos-config .gn power_manager"
"test/gtest"
)
CROS_WORKON_DESTDIR=(
"${S}/platform2"
"${S}/platform/dev"
)
PLATFORM_SUBDIR="chromeos-config"
inherit cros-workon platform gtest
DESCRIPTION="Chrome OS configuration tools"
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
LICENSE="BSD-Google"
SLOT=0
KEYWORDS="*"
IUSE=""
GTEST_METADATA=(
libcros_config/cros_config_functional_test.yaml
)
GTEST_TEST_INSTALL_DIR="/usr/local/gtest/cros_config"
RDEPEND=""
DEPEND="${RDEPEND}"
src_install() {
dolib.so "${OUT}/lib/libcros_config.so"
insinto "/usr/include/chromeos/chromeos-config/libcros_config"
doins "${S}"/libcros_config/*.h
"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
insinto "/usr/$(get_libdir)/pkgconfig"
doins "${OUT}"/libcros_config.pc
insinto "/usr/include/cros_config"
doins "libcros_config/cros_config_interface.h"
doins "libcros_config/cros_config.h"
doins "libcros_config/fake_cros_config.h"
dobin "${OUT}"/cros_config
newbin cros_config_mock.sh cros_config_mock
dosbin "${OUT}"/cros_configfs
if use test; then
exeinto "${GTEST_TEST_INSTALL_DIR}"
doexe "${OUT}/cros_config_functional_test"
install_gtest_metadata "${GTEST_METADATA[@]}"
fi
# Install init scripts.
insinto /etc/init
doins init/*.conf
}
platform_pkg_test() {
# Run this here since we may not run cros_config_main_test.
./chromeos-config-test-setup.sh
local tests=(
fake_cros_config_test
cros_config_test
cros_config_main_test
)
local test_bin
for test_bin in "${tests[@]}"; do
platform_test "run" "${OUT}/${test_bin}"
done
./run_tests.sh || die "cros_config unit tests have errors"
}