blob: 1eb978d76b173255efb9d3afd8a8012873dd0f2c [file] [log] [blame]
# Copyright 2021 The Fuchsia 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/components.gni")
declare_args() {
intel_media_driver_debug = is_debug
}
va_install_root = "$root_out_dir/build-intel-media-driver/install"
config("va-config") {
include_dirs = [ "$va_install_root/include" ]
libs = [ "$va_install_root/lib/libva.so.2" ]
}
resource("libva-resource") {
sources = [ "$va_install_root/lib/libva.so.2" ]
outputs = [ "lib/libva.so.2" ]
}
group("va") {
public_configs = [ ":va-config" ]
public_deps = [ ":libva-resource" ]
}
config("va-magma-config") {
include_dirs = [ "$va_install_root/include" ]
libs = [ "$va_install_root/lib/libva-magma.so.2" ]
}
resource("libva-magma-resource") {
sources = [ "$va_install_root/lib/libva-magma.so.2" ]
outputs = [ "lib/libva-magma.so.2" ]
}
group("va-magma") {
public_configs = [ ":va-magma-config" ]
public_deps = [
":libva-magma-resource",
"//src/graphics/lib/magma/include:magma_abi",
]
}
resource("gmmlib-resource") {
sources = [ "$va_install_root/lib/libigdgmm.so.11" ]
outputs = [ "lib/libigdgmm.so.11" ]
}
resource("va-intel-resource") {
sources = [ "$va_install_root/iHD_drv_video.so" ]
outputs = [ "lib/iHD_drv_video.so" ]
}
# Only have a copy of the action in one toolchain.
if (current_toolchain == default_toolchain) {
action("out-of-tree-build") {
script = "build.sh"
outputs = [
"$va_install_root/lib/libva.so.2",
"$va_install_root/lib/libva-magma.so.2",
"$va_install_root/lib/libigdgmm.so.11",
"$va_install_root/iHD_drv_video.so",
# Placeholder is here just to force an incremental build
"$va_install_root/place_holder",
]
fuchsia_dir = rebase_path("$root_build_dir/../..")
fuchsia_out_dir = rebase_path(root_out_dir)
args = [
fuchsia_dir,
fuchsia_out_dir,
]
if (intel_media_driver_debug) {
args += [ "debug" ]
} else {
args += [ "release" ]
}
deps = [
"//sdk:zircon_sysroot_export",
"//src/graphics/lib/magma/src/libmagma:libmagma_complete($shlib_toolchain)",
]
}
}
group("va-intel") {
public_deps = [
":gmmlib-resource",
":va",
":va-intel-resource",
":va-magma",
]
deps = [ ":out-of-tree-build" ]
}