blob: fdd31ba846bc1a7737fac94cf722df4081429f38 [file] [log] [blame]
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/sysroot.gni")
# Defines a config specifying the result of running pkg-config for the given
# packages. Put the package names you want to query in the "packages" variable
# inside the template invocation.
#
# You can also add defines via the "defines" variable. This can be useful to
# add this to the config to pass defines that the library expects to get by
# users of its headers.
#
# Example:
# pkg_config("mything") {
# packages = [ "mything1", "mything2" ]
# defines = [ "ENABLE_AWESOME" ]
# }
template("pkg_config") {
assert(defined(packages),
"Variable |packages| must be defined to be a list in pkg_config.")
config(target_name) {
if (sysroot != "") {
# Pass the sysroot if we're using one (it requires the CPU arch also).
args = ["-s", sysroot, "-a", cpu_arch] + packages
} else {
args = packages
}
pkgresult = exec_script("//build/config/linux/pkg-config.py",
args, "value")
include_dirs = pkgresult[0]
cflags = pkgresult[1]
libs = pkgresult[2]
lib_dirs = pkgresult[3]
ldflags = pkgresult[4]
}
}