blob: fbb352e860491884c629e7e65848cab2576feaec [file] [log] [blame] [edit]
# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Generates a GLib binding. sources must be a singleton list.
#
# Parameters:
# dbus_glib_out_dir: generated files' output directory.
# dbus_glib_prefix: the prefix of the functions in the generated output.
# dbus_glib_type (optional): "client" (default) or "server" specifying
# generated bindings mode.
# dbus_glib_header_stem: the prefix of generated file names.
#
template("generate_dbus_glib") {
forward_variables_from(invoker,
[
"dbus_glib_out_dir",
"dbus_glib_prefix",
"dbus_glib_type",
"dbus_glib_header_stem",
"all_dependent_configs",
])
if (!defined(dbus_glib_type)) {
dbus_glib_type = "client"
}
dbus_glib_output = "${root_gen_dir}/${dbus_glib_out_dir}/${dbus_glib_header_stem}.dbus${dbus_glib_type}.h"
action(target_name) {
sources = invoker.sources
script = "//common-mk/file_generator_wrapper.py"
outputs = [ "${dbus_glib_output}" ]
args = [ "dbus-binding-tool" ] + rebase_path(sources) + [
"--mode=glib-${dbus_glib_type}",
"--prefix=${dbus_glib_prefix}",
"--output=${dbus_glib_output}",
]
}
}