blob: 2cbc4f4a4ad59b304f9306440ae87d78843ea076 [file] [log] [blame]
# Copyright 2019 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//common-mk/mojom_bindings_generator.gni")
import("//common-mk/pkg_config.gni")
group("all") {
deps = [
":cups_proxy",
":install_dbus_config",
":install_dbus_service",
":install_init",
":install_policy",
":install_tmpfiles_config",
]
if (use.test) {
deps += [ ":cups_proxy_unittest" ]
}
}
generate_mojom_bindings("cups_proxy_mojo_bindings") {
mojo_root = "${platform2_root}"
sources = [ "mojom/proxy.mojom" ]
}
pkg_config("cups_proxy_common_pkg_deps") {
pkg_deps = [
"libbrillo",
"libchrome",
"libmicrohttpd",
"libmojo",
]
}
static_library("cups_proxy_common") {
sources = [
"daemon.cc",
"mhd_http_request.cc",
"mhd_util.cc",
"mojo_handler.cc",
]
all_dependent_configs = [ ":cups_proxy_common_pkg_deps" ]
deps = [ ":cups_proxy_mojo_bindings" ]
}
executable("cups_proxy") {
install_path = "bin"
sources = [ "main.cc" ]
deps = [ ":cups_proxy_common" ]
}
if (use.test) {
executable("cups_proxy_unittest") {
run_test = true
sources = [ "mhd_http_request_test.cc" ]
configs += [ "//common-mk:test" ]
deps = [
":cups_proxy_common",
"//common-mk/testrunner:testrunner",
]
}
}
install_config("install_init") {
sources = [ "init/cups_proxy.conf" ]
install_path = "upstart"
}
install_config("install_tmpfiles_config") {
sources = [ "tmpfiles.d/cups_proxy.conf" ]
install_path = "tmpfilesd"
}
install_config("install_policy") {
_arch = getenv("ARCH")
sources = [ "seccomp/cups_proxy-seccomp-${_arch}.policy" ]
install_path = "seccomp_policy"
outputs = [ "cups_proxy-seccomp.policy" ]
}
install_config("install_dbus_config") {
sources = [ "dbus/org.chromium.CupsProxyDaemon.conf" ]
install_path = "dbus_system_d"
}
install_config("install_dbus_service") {
sources = [ "dbus/org.chromium.CupsProxyDaemon.service" ]
install_path = "dbus_system_services"
}