X11 and Ozone: fix use_x11 && use_x11 build for UIControlsAura
When use_x11 && use_ozone are set to true at the same
time, compiler throws an error about multiple definitions
of the CreateUIControlsAura.
Thus, to fix that, create a separate source file for
is_linux case that will choose what class to
use based on the IsUsingOzonePlatform feature flag.
Please note that this is a temp solution and it will
be removed once use_x11 goes away.
PS: this patch uses the same approach used in other patches.
For example, https://crrev.com/c/2247719
PPS: I didn't spot that in the beginning as linux-rel bot
couldn't compile use_x11 && use_ozone because of failures
in the chrome installer step. But after we fixed the sysroot,
I spotted some problems and fixing them now.
Bug: 1085700
Change-Id: I1c2f3a0762df4b195775d30f580df09090f13999
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2362698
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Maksim Sisov (GMT+3) <msisov@igalia.com>
Cr-Commit-Position: refs/heads/master@{#799289}
diff --git a/ui/aura/BUILD.gn b/ui/aura/BUILD.gn
index 5edf943..0b7516f 100644
--- a/ui/aura/BUILD.gn
+++ b/ui/aura/BUILD.gn
@@ -247,9 +247,14 @@
sources += [ "test/ui_controls_factory_aurawin.cc" ]
}
+ if (is_linux) {
+ sources += [ "test/ui_controls_factory_aura_linux.cc" ]
+ }
+
if (use_x11) {
sources += [
- "test/ui_controls_factory_aurax11.cc",
+ "test/ui_controls_aurax11.cc",
+ "test/ui_controls_aurax11.h",
"test/x11_event_sender.cc",
"test/x11_event_sender.h",
]
@@ -264,7 +269,10 @@
if (is_fuchsia) {
deps += [ "//ui/ozone" ]
}
- sources += [ "test/ui_controls_factory_ozone.cc" ]
+ sources += [
+ "test/ui_controls_ozone.cc",
+ "test/ui_controls_ozone.h",
+ ]
}
if (is_linux || is_chromeos) {