blob: f3d69f869ae534d47d69b9ac8a97b7efea55786c [file] [log] [blame]
# Copyright 2017 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=5
CROS_WORKON_COMMIT="0b5c7213be8040d1f45a1c6cdeb4e8d185e4ec23"
CROS_WORKON_TREE=("be9deee33ea6aedd9dfe69b33c12accd5733a331" "b9e7cd8d9f2308a5359477e9b568fcde1e3d5e88" "4b2f98416978d0324762655a3fb59b71d989b60e" "1ed3ff8b47cba1d3cd3a64cd72907465889def66" "dc1506ef7c8cfd2c5ffd1809dac05596ec18773c")
CROS_WORKON_INCREMENTAL_BUILD="1"
CROS_WORKON_LOCALNAME="platform2"
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_OUTOFTREE_BUILD=1
# TODO(crbug.com/809389): Avoid directly including headers from other packages.
CROS_WORKON_SUBTREE="common-mk arc/setup chromeos-config metrics .gn"
PLATFORM_NATIVE_TEST="yes"
PLATFORM_SUBDIR="arc/setup"
inherit cros-workon platform
DESCRIPTION="Set up environment to run ARC."
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup"
LICENSE="BSD-Google"
SLOT="0"
KEYWORDS="*"
IUSE="
arcvm
esdfs
houdini
houdini64
ndk_translation
unibuild"
RDEPEND="
chromeos-base/bootstat
!<chromeos-base/chromeos-cheets-scripts-0.0.4
unibuild? ( chromeos-base/chromeos-config )
chromeos-base/chromeos-config-tools
chromeos-base/cryptohome-client
chromeos-base/libbrillo
chromeos-base/metrics
chromeos-base/minijail
chromeos-base/swap-init
sys-libs/libselinux
dev-libs/dbus-glib
dev-libs/protobuf
esdfs? ( sys-apps/restorecon )"
DEPEND="${RDEPEND}
chromeos-base/system_api"
enable_esdfs() {
[[ -f "$1" ]] || die
local data=$(jq ".USE_ESDFS=true" "$1")
echo "${data}" > "$1" || die
}
src_install() {
dosbin "${OUT}"/arc-setup
insinto /etc/init
if ! use arcvm; then
doins etc/arc-boot-continue.conf
doins etc/arc-kmsg-logger.conf
doins etc/arc-lifetime.conf
doins etc/arc-sensor.conf
doins etc/arc-update-restorecon-last.conf
fi
if use esdfs; then
doins etc/arc-sdcard.conf
doins etc/arc-sdcard-mount.conf
fi
doins etc/arc-sysctl.conf
doins etc/arc-system-mount.conf
doins etc/arc-ureadahead.conf
doins etc/arc-ureadahead-trace.conf
insinto /etc/dbus-1/system.d
doins etc/dbus-1/ArcUpstart.conf
insinto /usr/share/arc-setup
doins etc/config.json
if use esdfs; then
enable_esdfs "${D}/usr/share/arc-setup/config.json"
fi
if ! use arcvm; then
insinto /opt/google/containers/arc-art
doins "${OUT}/dev-rootfs.squashfs"
# container-root is where the root filesystem of the container in which
# patchoat and dex2oat runs is mounted. dev-rootfs is mount point
# for squashfs.
diropts --mode=0700 --owner=root --group=root
keepdir /opt/google/containers/arc-art/mountpoints/container-root
keepdir /opt/google/containers/arc-art/mountpoints/dev-rootfs
keepdir /opt/google/containers/arc-art/mountpoints/vendor
fi
}
platform_pkg_test() {
platform_test "run" "${OUT}/arc-setup_testrunner"
}