Commit 622d466d authored by Pavel Golikov's avatar Pavel Golikov Committed by Commit Bot

[Ozone] Add out of tree platforms build support

Introduced ozone_extra_path build argument. It points to additional
platforms file to include while building ozone platforms. It points to
//ui/ozone/ozone_extra.gni by default for backward compatibility.

Bug: 918118
Change-Id: If6db25b3693f319955fdec54d9f91d47422a6e38
Reviewed-on: https://chromium-review.googlesource.com/c/1391687Reviewed-by: default avatarMichael Spang <spang@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619679}
parent 5f37d98e
...@@ -7,7 +7,6 @@ import("//build/config/ui.gni") ...@@ -7,7 +7,6 @@ import("//build/config/ui.gni")
import("//gpu/vulkan/features.gni") import("//gpu/vulkan/features.gni")
import("//testing/test.gni") import("//testing/test.gni")
import("//ui/ozone/ozone.gni") import("//ui/ozone/ozone.gni")
import("//ui/ozone/ozone_extra.gni")
assert(use_ozone) assert(use_ozone)
...@@ -133,6 +132,9 @@ jumbo_component("ozone_base") { ...@@ -133,6 +132,9 @@ jumbo_component("ozone_base") {
"//ui/ozone/public/interfaces", "//ui/ozone/public/interfaces",
"//ui/ozone/platform/*", "//ui/ozone/platform/*",
] ]
# Out of tree platforms can depend on this.
visibility += ozone_external_platform_visibility
} }
source_set("platform") { source_set("platform") {
...@@ -187,6 +189,9 @@ source_set("platform") { ...@@ -187,6 +189,9 @@ source_set("platform") {
# This is used for platform tests. # This is used for platform tests.
visibility += [ "//ui/ozone/platform/*" ] visibility += [ "//ui/ozone/platform/*" ]
# This can be used for out of tree platforms tests.
visibility += ozone_external_platform_visibility
} }
jumbo_component("ozone") { jumbo_component("ozone") {
......
...@@ -39,4 +39,7 @@ source_set("common") { ...@@ -39,4 +39,7 @@ source_set("common") {
] ]
visibility = [ "//ui/ozone/platform/*" ] visibility = [ "//ui/ozone/platform/*" ]
# Out of tree platforms can depend on this.
visibility += ozone_external_platform_visibility
} }
...@@ -6,6 +6,10 @@ import("//build/config/chromecast_build.gni") ...@@ -6,6 +6,10 @@ import("//build/config/chromecast_build.gni")
import("//build/config/ui.gni") import("//build/config/ui.gni")
declare_args() { declare_args() {
# Ozone extra platforms file path. Can be overridden to build out of
# tree ozone platforms.
ozone_extra_path = "//ui/ozone/ozone_extra.gni"
# Select platforms automatically. Turn this off for manual control. # Select platforms automatically. Turn this off for manual control.
ozone_auto_platforms = use_ozone ozone_auto_platforms = use_ozone
} }
...@@ -79,6 +83,13 @@ declare_args() { ...@@ -79,6 +83,13 @@ declare_args() {
} }
} }
import(ozone_extra_path)
_ozone_extra_directory = get_path_info(ozone_extra_path, "dir")
# Extra paths to add to targets visibility list.
ozone_external_platform_visibility = [ "$_ozone_extra_directory/*" ]
assert(use_ozone || !(ozone_platform_cast || ozone_platform_gbm || assert(use_ozone || !(ozone_platform_cast || ozone_platform_gbm ||
ozone_platform_headless || ozone_platform_x11 || ozone_platform_headless || ozone_platform_x11 ||
ozone_platform_wayland || ozone_platform_windows || ozone_platform_wayland || ozone_platform_windows ||
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment