blob: 9b8706f351386aef625d224e4d3e5525376bfd2f [file] [log] [blame]
# Copyright 2014 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=4
CROS_WORKON_COMMIT=("881f3321bf80f5cb7028e0e870591c3d5ba13d2f" "7fde2236feb3c77b9265952353551e04fef9432d")
CROS_WORKON_TREE=("e2269c44d323e85280117929aa2ce59ca03cf53f" "561b8ac8078cf9a66a946eefa0ec87f6ddd79c14")
CROS_WORKON_LOCALNAME=("platform2" "aosp/system/webservd")
CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/webservd")
CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/webserver")
PLATFORM_SUBDIR="webserver"
inherit cros-workon platform user
DESCRIPTION="HTTP sever interface library"
HOMEPAGE="http://www.chromium.org/"
LICENSE="BSD-Google"
SLOT=0
KEYWORDS="*"
RDEPEND="
chromeos-base/libbrillo
chromeos-base/permission_broker
net-libs/libmicrohttpd
!chromeos-base/libwebserv
"
DEPEND="
${RDEPEND}
"
pkg_preinst() {
# Create user and group for webservd.
enewuser "webservd"
enewgroup "webservd"
}
src_install() {
insinto "/usr/$(get_libdir)/pkgconfig"
local v
for v in "${LIBCHROME_VERS[@]}"; do
libwebserv/preinstall.sh "${OUT}" "${v}"
dolib.so "${OUT}/lib/libwebserv-${v}.so"
doins "${OUT}/lib/libwebserv-${v}.pc"
done
# Install header files from libwebserv
insinto /usr/include/libwebserv
doins libwebserv/*.h
# Install init scripts for webservd.
insinto /etc/init
doins webservd/etc/init/webservd.conf
# Install DBus configuration files.
insinto /etc/dbus-1/system.d
doins webservd/etc/dbus-1/org.chromium.WebServer.conf
# Install seccomp filter for webservd.
insinto /usr/share/filters
doins webservd/usr/share/filters/webservd-seccomp.policy
# Install web server daemon.
dobin "${OUT}"/webservd
}
platform_pkg_test() {
local tests=(
libwebserv_testrunner
webservd_testrunner
)
local test_bin
for test_bin in "${tests[@]}"; do
platform_test "run" "${OUT}/${test_bin}"
done
}