blob: 2d5ecf2a95cae20d48e3b60db33367950b3f4e06 [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="f64c1749b81099c31822e6c99d229a1e250a8d5b"
CROS_WORKON_TREE=("dc1506ef7c8cfd2c5ffd1809dac05596ec18773c" "c1d6f47d810546f7412d95791a85fb4d35831af3" "9de8ed774f0c87a996644ded49b8cf0163bc26c9" "b0bb3320faed7c362fd085f17b0e25e41ca05ab5" "b6e41d60c96bde31b84aeac16ed07172841e890f" "9a792492371d724b991bfe85be0636f48b6e1b91" "11b38b189635a2e63dd268565504562a52278f16" "11f584bb7dd3244e1eec145f7e377b32b68e8b3b" "8d56101132a0eb49b00e4813652b31640263aa10")
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_LOCALNAME="platform2"
# TODO(crbug.com/914263): camera/hal is unnecessary for this build but is
# workaround for unexpected sandbox behavior.
CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal camera/hal_adapter camera/include camera/mojo common-mk metrics"
CROS_WORKON_OUTOFTREE_BUILD="1"
CROS_WORKON_INCREMENTAL_BUILD="1"
PLATFORM_SUBDIR="camera"
PLATFORM_GYP_FILE="hal_adapter/cros_camera_service.gyp"
inherit cros-camera cros-constants cros-workon platform user
DESCRIPTION="Chrome OS camera service. The service is in charge of accessing
camera device. It uses unix domain socket to build a synchronous channel."
LICENSE="BSD-Google"
SLOT="0"
KEYWORDS="*"
IUSE="arc-camera1 cheets +cros-camera-algo-sandbox"
RDEPEND="
chromeos-base/libbrillo
!media-libs/arc-camera3
cros-camera-algo-sandbox? ( media-libs/cros-camera-libcab )
media-libs/cros-camera-hal-usb
media-libs/cros-camera-libcamera_common
media-libs/cros-camera-libcamera_metadata
media-libs/libsync
virtual/cros-camera-effects
virtual/cros-camera-hal
virtual/cros-camera-hal-configs"
DEPEND="${RDEPEND}
chromeos-base/metrics
media-libs/cros-camera-android-headers
media-libs/minigbm
virtual/pkgconfig
x11-libs/libdrm"
src_install() {
dobin "${OUT}/cros_camera_service"
insinto /etc/init
doins hal_adapter/init/cros-camera.conf
# Install seccomp policy file.
insinto /usr/share/policy
newins "hal_adapter/seccomp_filter/cros-camera-${ARCH}.policy" cros-camera.policy
if use cheets && ! use arc-camera1; then
insinto "${ARC_VENDOR_DIR}/etc/init"
doins hal_adapter/init/init.camera.rc
fi
}
pkg_preinst() {
enewuser "arc-camera"
enewgroup "arc-camera"
}