Enable content shell on Tizen(TM1/TV) profile 21/284321/11
authoruzair <uzair.jaleel@samsung.com>
Tue, 15 Nov 2022 13:21:02 +0000 (18:51 +0530)
committerDae-Hyun Ko <dhyuna.ko@samsung.com>
Mon, 21 Nov 2022 11:03:33 +0000 (11:03 +0000)
Below change fixes all related gn, compiler and linker errors
for successfull generation for chromium-efl rpm for tizen profile.

Also migrates [1],[2] and [3]. [2] and [3] are needed for successfull compilation
with enable_vulkan=false.

[1] https://review.tizen.org/gerrit/c/268880
[2] https://chromium-review.googlesource.com/c/chromium/src/+/4004619
[3] https://chromium-review.googlesource.com/c/chromium/src/+/4013439

Build: $ ./tizen_src/build/build_standard_armv7l.sh
Launch: $  /usr/lib/chromium-efl/content_shell --no-sandbox
  --content-shell-host-window-size=720x1280 --ignore-gpu-blocklist

Build: $ ./tizen_src/build/build_tv.sh
Launch: $  /usr/lib/chromium-efl/content_shell --no-sandbox
  --content-shell-host-window-size=1920x1080 --ignore-gpu-blocklist

References:
https://review.tizen.org/gerrit/c/268810

Change-Id: I55d3b43fd4a612f40efc06bf307e662b4c9b9635
Signed-off-by: uzair <uzair.jaleel@samsung.com>
114 files changed:
base/BUILD.gn
base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h
base/compiler_specific.h
base/process/memory_linux.cc
base/task/sequence_manager/sequence_manager_impl.cc
base/task/sequence_manager/thread_controller.h
base/task/sequence_manager/thread_controller_impl.cc
base/task/sequence_manager/thread_controller_impl.h
base/task/sequence_manager/thread_controller_with_message_pump_impl.cc
base/task/sequence_manager/thread_controller_with_message_pump_impl.h
build/config/BUILD.gn
build/config/ozone.gni
chrome/BUILD.gn
chrome/browser/image_editor/BUILD.gn
chrome/browser/resources/new_tab_page_instant/BUILD.gn
chrome/browser/resources/tab_search/BUILD.gn
chrome/browser/ui/webui/tab_search/BUILD.gn
chrome/test/BUILD.gn
components/crash/content/browser/BUILD.gn
components/crash/core/app/BUILD.gn
components/policy/BUILD.gn
components/policy/tools/generate_policy_source.py
components/services/font/BUILD.gn
components/signin/features.gni
components/viz/service/display_embedder/skia_output_surface_impl.cc
components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.h
content/browser/BUILD.gn
content/common/BUILD.gn
content/common/zygote/zygote_commands_linux.h
content/public/common/BUILD.gn
content/shell/BUILD.gn
content/shell/browser/shell_content_browser_client.cc
content/test/BUILD.gn
content/utility/BUILD.gn
content/web_test/browser/web_test_browser_main_runner.cc
device/bluetooth/BUILD.gn
device/bluetooth/cast_bluetooth.gni
gpu/command_buffer/service/BUILD.gn
gpu/command_buffer/service/external_semaphore.h
gpu/command_buffer/service/shared_image/ozone_image_backing.cc
gpu/command_buffer/service/shared_image/ozone_image_backing_factory.cc
gpu/command_buffer/service/shared_image/shared_image_factory.cc
gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.cc
gpu/ipc/service/gpu_memory_buffer_factory_native_pixmap.cc
gpu/ipc/service/gpu_memory_buffer_factory_native_pixmap.h
gpu/vulkan/vma_wrapper.h
gpu/vulkan/vulkan_device_queue.h
ipc/ipc_message_start.h
media/capture/BUILD.gn
media/cdm/library_cdm/cdm_paths.gni
media/gpu/sandbox/BUILD.gn
media/mojo/mojom/stable/BUILD.gn
packaging/chromium-efl.spec
pdf/BUILD.gn
sandbox/policy/mojom/BUILD.gn
services/device/compute_pressure/BUILD.gn
services/device/usb/BUILD.gn
services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc
services/viz/privileged/mojom/compositing/display_private.mojom
third_party/angle/src/tests/BUILD.gn
third_party/blink/renderer/platform/graphics/color.cc
third_party/blink/renderer/platform/wtf/math_extras.h
third_party/breakpad/BUILD.gn
third_party/crashpad/crashpad/build/crashpad_buildconfig.gni
third_party/crashpad/crashpad/compat/linux/sys/mman_memfd_create.cc
third_party/crashpad/crashpad/util/posix/scoped_mmap.cc
third_party/dawn/src/dawn/common/BUILD.gn
third_party/devtools-frontend/src/front_end/Images/BUILD.gn
third_party/devtools-frontend/src/front_end/Images/generate-css-vars.js
third_party/devtools-frontend/src/scripts/build/generate_css_js_files.js
third_party/devtools-frontend/src/scripts/build/ninja/generate_css.gni
third_party/lzma_sdk/C/CpuArch.c
third_party/node/tizen/node
third_party/wayland-protocols/BUILD.gn
third_party/wayland/BUILD.gn
third_party/wayland/features.gni
tizen_src/build/common.sh
tizen_src/build/config/tizen_features.gni
tizen_src/build/gn_chromiumefl.sh
tizen_src/chromium_impl/content/common/BUILD.gn
tools/grit/grit_args.gni
tools/perf/chrome_telemetry_build/BUILD.gn
ui/base/BUILD.gn
ui/base/ime/init/BUILD.gn
ui/gfx/animation/BUILD.gn
ui/gfx/gpu_fence.cc
ui/gfx/linux/BUILD.gn
ui/gfx/mojom/BUILD.gn
ui/gl/gl_switches.cc
ui/linux/BUILD.gn
ui/ozone/platform/cast/surface_factory_cast.cc
ui/ozone/platform/cast/surface_factory_cast.h
ui/ozone/platform/drm/gpu/gbm_surface_factory.cc
ui/ozone/platform/drm/gpu/gbm_surface_factory.h
ui/ozone/platform/flatland/flatland_surface_factory.cc
ui/ozone/platform/flatland/flatland_surface_factory.h
ui/ozone/platform/headless/headless_surface_factory.cc
ui/ozone/platform/headless/headless_surface_factory.h
ui/ozone/platform/scenic/scenic_surface_factory.cc
ui/ozone/platform/scenic/scenic_surface_factory.h
ui/ozone/platform/wayland/BUILD.gn
ui/ozone/platform/wayland/gpu/wayland_gl_egl_utility.cc
ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc
ui/ozone/platform/wayland/gpu/wayland_surface_factory.h
ui/ozone/platform/wayland/host/wayland_output.cc
ui/ozone/platform/x11/x11_surface_factory.cc
ui/ozone/platform/x11/x11_surface_factory.h
ui/ozone/public/surface_factory_ozone.cc
ui/ozone/public/surface_factory_ozone.h
ui/platform_window/BUILD.gn
ui/shell_dialogs/BUILD.gn
ui/views/BUILD.gn
v8/src/heap/cppgc/heap-base.h

index d265dd5..501b314 100644 (file)
@@ -1432,7 +1432,7 @@ mixed_component("base") {
     ]
   }
 
-  if (is_linux || is_chromeos || is_android || is_fuchsia) {
+  if (is_linux || is_chromeos || is_android || is_fuchsia || is_tizen) {
     sources += [
       "files/file_path_watcher_inotify.cc",
       "files/file_path_watcher_inotify.h",
index d4d7f1a..12440bf 100644 (file)
@@ -310,7 +310,8 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
 #endif  // defined(__clang_analyzer__)
 
 // Use nomerge attribute to disable optimization of merging multiple same calls.
-#if defined(__clang__) && PA_HAS_ATTRIBUTE(nomerge)
+// FIXME: Enable for tizen if clang supports nomerge attribute
+#if defined(__clang__) && PA_HAS_ATTRIBUTE(nomerge) && !defined(OS_TIZEN)
 #define PA_NOMERGE [[clang::nomerge]]
 #else
 #define PA_NOMERGE
index 9fba098..16e7ec4 100644 (file)
@@ -346,7 +346,7 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
 #endif  // defined(__clang_analyzer__)
 
 // Use nomerge attribute to disable optimization of merging multiple same calls.
-#if defined(__clang__) && HAS_ATTRIBUTE(nomerge)
+#if defined(__clang__) && HAS_ATTRIBUTE(nomerge) && !defined(OS_TIZEN)
 #define NOMERGE [[clang::nomerge]]
 #else
 #define NOMERGE
index 8973d7c..b392d7e 100644 (file)
@@ -108,7 +108,8 @@ bool AdjustOOMScore(ProcessId process, int score) {
 bool UncheckedMalloc(size_t size, void** result) {
 #if BUILDFLAG(USE_ALLOCATOR_SHIM)
   *result = allocator_shim::UncheckedAlloc(size);
-#elif defined(MEMORY_TOOL_REPLACES_ALLOCATOR) || !defined(LIBC_GLIBC)
+#elif defined(MEMORY_TOOL_REPLACES_ALLOCATOR) || !defined(LIBC_GLIBC) || \
+    defined(OS_TIZEN)
   *result = malloc(size);
 #elif defined(LIBC_GLIBC)
   *result = __libc_malloc(size);
@@ -119,7 +120,8 @@ bool UncheckedMalloc(size_t size, void** result) {
 void UncheckedFree(void* ptr) {
 #if BUILDFLAG(USE_ALLOCATOR_SHIM)
   allocator_shim::UncheckedFree(ptr);
-#elif defined(MEMORY_TOOL_REPLACES_ALLOCATOR) || !defined(LIBC_GLIBC)
+#elif defined(MEMORY_TOOL_REPLACES_ALLOCATOR) || !defined(LIBC_GLIBC) || \
+    defined(OS_TIZEN)
   free(ptr);
 #elif defined(LIBC_GLIBC)
   __libc_free(ptr);
index cf3c8aa..afa8f38 100644 (file)
@@ -379,7 +379,7 @@ void SequenceManagerImpl::BindToMessagePump(std::unique_ptr<MessagePump> pump) {
 #endif
 
   // On iOS/EFL attach to the native loop when there is one.
-#if BUILDFLAG(IS_IOS) || defined(USE_EFL)
+#if BUILDFLAG(IS_IOS)
   if (settings_.message_loop_type == MessagePumpType::UI) {
     controller_->AttachToMessagePump();
   }
index a26f848..aa12d8f 100644 (file)
@@ -131,7 +131,7 @@ class BASE_EXPORT ThreadController {
   // Returns true if the current run loop should quit when idle.
   virtual bool ShouldQuitRunLoopWhenIdle() = 0;
 
-#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) || defined(USE_EFL)
+#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID)
   // On iOS, the main message loop cannot be Run().  Instead call
   // AttachToMessagePump(), which connects this ThreadController to the
   // UI thread's CFRunLoop and allows PostTask() to work.
index 415b6b2..9e56b5f 100644 (file)
@@ -361,7 +361,7 @@ MessagePump* ThreadControllerImpl::GetBoundMessagePump() const {
   return nullptr;
 }
 
-#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) || defined(USE_EFL)
+#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID)
 void ThreadControllerImpl::AttachToMessagePump() {
   NOTREACHED();
 }
index 4fc321d..a6664c0 100644 (file)
@@ -61,7 +61,7 @@ class BASE_EXPORT ThreadControllerImpl : public ThreadController,
   void SetTaskExecutionAllowed(bool allowed) override;
   bool IsTaskExecutionAllowed() const override;
   MessagePump* GetBoundMessagePump() const override;
-#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) || defined(USE_EFL)
+#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID)
   void AttachToMessagePump() override;
 #endif
 #if BUILDFLAG(IS_IOS)
index 067d631..55d9675 100644 (file)
@@ -29,8 +29,6 @@
 #include "base/message_loop/message_pump_mac.h"
 #elif BUILDFLAG(IS_ANDROID)
 #include "base/message_loop/message_pump_android.h"
-#elif defined(USE_EFL)
-#include "base/message_loop/message_pump_for_ui_efl.h"
 #endif
 
 namespace base {
@@ -691,10 +689,6 @@ void ThreadControllerWithMessagePumpImpl::DetachFromMessagePump() {
 void ThreadControllerWithMessagePumpImpl::AttachToMessagePump() {
   static_cast<MessagePumpForUI*>(pump_.get())->Attach(this);
 }
-#elif defined(USE_EFL)
-void ThreadControllerWithMessagePumpImpl::AttachToMessagePump() {
-  static_cast<MessagePumpForUIEfl*>(pump_.get())->Attach(this);
-}
 #endif
 
 base::TimeDelta ThreadControllerWithMessagePumpImpl::GetAlternationInterval() {
index 8fcdb84..66208c8 100644 (file)
@@ -77,7 +77,7 @@ class BASE_EXPORT ThreadControllerWithMessagePumpImpl
   MessagePump* GetBoundMessagePump() const override;
   void PrioritizeYieldingToNative(base::TimeTicks prioritize_until) override;
   void EnablePeriodicYieldingToNative(base::TimeDelta delta) override;
-#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) || defined(USE_EFL)
+#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID)
   void AttachToMessagePump() override;
 #endif
 #if BUILDFLAG(IS_IOS)
index 31fef62..2b3d8f9 100644 (file)
@@ -221,6 +221,10 @@ config("default_libs") {
       "pthread",
       "rt",
     ]
+
+    if (is_tizen && is_clang) {
+      libs += [ "atomic" ]
+    }
   }
 }
 
index 9eee45d..1eba4ab 100644 (file)
@@ -84,7 +84,7 @@ declare_args() {
       ozone_platform = "x11"
       ozone_platform_drm = true
       ozone_platform_x11 = true
-    } else if (is_chromeos_lacros) {
+    } else if (is_chromeos_lacros || is_tizen) {
       ozone_platform = "wayland"
       ozone_platform_wayland = true
     } else if (is_linux) {
index 0292552..936dcd4 100644 (file)
@@ -118,7 +118,7 @@ group("assert_no_deps") {
   # //chrome/installer/util/BUILD.gn.
   assert_no_deps = [ "//chrome/installer/util:strings" ]
 }
-if (!is_android && !is_mac && !is_tizen) {
+if (!is_android && !is_mac) {
   group("chrome") {
     public_deps = [ ":chrome_initial" ]
     data_deps = [ ":chrome_initial" ]
index 3acbdae..ec17b56 100644 (file)
@@ -3,7 +3,7 @@
 # found in the LICENSE file.
 import("//build/config/ui.gni")
 
-assert(is_chromeos || is_linux || is_mac || is_win || is_fuchsia,
+assert(is_chromeos || is_linux || is_mac || is_win || is_fuchsia || is_tizen,
        "Image Editor is for desktop plaforms only")
 
 static_library("image_editor_component_util") {
index d62a022..32b8124 100644 (file)
@@ -7,7 +7,7 @@ import("//tools/grit/grit_rule.gni")
 import("//tools/typescript/ts_library.gni")
 import("//ui/webui/resources/tools/generate_grd.gni")
 
-assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia)
+assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia || is_tizen)
 
 grit("resources") {
   defines = chrome_grit_defines + [ "is_official_build=$is_official_build" ]
index 43326f9..e95b222 100644 (file)
@@ -7,7 +7,7 @@ import("//chrome/common/features.gni")
 import("//ui/webui/resources/tools/generate_grd.gni")
 import("//ui/webui/webui_features.gni")
 
-assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia)
+assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia || is_tizen)
 
 import("//chrome/browser/resources/tools/build_webui.gni")
 
index 48046ed..830258e 100644 (file)
@@ -4,7 +4,7 @@
 
 import("//mojo/public/tools/bindings/mojom.gni")
 
-assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia)
+assert(is_linux || is_chromeos || is_win || is_mac || is_fuchsia || is_tizen)
 
 mojom("mojo_bindings") {
   sources = [ "tab_search.mojom" ]
index 5f55570..270a09f 100644 (file)
@@ -5132,7 +5132,7 @@ if (!is_android) {
   }
 }
 
-if (is_fuchsia) {
+if (is_fuchsia || is_tizen) {
   # TODO(crbug.com/1310086): Split performance_web_engine_test_suite
   # into fuchsia-chrome and web_engine test, and put fuchsia-chrome
   # test target here.
@@ -10083,7 +10083,7 @@ test("chrome_app_unittests") {
     "//components/heap_profiling/in_process",
     "//components/safe_browsing:buildflags",
   ]
-  if (!is_fuchsia) {
+  if (!is_fuchsia || is_tizen) {
     deps += [ "//third_party/breakpad:client" ]
   }
   if (enable_gwp_asan) {
index 530d462..774f3f5 100644 (file)
@@ -57,10 +57,6 @@ source_set("browser") {
       "//third_party/crashpad/crashpad/client",
     ]
   }
-
-  if (is_tizen) {
-    deps -= [ "//third_party/breakpad:client" ]
-  }
 }
 
 source_set("unit_tests") {
index 09219dd..9d82471 100644 (file)
@@ -52,7 +52,7 @@ static_library("app") {
     "crashpad.h",
   ]
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [ "crashpad_linux.cc" ]
   }
 
index 8150840..980e4df 100644 (file)
@@ -22,7 +22,7 @@ gen_policy_templates_local = false
 # enable these flags (but don't check that in!).
 gen_policy_templates_common = true
 gen_policy_templates_win = is_win
-gen_policy_templates_linux = is_linux || is_chromeos
+gen_policy_templates_linux = is_linux || is_chromeos || is_tizen
 gen_policy_templates_android = is_android
 gen_policy_templates_mac = is_mac
 gen_policy_templates_chromeos = is_chromeos_ash
index 9004e1c..15ed692 100755 (executable)
@@ -514,8 +514,8 @@ def _GetSupportedPolicies(policies, target_platform):
         policy for policy in policies
         if (policy.is_supported or is_deprecated(policy))
     ]
-
-  return [policy for policy in policies if policy.is_supported]
+# FIMXE(Bringup:M108): for TIZEN some policies are not generated hence add back policy.is_supported
+  return [policy for policy in policies]
 
 #------------------ policy constants header ------------------------#
 
index b2ece2a..ae8ad81 100644 (file)
@@ -27,7 +27,7 @@ source_set("lib") {
 
   public_deps = [ "//skia" ]
 
-  if (enable_pdf && (is_linux || is_chromeos)) {
+  if (enable_pdf && (is_linux || is_chromeos || is_tizen)) {
     sources += [
       "pdf_fontconfig_matching.cc",
       "pdf_fontconfig_matching.h",
index 7c0cecc..c21ba6e 100644 (file)
@@ -5,7 +5,7 @@
 import("//build/config/chromeos/ui_mode.gni")
 
 # Dice is supported on the platform (but not necessarily enabled).
-enable_dice_support = is_linux || is_mac || is_win || is_fuchsia
+enable_dice_support = is_linux || is_mac || is_win || is_fuchsia || is_tizen
 
 # Mirror is enabled and other account consistency mechanisms are not available.
 enable_mirror = is_android || is_chromeos || is_ios
index d535944..e3834d7 100644 (file)
 #include "gpu/command_buffer/service/shared_image/shared_image_representation.h"
 #include "gpu/command_buffer/service/single_task_sequence.h"
 #include "gpu/command_buffer/service/skia_utils.h"
+#include "gpu/command_buffer/service/sync_point_manager.h"
 #include "gpu/ipc/service/context_url.h"
 #include "gpu/vulkan/buildflags.h"
 #include "skia/buildflags.h"
 #include "skia/ext/legacy_display_globals.h"
+#include "third_party/skia/include/core/SkPromiseImageTexture.h"
 #include "third_party/skia/include/gpu/GrYUVABackendTextures.h"
 #include "ui/base/ui_base_features.h"
 #include "ui/gfx/geometry/skia_conversions.h"
index 36d38f0..48b2de3 100644 (file)
@@ -8,18 +8,13 @@
 #include <utility>
 #include <vector>
 
-#include "base/atomic_sequence_num.h"
 #include "base/debug/crash_logging.h"
 #include "base/functional/bind.h"
 #include "base/functional/callback.h"
-#include "base/memory/raw_ptr.h"
 #include "base/memory/scoped_refptr.h"
 #include "base/notreached.h"
 #include "base/task/bind_post_task.h"
 #include "base/threading/thread_checker.h"
-#include "base/threading/thread_task_runner_handle.h"
-#include "base/trace_event/memory_dump_manager.h"
-#include "base/trace_event/trace_event.h"
 #include "build/build_config.h"
 #include "components/viz/common/features.h"
 #include "components/viz/common/frame_sinks/blit_request.h"
@@ -31,7 +26,6 @@
 #include "components/viz/common/skia_helper.h"
 #include "components/viz/common/viz_utils.h"
 #include "components/viz/service/display/output_surface_frame.h"
-#include "components/viz/service/display/overlay_candidate.h"
 #include "components/viz/service/display_embedder/image_context_impl.h"
 #include "components/viz/service/display_embedder/output_presenter_gl.h"
 #include "components/viz/service/display_embedder/skia_output_device.h"
 #include "gpu/command_buffer/common/mailbox_holder.h"
 #include "gpu/command_buffer/common/swap_buffers_complete_params.h"
 #include "gpu/command_buffer/common/sync_token.h"
-#include "gpu/command_buffer/service/external_semaphore.h"
+#include "gpu/command_buffer/service/display_compositor_memory_and_task_controller_on_gpu.h"
 #include "gpu/command_buffer/service/gr_shader_cache.h"
 #include "gpu/command_buffer/service/memory_tracking.h"
 #include "gpu/command_buffer/service/scheduler.h"
 #include "gpu/command_buffer/service/shared_image/shared_image_representation.h"
 #include "gpu/command_buffer/service/skia_utils.h"
+#include "gpu/command_buffer/service/sync_point_manager.h"
 #include "gpu/config/gpu_preferences.h"
 #include "gpu/ipc/common/gpu_client_ids.h"
 #include "gpu/ipc/common/gpu_peak_memory.h"
@@ -69,6 +64,7 @@
 #include "third_party/skia/include/core/SkDeferredDisplayList.h"
 #include "third_party/skia/include/core/SkImageInfo.h"
 #include "third_party/skia/include/core/SkPixelRef.h"
+#include "third_party/skia/include/core/SkPromiseImageTexture.h"
 #include "third_party/skia/include/core/SkSamplingOptions.h"
 #include "third_party/skia/include/core/SkSize.h"
 #include "third_party/skia/include/core/SkYUVAInfo.h"
@@ -79,6 +75,7 @@
 #include "ui/gfx/gpu_fence_handle.h"
 #include "ui/gl/gl_fence.h"
 #include "ui/gl/gl_surface.h"
+#include "url/gurl.h"
 
 #if BUILDFLAG(IS_WIN)
 #include "components/viz/service/display/dc_layer_overlay.h"
index 7880b68..3c3e7a8 100644 (file)
 #include "base/containers/circular_deque.h"
 #include "base/containers/flat_map.h"
 #include "base/containers/flat_set.h"
-#include "base/containers/span.h"
 #include "base/memory/raw_ptr.h"
+#include "base/memory/scoped_refptr.h"
 #include "base/threading/thread_checker.h"
-#include "base/types/id_type.h"
 #include "base/types/pass_key.h"
 #include "build/build_config.h"
 #include "components/viz/common/display/renderer_settings.h"
 #include "components/viz/common/gpu/context_lost_reason.h"
-#include "components/viz/common/quads/compositor_render_pass.h"
 #include "components/viz/common/resources/release_callback.h"
 #include "components/viz/service/display/external_use_client.h"
 #include "components/viz/service/display/output_surface.h"
 #include "gpu/command_buffer/common/sync_token.h"
 #include "gpu/command_buffer/service/shared_context_state.h"
 #include "gpu/command_buffer/service/shared_image/shared_image_representation.h"
-#include "gpu/command_buffer/service/sync_point_manager.h"
-#include "gpu/ipc/service/context_url.h"
 #include "gpu/ipc/service/image_transport_surface_delegate.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "third_party/abseil-cpp/absl/types/optional.h"
 #include "third_party/skia/include/core/SkDeferredDisplayList.h"
-#include "third_party/skia/include/core/SkPromiseImageTexture.h"
 #include "third_party/skia/include/core/SkSurface.h"
 #include "third_party/skia/include/gpu/GrBackendSemaphore.h"
 #include "third_party/skia/include/gpu/GrTypes.h"
@@ -58,6 +53,7 @@ class GLSurface;
 }
 
 namespace gpu {
+class DisplayCompositorMemoryAndTaskControllerOnGpu;
 class SharedImageRepresentationFactory;
 class SharedImageFactory;
 class SyncPointClientState;
@@ -75,6 +71,7 @@ class AsyncReadResultHelper;
 class AsyncReadResultLock;
 class DawnContextProvider;
 class ImageContextImpl;
+class SkiaOutputSurfaceDependency;
 class VulkanContextProvider;
 
 namespace copy_output {
index ae8f94a..814306a 100644 (file)
@@ -2836,8 +2836,9 @@ source_set("browser") {
       "//ppapi/shared_impl",
     ]
 
-    assert(enable_basic_printing)
-    deps += [ "//printing" ]
+    if (enable_basic_printing) {
+      deps += [ "//printing" ]
+    }
 
     if (is_chromeos) {
       sources += [
index 75c2301..662470d 100644 (file)
@@ -37,7 +37,7 @@ buildflag_header("buildflags") {
   ]
 }
 
-if (is_linux || is_chromeos) {
+if (is_linux || is_chromeos || is_tizen) {
   source_set("sandbox_support_linux") {
     public = [
       "zygote/zygote_commands_linux.h",
@@ -372,7 +372,7 @@ source_set("common") {
     sources -= [ "cursors/webcursor_aura.cc" ]
   }
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     deps += [
       ":sandbox_support_linux",
       ":set_process_title_linux",
@@ -443,7 +443,7 @@ component("main_frame_counter") {
   deps = [ "//base:base" ]
 }
 
-if (is_linux || is_chromeos) {
+if (is_linux || is_chromeos || is_tizen) {
   source_set("set_process_title_linux") {
     public = [ "set_process_title_linux.h" ]
     sources = [ "set_process_title_linux.cc" ]
@@ -496,7 +496,7 @@ mojom("mojo_bindings") {
   if (enable_ipc_logging) {
     enabled_features += [ "ipc_logging" ]
   }
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     enabled_features += [ "supports_thread_types" ]
   }
   if (use_clang_profiling_inside_sandbox) {
index b51d0d4..1110e97 100644 (file)
@@ -57,6 +57,14 @@ enum {
   // Reinitialize logging. Needed on ChromeOS, which switches to a log file
   // in the user's home directory once they log in.
   kZygoteCommandReinitializeLogging = 5
+#if defined(OS_TIZEN)
+  // Load injected bundle library.
+  ,
+  kZygoteCommandLoadInjectedBundle = 6,
+
+  // Drop privilege of zygote process.
+  kZygoteCommandDropProcessPrivileges = 7,
+#endif
 };
 
 }  // namespace content
index d93e5d0..ca48971 100644 (file)
@@ -57,7 +57,7 @@ source_set("content_descriptor_keys") {
 
 # This target allows other targets to depend on sandbox_support_linux.h which is
 # a header-only dependency, without bringing in all of content.
-if (is_linux || is_chromeos) {
+if (is_linux || is_chromeos || is_tizen) {
   source_set("sandbox_support_linux") {
     public = [
       "//content/common/content_export.h",
index f537cbf..02dc2c2 100644 (file)
@@ -327,7 +327,7 @@ static_library("content_shell_lib") {
     deps += [ "//gin" ]
   }
 
-  if (is_linux) {
+  if (is_linux || is_tizen) {
     deps += [ "//ui/linux:linux_ui_factory" ]
   }
 
index 996b0bf..b53c2be 100644 (file)
@@ -342,7 +342,9 @@ void ShellContentBrowserClient::AppendExtraCommandLineSwitches(
     switches::kCrashDumpsDir,
     switches::kEnableCrashReporter,
     switches::kExposeInternalsForTesting,
+#if !defined(OS_TIZEN)
     switches::kRunWebTests,
+#endif
   };
 
   command_line->CopySwitchesFrom(*base::CommandLine::ForCurrentProcess(),
index 7d9808c..45679b7 100644 (file)
@@ -777,7 +777,7 @@ static_library("test_support") {
     ]
   }
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [
       "sandbox_status_service.cc",
       "sandbox_status_service.h",
@@ -1083,7 +1083,7 @@ mojom("mojo_web_test_bindings") {
 mojom("test_interfaces") {
   testonly = true
   sources = [ "echo.test-mojom" ]
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [ "sandbox_status.test-mojom" ]
   }
 }
index 010f069..b5d3b2c 100644 (file)
@@ -95,7 +95,7 @@ source_set("utility") {
     }
   }
 
-  if (is_linux || is_chromeos_ash) {
+  if (is_linux || is_chromeos_ash || is_tizen) {
     deps += [
       "//gpu/config",
       "//media/gpu/sandbox",
index cb63fd2..7d7c26a 100644 (file)
@@ -286,8 +286,8 @@ void WebTestBrowserMainRunner::Initialize() {
   // interference. This GPU process is launched 120 seconds after chrome starts.
   command_line.AppendSwitch(switches::kDisableGpuProcessForDX12InfoCollection);
 
-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
-    BUILDFLAG(IS_CHROMEOS)
+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \
+    (BUILDFLAG(IS_LINUX) && !defined(OS_TIZEN)) || BUILDFLAG(IS_CHROMEOS)
   content::WebTestBrowserPlatformInitialize();
 #endif
 
index 6458c57..3932613 100644 (file)
@@ -175,10 +175,6 @@ component("bluetooth") {
     "//ui/base",
   ]
 
-  if (is_tizen) {
-    sources += [ "bluetooth_adapter_stub.cc" ]
-  }
-
   public_deps = [ "//device/bluetooth/public/cpp" ]
 
   if (is_android) {
@@ -311,7 +307,7 @@ component("bluetooth") {
     ]
   }
 
-  if (is_chromeos || is_linux) {
+  if (is_chromeos || is_linux || is_tizen) {
     if (use_bluez) {
       if (!force_cast_bluetooth) {
         sources += [ "bluetooth_adapter_chromeos.cc" ]
@@ -492,15 +488,6 @@ component("bluetooth") {
         use_real_dbus_clients = false
       }
 
-      if (is_tizen) {
-        sources += [
-          "dbus/dbus_bluez_manager_wrapper_linux.cc",
-          "dbus/dbus_bluez_manager_wrapper_linux.h",
-          "dbus/dbus_thread_manager_linux.cc",
-          "dbus/dbus_thread_manager_linux.h",
-        ]
-      }
-
       if (!use_real_dbus_clients) {
         # Use fake D-Bus clients instead of real ones.
         sources += [
index eb961b0..2ef392c 100644 (file)
@@ -2,5 +2,5 @@ import("//build/config/features.gni")
 
 declare_args() {
   force_cast_bluetooth = false
-  use_bluez = (is_linux && !is_castos && use_dbus) || is_chromeos
+  use_bluez = ((is_linux || is_tizen) && !is_castos && use_dbus) || is_chromeos
 }
index ab0b85d..d9ae811 100644 (file)
@@ -376,6 +376,14 @@ target(link_target_type, "gles2_sources") {
   }
 
   if (use_ozone) {
+    sources += [
+      "shared_image/gl_ozone_image_representation.cc",
+      "shared_image/gl_ozone_image_representation.h",
+      "shared_image/ozone_image_backing.cc",
+      "shared_image/ozone_image_backing.h",
+      "shared_image/ozone_image_backing_factory.cc",
+      "shared_image/ozone_image_backing_factory.h",
+    ]
     deps += [
       "//ui/base:features",
       "//ui/ozone",
@@ -417,12 +425,6 @@ target(link_target_type, "gles2_sources") {
 
     if (use_ozone) {
       sources += [
-        "shared_image/gl_ozone_image_representation.cc",
-        "shared_image/gl_ozone_image_representation.h",
-        "shared_image/ozone_image_backing.cc",
-        "shared_image/ozone_image_backing.h",
-        "shared_image/ozone_image_backing_factory.cc",
-        "shared_image/ozone_image_backing_factory.h",
         "shared_image/skia_vk_ozone_image_representation.cc",
         "shared_image/skia_vk_ozone_image_representation.h",
       ]
@@ -434,13 +436,6 @@ target(link_target_type, "gles2_sources") {
         "shared_image/external_vk_image_dawn_representation.h",
       ]
     }
-
-    if (use_ozone && use_dawn) {
-      sources += [
-        "shared_image/dawn_ozone_image_representation.cc",
-        "shared_image/dawn_ozone_image_representation.h",
-      ]
-    }
   }
 
   if (use_dawn) {
@@ -456,6 +451,13 @@ target(link_target_type, "gles2_sources") {
         "shared_image/dawn_egl_image_representation.h",
       ]
     }
+
+    if (use_ozone) {
+      sources += [
+        "shared_image/dawn_ozone_image_representation.cc",
+        "shared_image/dawn_ozone_image_representation.h",
+      ]
+    }
   }
 
   if (is_mac) {
index aa76ae2..98b75ea 100644 (file)
@@ -5,7 +5,11 @@
 #ifndef GPU_COMMAND_BUFFER_SERVICE_EXTERNAL_SEMAPHORE_H_
 #define GPU_COMMAND_BUFFER_SERVICE_EXTERNAL_SEMAPHORE_H_
 
+#if defined(OS_TIZEN)
+#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan_core.h"
+#else
 #include <vulkan/vulkan_core.h>
+#endif
 
 #include "base/memory/raw_ptr.h"
 #include "base/types/pass_key.h"
index 902081d..f158c86 100644 (file)
 #include "gpu/command_buffer/service/shared_image/shared_image_manager.h"
 #include "gpu/command_buffer/service/shared_image/shared_image_representation.h"
 #include "gpu/command_buffer/service/shared_image/skia_gl_image_representation.h"
-#include "gpu/command_buffer/service/shared_image/skia_vk_ozone_image_representation.h"
 #include "gpu/command_buffer/service/shared_memory_region_wrapper.h"
 #include "gpu/command_buffer/service/skia_utils.h"
-#include "gpu/vulkan/vulkan_image.h"
-#include "gpu/vulkan/vulkan_implementation.h"
 #include "third_party/skia/include/core/SkPromiseImageTexture.h"
 #include "third_party/skia/include/gpu/GrBackendSemaphore.h"
 #include "ui/gfx/buffer_format_util.h"
 #include "ui/gl/buildflags.h"
 #include "ui/gl/gl_image_native_pixmap.h"
 
+#if BUILDFLAG(ENABLE_VULKAN)
+#include "gpu/command_buffer/service/shared_image/skia_vk_ozone_image_representation.h"
+#include "gpu/vulkan/vulkan_image.h"
+#include "gpu/vulkan/vulkan_implementation.h"
+#endif  // BUILDFLAG(ENABLE_VULKAN)
+
 #if BUILDFLAG(USE_DAWN)
 #include "gpu/command_buffer/service/shared_image/dawn_ozone_image_representation.h"
 #endif  // BUILDFLAG(USE_DAWN)
@@ -210,6 +213,7 @@ std::unique_ptr<SkiaImageRepresentation> OzoneImageBacking::ProduceSkia(
     return skia_representation;
   }
   if (context_state->GrContextIsVulkan()) {
+#if BUILDFLAG(ENABLE_VULKAN)
     auto* device_queue = context_state->vk_context_provider()->GetDeviceQueue();
     gfx::GpuMemoryBufferHandle gmb_handle;
     gmb_handle.type = gfx::GpuMemoryBufferType::NATIVE_PIXMAP;
@@ -226,6 +230,10 @@ std::unique_ptr<SkiaImageRepresentation> OzoneImageBacking::ProduceSkia(
     return std::make_unique<SkiaVkOzoneImageRepresentation>(
         manager, this, std::move(context_state), std::move(vulkan_image),
         tracker);
+#else
+    NOTREACHED() << "Vulkan is disabled.";
+    return nullptr;
+#endif  // BUILDFLAG(ENABLE_VULKAN)
   }
   NOTIMPLEMENTED_LOG_ONCE();
   return nullptr;
index 6965743..3d34052 100644 (file)
 #include "build/build_config.h"
 #include "build/chromecast_buildflags.h"
 #include "build/chromeos_buildflags.h"
-#include "components/viz/common/gpu/vulkan_context_provider.h"
 #include "components/viz/common/resources/resource_format_utils.h"
 #include "gpu/command_buffer/common/gpu_memory_buffer_support.h"
 #include "gpu/command_buffer/common/shared_image_usage.h"
 #include "gpu/command_buffer/service/service_utils.h"
 #include "gpu/command_buffer/service/shared_image/ozone_image_backing.h"
 #include "gpu/command_buffer/service/shared_memory_region_wrapper.h"
-#include "gpu/vulkan/vulkan_device_queue.h"
 #include "ui/gfx/gpu_memory_buffer.h"
 #include "ui/gfx/native_pixmap.h"
 #include "ui/gl/buildflags.h"
 #include "ui/ozone/public/ozone_platform.h"
 #include "ui/ozone/public/surface_factory_ozone.h"
 
+#if BUILDFLAG(ENABLE_VULKAN)
+#include "components/viz/common/gpu/vulkan_context_provider.h"
+#include "gpu/vulkan/vulkan_device_queue.h"
+#endif  // BUILDFLAG(ENABLE_VULKAN)
+
 namespace gpu {
 namespace {
 
@@ -71,20 +74,21 @@ OzoneImageBackingFactory::CreateSharedImageInternal(
     SkAlphaType alpha_type,
     uint32_t usage) {
   gfx::BufferFormat buffer_format = viz::BufferFormat(format);
-  VkDevice vk_device = VK_NULL_HANDLE;
+  VulkanDeviceQueue* device_queue = nullptr;
   DCHECK(shared_context_state_);
+#if BUILDFLAG(ENABLE_VULKAN)
   if (shared_context_state_->vk_context_provider()) {
-    vk_device = shared_context_state_->vk_context_provider()
-                    ->GetDeviceQueue()
-                    ->GetVulkanDevice();
+    device_queue =
+        shared_context_state_->vk_context_provider()->GetDeviceQueue();
   }
+#endif  // BUILDFLAG(ENABLE_VULKAN)
   ui::SurfaceFactoryOzone* surface_factory =
       ui::OzonePlatform::GetInstance()->GetSurfaceFactoryOzone();
   scoped_refptr<gfx::NativePixmap> pixmap = surface_factory->CreateNativePixmap(
-      surface_handle, vk_device, size, buffer_format, GetBufferUsage(usage));
+      surface_handle, device_queue, size, buffer_format, GetBufferUsage(usage));
   // Fallback to GPU_READ if cannot create pixmap with SCANOUT
   if (!pixmap) {
-    pixmap = surface_factory->CreateNativePixmap(surface_handle, vk_device,
+    pixmap = surface_factory->CreateNativePixmap(surface_handle, device_queue,
                                                  size, buffer_format,
                                                  gfx::BufferUsage::GPU_READ);
   }
@@ -234,6 +238,7 @@ bool OzoneImageBackingFactory::IsSupported(
 }
 
 bool OzoneImageBackingFactory::CanImportNativePixmapToVulkan() {
+#if BUILDFLAG(ENABLE_VULKAN)
   if (!shared_context_state_->vk_context_provider()) {
     return false;
   }
@@ -242,6 +247,9 @@ bool OzoneImageBackingFactory::CanImportNativePixmapToVulkan() {
   return shared_context_state_->vk_context_provider()
       ->GetVulkanImplementation()
       ->CanImportGpuMemoryBuffer(vk_device, gfx::NATIVE_PIXMAP);
+#else
+  return false;
+#endif  // BUILDFLAG(ENABLE_VULKAN)
 }
 
 bool OzoneImageBackingFactory::CanImportNativePixmapToWebGPU() {
index 17fa2bd..c92a424 100644 (file)
@@ -50,9 +50,7 @@
 #include "ui/ozone/public/surface_factory_ozone.h"
 #endif
 
-#if BUILDFLAG(IS_ANDROID) && BUILDFLAG(ENABLE_VULKAN)
-#include "gpu/command_buffer/service/shared_image/ahardwarebuffer_image_backing_factory.h"
-#elif BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_MAC)
 #include "gpu/command_buffer/service/shared_image/iosurface_image_backing_factory.h"
 #endif
 
@@ -70,6 +68,7 @@
 
 #if BUILDFLAG(IS_ANDROID)
 #include "base/android/android_hardware_buffer_compat.h"
+#include "gpu/command_buffer/service/shared_image/ahardwarebuffer_image_backing_factory.h"
 #include "gpu/command_buffer/service/shared_image/egl_image_backing_factory.h"
 #endif
 
@@ -208,15 +207,16 @@ SharedImageFactory::SharedImageFactory(
         gpu_preferences, workarounds, context_state);
     factories_.push_back(std::move(factory));
   }
-#endif
 
-#if BUILDFLAG(IS_WIN) && BUILDFLAG(ENABLE_VULKAN)
+#if BUILDFLAG(IS_WIN)
   if (gr_context_type_ == GrContextType::kVulkan) {
     auto external_vk_image_factory =
         std::make_unique<ExternalVkImageBackingFactory>(context_state);
     factories_.push_back(std::move(external_vk_image_factory));
   }
-#elif BUILDFLAG(IS_ANDROID)
+#endif  // BUILDFLAG(IS_WIN)
+#endif  // BUILDFLAG(ENABLE_VULKAN)
+#if BUILDFLAG(IS_ANDROID)
   if (use_gl) {
     auto egl_backing_factory = std::make_unique<EGLImageBackingFactory>(
         gpu_preferences, workarounds, feature_info.get());
@@ -239,14 +239,12 @@ SharedImageFactory::SharedImageFactory(
         feature_info.get());
     factories_.push_back(std::move(ahb_factory));
   }
-#if BUILDFLAG(ENABLE_VULKAN)
   if (gr_context_type_ == GrContextType::kVulkan &&
       !base::FeatureList::IsEnabled(features::kVulkanFromANGLE)) {
     auto external_vk_image_factory =
         std::make_unique<ExternalVkImageBackingFactory>(context_state);
     factories_.push_back(std::move(external_vk_image_factory));
   }
-#endif  // BUILDFLAG(ENABLE_VULKAN)
 #elif defined(USE_OZONE)
   // For all Ozone platforms - Desktop Linux, ChromeOS, Fuchsia, CastOS.
   if (ui::OzonePlatform::GetInstance()
index 5a18264..7ac5023 100644 (file)
@@ -71,8 +71,8 @@ base::OnceClosure GpuMemoryBufferImplNativePixmap::AllocateForTesting(
   scoped_refptr<gfx::NativePixmap> pixmap;
   pixmap = ui::OzonePlatform::GetInstance()
                ->GetSurfaceFactoryOzone()
-               ->CreateNativePixmap(gfx::kNullAcceleratedWidget, VK_NULL_HANDLE,
-                                    size, format, usage);
+               ->CreateNativePixmap(gfx::kNullAcceleratedWidget, nullptr, size,
+                                    format, usage);
   if (!pixmap) {
     // TODO(j.isorce): use gbm_bo_create / gbm_bo_get_fd from system libgbm.
     NOTIMPLEMENTED();
index 19a89d7..2dff68b 100644 (file)
@@ -7,7 +7,6 @@
 #include "build/build_config.h"
 #include "components/viz/common/gpu/vulkan_context_provider.h"
 #include "gpu/command_buffer/common/gpu_memory_buffer_support.h"
-#include "gpu/vulkan/vulkan_device_queue.h"
 #include "ui/gfx/buffer_format_util.h"
 #include "ui/gfx/buffer_usage_util.h"
 #include "ui/gfx/client_native_pixmap.h"
 #include "ui/gl/gl_image_glx_native_pixmap.h"            // nogncheck
 #endif
 
+#if BUILDFLAG(ENABLE_VULKAN)
+#include "gpu/vulkan/vulkan_device_queue.h"
+#endif
+
 namespace gpu {
 
 namespace {
@@ -72,8 +75,8 @@ GpuMemoryBufferFactoryNativePixmap::CreateGpuMemoryBuffer(
   scoped_refptr<gfx::NativePixmap> pixmap =
       ui::OzonePlatform::GetInstance()
           ->GetSurfaceFactoryOzone()
-          ->CreateNativePixmap(surface_handle, GetVulkanDevice(), size, format,
-                               usage, framebuffer_size);
+          ->CreateNativePixmap(surface_handle, GetVulkanDeviceQueue(), size,
+                               format, usage, framebuffer_size);
   return CreateGpuMemoryBufferFromNativePixmap(id, size, format, usage,
                                                client_id, std::move(pixmap));
 }
@@ -89,7 +92,7 @@ void GpuMemoryBufferFactoryNativePixmap::CreateGpuMemoryBufferAsync(
   ui::OzonePlatform::GetInstance()
       ->GetSurfaceFactoryOzone()
       ->CreateNativePixmapAsync(
-          surface_handle, GetVulkanDevice(), size, format, usage,
+          surface_handle, GetVulkanDeviceQueue(), size, format, usage,
           base::BindOnce(
               &GpuMemoryBufferFactoryNativePixmap::OnNativePixmapCreated, id,
               size, format, usage, client_id, std::move(callback),
@@ -196,8 +199,8 @@ GpuMemoryBufferFactoryNativePixmap::CreateAnonymousImage(
   scoped_refptr<gfx::NativePixmap> pixmap;
   pixmap = ui::OzonePlatform::GetInstance()
                ->GetSurfaceFactoryOzone()
-               ->CreateNativePixmap(surface_handle, GetVulkanDevice(), size,
-                                    format, usage);
+               ->CreateNativePixmap(surface_handle, GetVulkanDeviceQueue(),
+                                    size, format, usage);
   if (!pixmap.get()) {
     LOG(ERROR) << "Failed to create pixmap " << size.ToString() << ", "
                << gfx::BufferFormatToString(format) << ", usage "
@@ -219,10 +222,13 @@ unsigned GpuMemoryBufferFactoryNativePixmap::RequiredTextureType() {
   return GL_TEXTURE_2D;
 }
 
-VkDevice GpuMemoryBufferFactoryNativePixmap::GetVulkanDevice() {
-  return vulkan_context_provider_
-             ? vulkan_context_provider_->GetDeviceQueue()->GetVulkanDevice()
-             : VK_NULL_HANDLE;
+VulkanDeviceQueue* GpuMemoryBufferFactoryNativePixmap::GetVulkanDeviceQueue() {
+#if BUILDFLAG(ENABLE_VULKAN)
+  if (vulkan_context_provider_)
+    return vulkan_context_provider_->GetDeviceQueue();
+#endif
+
+  return nullptr;
 }
 
 // static
index 4734efe..4adde6f 100644 (file)
@@ -5,7 +5,11 @@
 #ifndef GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_NATIVE_PIXMAP_H_
 #define GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_NATIVE_PIXMAP_H_
 
+#if defined(OS_TIZEN)
+#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan_core.h"
+#else
 #include <vulkan/vulkan_core.h>
+#endif
 
 #include <unordered_map>
 #include <utility>
@@ -23,6 +27,8 @@ class GLImage;
 
 namespace gpu {
 
+class VulkanDeviceQueue;
+
 class GPU_IPC_SERVICE_EXPORT GpuMemoryBufferFactoryNativePixmap
     : public GpuMemoryBufferFactory,
       public ImageFactory {
@@ -104,7 +110,7 @@ class GPU_IPC_SERVICE_EXPORT GpuMemoryBufferFactoryNativePixmap
       int client_id,
       scoped_refptr<gfx::NativePixmap> pixmap);
 
-  VkDevice GetVulkanDevice();
+  VulkanDeviceQueue* GetVulkanDeviceQueue();
 
   scoped_refptr<viz::VulkanContextProvider> vulkan_context_provider_;
 
index 8e025a7..fed1472 100644 (file)
@@ -5,7 +5,11 @@
 #ifndef GPU_VULKAN_VMA_WRAPPER_H_
 #define GPU_VULKAN_VMA_WRAPPER_H_
 
+#if defined(OS_TIZEN)
+#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan_core.h"
+#else
 #include <vulkan/vulkan_core.h>
+#endif
 
 #include "base/component_export.h"
 
index 8e5864c..e39970c 100644 (file)
@@ -5,7 +5,11 @@
 #ifndef GPU_VULKAN_VULKAN_DEVICE_QUEUE_H_
 #define GPU_VULKAN_VULKAN_DEVICE_QUEUE_H_
 
+#if defined(OS_TIZEN)
+#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan_core.h"
+#else
 #include <vulkan/vulkan_core.h>
+#endif
 
 #include <memory>
 
index 325d4c8..3c12c7a 100644 (file)
@@ -21,6 +21,9 @@ enum IPCMessageStart {
   NaClHostMsgStart,
   EncryptedMediaMsgStart,
   GinJavaBridgeMsgStart,
+#if defined(OS_TIZEN)
+  TtsMsgStart,
+#endif
   ExtensionWorkerMsgStart,
   LastIPCMsgStart  // Must come last.
 };
index 27afc02..6a0df28 100644 (file)
@@ -256,7 +256,7 @@ component("capture_lib") {
     ]
   }
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [
       "video/linux/scoped_v4l2_device_fd.cc",
       "video/linux/scoped_v4l2_device_fd.h",
index 1dd1066..5336da0 100644 (file)
@@ -15,7 +15,7 @@ assert(enable_library_cdms)
 # Explicitly define what we use to avoid confusion.
 if (is_chromeos) {
   component_os = "cros"
-} else if (is_linux) {
+} else if (is_linux || is_tizen) {
   component_os = "linux"
 } else if (is_win) {
   component_os = "win"
index 437a0f3..2b868dc 100644 (file)
@@ -5,7 +5,7 @@
 import("//build/config/chromeos/ui_mode.gni")
 import("//media/gpu/args.gni")
 
-assert(is_linux || is_chromeos_ash)
+assert(is_linux || is_chromeos_ash || is_tizen)
 
 source_set("sandbox") {
   sources = [
index dd961a6..205688b 100644 (file)
@@ -167,7 +167,7 @@ mojom("native_pixmap_handle") {
 
   sources = [ "native_pixmap_handle.mojom" ]
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     cpp_typemaps = [
       {
         types = [
index 9df53bb..6514ddd 100644 (file)
@@ -1,7 +1,7 @@
 Name: chromium-efl
 Summary: Chromium EFL
 # Set by by scripts/update-chromium-version.sh
-%define ChromiumVersion 94.0.4606.31
+%define ChromiumVersion 108.0.5359.1
 %define Week 1
 Version: %{ChromiumVersion}.%{Week}
 Release: 1
@@ -48,7 +48,7 @@ Requires(post): xkeyboard-config
 Requires(postun): /sbin/ldconfig
 
 BuildRequires: binutils-gold
-BuildRequires: bison, edje-tools, expat-devel, flex, gettext, gperf, libcap-devel
+BuildRequires: bison, edje-tools, expat-devel, flex, gettext, gperf, libcap-devel, libcurl, libatomic
 BuildRequires: libjpeg-turbo-devel, ninja, perl, python3, python3-xml, which
 BuildRequires: pkgconfig(capi-appfw-application)
 BuildRequires: pkgconfig(capi-appfw-app-manager)
@@ -82,6 +82,7 @@ BuildRequires: pkgconfig(harfbuzz)
 BuildRequires: pkgconfig(icu-i18n)
 BuildRequires: pkgconfig(libdrm)
 BuildRequires: pkgconfig(libevent)
+BuildRequires: pkgconfig(libcurl)
 BuildRequires: pkgconfig(libexif)
 BuildRequires: pkgconfig(libffi)
 BuildRequires: pkgconfig(libpng)
@@ -317,7 +318,7 @@ ninja %{_smp_mflags} -C "%{OUTPUT_FOLDER}" \
 %if 0%{?build_ewk_unittests}
   ewk_unittests \
 %endif
-  efl_webprocess chromium-ewk efl_webview_app mini_browser ubrowser
+  efl_webprocess chromium-ewk efl_webview_app mini_browser ubrowser content_shell
 
 %if 0%{?_enable_unittests}
 ninja %{_smp_mflags} -C"%{OUTPUT_FOLDER}" angle_unittests env_chromium_unittests cacheinvalidation_unittests \
@@ -399,10 +400,10 @@ install -m 0644 "%{OUTPUT_FOLDER}"/pkgconfig/*.pc    "%{buildroot}"%{_libdir}/pk
 install -m 0644 tizen_src/ewk/efl_integration/public/*.h                  "%{buildroot}"%{_includedir}/chromium-ewk/
 install -m 0644 v8/include/*.h "%{buildroot}"%{_includedir}/v8/
 
-%if 0%{?_enable_content_shell}
 install -m 0755 "%{OUTPUT_FOLDER}"/content_shell "%{buildroot}%{CHROMIUM_EXE_DIR}"/content_shell
 sed 's#@binary@#%{CHROMIUM_EXE_DIR}/content_shell#' %{SOURCE1} > "%{buildroot}"%{_bindir}/content_shell
-%endif
+
+install -m 0755 "%{OUTPUT_FOLDER}"/libminigbm.so   "%{buildroot}"%{_libdir}
 
 %if 0%{?_enable_unittests}
 install -d "%{INSTALL_ROOT}%{CHROMIUM_UNITTESTS_DIR}"
@@ -434,6 +435,7 @@ install -m 0755 tizen_src/ewk/utc_gtest_run.sh %{buildroot}/opt/usr/utc_exec/
 %{_xmldir}/%{_pkgid}.xml
 %defattr(-,root,root,-)
 %{_libdir}/libchromium-ewk.so
+%{_libdir}/libminigbm.so
 %if "%{?tizen_profile_name}" == "tv"
 %caps(cap_mac_admin,cap_mac_override,cap_setgid=ei) %{CHROMIUM_EXE_DIR}/efl_webprocess
 %else
@@ -445,6 +447,8 @@ install -m 0755 tizen_src/ewk/utc_gtest_run.sh %{buildroot}/opt/usr/utc_exec/
 %{CHROMIUM_EXE_DIR}/locales/*.pak
 %{CHROMIUM_DATA_DIR}/themes/*.edj
 %{CHROMIUM_LOCALE_DIR}
+%{CHROMIUM_EXE_DIR}/content_shell
+%{_bindir}/content_shell
 
 %files devel
 %defattr(-,root,root,-)
index 1441f00..0dafe7a 100644 (file)
@@ -6,6 +6,7 @@ import("//build/buildflag_header.gni")
 import("//build/config/features.gni")
 import("//pdf/features.gni")
 import("//ppapi/buildflags/buildflags.gni")
+import("//printing/buildflags/buildflags.gni")
 import("//testing/libfuzzer/fuzzer_test.gni")
 import("//testing/test.gni")
 import("//third_party/pdfium/pdfium.gni")
@@ -150,7 +151,6 @@ if (enable_pdf) {
       "//components/strings",
       "//gin",
       "//pdf/loader",
-      "//printing",
       "//third_party/blink/public:blink_headers",
       "//third_party/blink/public/common:headers",
       "//third_party/icu",
@@ -163,6 +163,10 @@ if (enable_pdf) {
       "//ui/gfx/range",
     ]
 
+    if (enable_basic_printing) {
+      deps += [ "//printing" ]
+    }
+
     if (is_linux || is_chromeos) {
       sources += [
         "pdfium/pdfium_font_linux.cc",
@@ -257,7 +261,6 @@ if (enable_pdf) {
       "//gin",
       "//net",
       "//pdf/loader",
-      "//printing",
       "//services/network/public/mojom:url_loader_base",
       "//skia",
       "//third_party/blink/public:blink_headers",
@@ -268,6 +271,10 @@ if (enable_pdf) {
       "//ui/gfx/range",
       "//v8",
     ]
+
+    if (enable_basic_printing) {
+      deps += [ "//printing" ]
+    }
   }
 
   source_set("pdf_test_utils") {
@@ -367,7 +374,6 @@ if (enable_pdf) {
       "//net",
       "//pdf/loader",
       "//pdf/loader:unit_tests",
-      "//printing",
       "//skia",
       "//testing/gmock",
       "//testing/gtest",
@@ -384,6 +390,10 @@ if (enable_pdf) {
       "//v8",
     ]
 
+    if (enable_basic_printing) {
+      deps += [ "//printing" ]
+    }
+
     if (v8_use_external_startup_data) {
       deps += [ "//tools/v8_context_snapshot" ]
       configs += [
index fd96289..aae7ffc 100644 (file)
@@ -22,10 +22,10 @@ mojom("mojom") {
   if (enable_ppapi) {
     enabled_features += [ "enable_ppapi" ]
   }
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     enabled_features += [ "has_zygote" ]
   }
-  if (is_linux || is_chromeos_ash) {
+  if (is_linux || is_chromeos_ash || is_tizen) {
     enabled_features += [ "is_linux_or_chromeos_ash" ]
   }
   if (enable_cros_libassistant) {
index 0736b79..15e373f 100644 (file)
@@ -33,7 +33,7 @@ source_set("compute_pressure") {
     "//mojo/public/cpp/bindings",
   ]
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [
       "core_times.cc",
       "core_times.h",
index 6d56edb..b62cb3c 100644 (file)
@@ -135,7 +135,7 @@ static_library("usb") {
     deps += [ "//third_party/libusb" ]
   }
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [
       "usb_device_linux.cc",
       "usb_device_linux.h",
@@ -143,7 +143,7 @@ static_library("usb") {
   }
 
   if (use_udev) {
-    if (is_linux || is_chromeos) {
+    if (is_linux || is_chromeos || is_tizen) {
       sources += [
         "usb_service_linux.cc",
         "usb_service_linux.h",
index 75b472b..6f19320 100644 (file)
@@ -82,7 +82,9 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePublicOSDump(
   os_dump->is_peak_rss_resettable = internal_os_dump.is_peak_rss_resettable;
   os_dump->private_footprint_kb =
       CalculatePrivateFootprintKb(internal_os_dump, shared_resident_kb);
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \
+     BUILDFLAG(IS_ANDROID)) &&                        \
+    !defined(OS_TIZEN)
   os_dump->private_footprint_swap_kb =
       internal_os_dump.platform_private_footprint->vm_swap_bytes / 1024;
 #endif
index c837cc1..44e7dde 100644 (file)
@@ -111,7 +111,6 @@ interface DisplayClient {
   DidCompleteSwapWithSize(gfx.mojom.Size size);
 
   // Notifies that a swap has occurred with a new size.
-  [EnableIf=is_linux]
   DidCompleteSwapWithNewSize(gfx.mojom.Size size);
 
   // Notifies the client of the result of context creation attempt. On Android we can't
index b9456cd..20a8b68 100644 (file)
@@ -10,8 +10,8 @@ import("angle_unittests.gni")
 declare_args() {
   build_angle_gles1_conform_tests = false
   build_angle_trace_perf_tests = false
-  build_angle_perftests =
-      is_win || is_linux || is_chromeos || is_android || is_apple || is_fuchsia
+  build_angle_perftests = is_win || is_linux || is_chromeos || is_android ||
+                          is_apple || is_fuchsia || is_tizen
 }
 
 if (is_android) {
@@ -224,7 +224,8 @@ if (is_ios) {
   }
 }
 
-if (is_win || is_linux || is_chromeos || is_android || is_fuchsia || is_apple) {
+if (is_win || is_linux || is_chromeos || is_android || is_fuchsia || is_apple ||
+    is_tizen) {
   import("angle_end2end_tests.gni")
 
   angle_test("angle_end2end_tests") {
@@ -1699,7 +1700,7 @@ group("angle_tests") {
     ":angle_unittests",
     "capture_replay_tests",
   ]
-  if (!is_fuchsia) {
+  if (!is_fuchsia && !is_tizen) {
     deps += [
       ":angle_white_box_perftests",
       ":angle_white_box_tests",
index 177c9a7..d224412 100644 (file)
@@ -173,10 +173,11 @@ constexpr void HSLToRGB(double hue,
 }
 
 // Hue is in the range of 0 to 6.0, the remainder are in the range 0 to 1.0
-constexpr RGBA32 MakeRGBAFromHSLA(double hue,
-                                  double saturation,
-                                  double lightness,
-                                  double alpha) {
+// FIXME: round function doesnt evaluate to constexpr
+RGBA32 MakeRGBAFromHSLA(double hue,
+                        double saturation,
+                        double lightness,
+                        double alpha) {
   const double scale_factor = 255.0;
   double r = 0, g = 0, b = 0;
   HSLToRGB(hue, saturation, lightness, r, g, b);
index 4a10c97..b4331fa 100644 (file)
@@ -128,13 +128,26 @@ constexpr float Grad2turn(float g) {
   return g * (1.0f / 400.0f);
 }
 
+// FIXME: std::floor doesnt evalulate to constexpr hence added user defined
+// implementation
 constexpr double RoundHalfTowardsPositiveInfinity(double value) {
+#if defined EWK_BRINGUP && !defined(OS_TIZEN)
   return std::floor(value + 0.5);
+#else
+  double new_value = value + 0.5;
+  if (new_value < 0)
+    return (int)new_value - 1;
+  else
+    return (int)new_value;
+#endif
 }
 
+// FIXME: Not used anywhere in code hence disabled only for tizen profile
+#if defined EWK_BRINGUP && !defined(OS_TIZEN)
 constexpr float RoundHalfTowardsPositiveInfinity(float value) {
   return std::floor(value + 0.5f);
 }
+#endif
 
 // ClampTo() is implemented by templated helper classes (to allow for partial
 // template specialization) as well as several helper functions.
index b650705..52c159f 100644 (file)
@@ -477,7 +477,7 @@ if (is_mac) {
   }
 }
 
-if (is_linux || is_chromeos || is_android) {
+if (is_linux || is_chromeos || is_android || is_tizen) {
   if (current_toolchain == host_toolchain) {
     executable("symupload") {
       sources = [
index 6269637..f1a30e8 100644 (file)
@@ -37,7 +37,8 @@ crashpad_is_standalone = crashpad_dependencies == "standalone"
 # This is the parent directory that contains the mini_chromium source dir.
 # This variable is not used when crashpad_is_in_chromium.
 if (crashpad_is_in_fuchsia) {
-  mini_chromium_source_parent = "//third_party/crashpad/third_party/mini_chromium"
+  mini_chromium_source_parent =
+      "//third_party/crashpad/third_party/mini_chromium"
 } else {
   mini_chromium_source_parent = "../third_party/mini_chromium"
 }
@@ -58,7 +59,7 @@ if (crashpad_is_in_chromium) {
   crashpad_is_mac = is_mac
   crashpad_is_ios = is_ios
   crashpad_is_win = is_win
-  crashpad_is_linux = is_linux || is_chromeos
+  crashpad_is_linux = is_linux || is_chromeos || is_tizen
   crashpad_is_android = is_android
   crashpad_is_fuchsia = is_fuchsia
 
index 0b559ec..9fd44f3 100644 (file)
 
 #include "util/misc/no_cfi_icall.h"
 
+#if defined(OS_TIZEN)
+#include "base/logging.h"
+#endif
+
 #if defined(__GLIBC__)
 
 extern "C" {
@@ -27,8 +31,18 @@ extern "C" {
 int memfd_create(const char* name, unsigned int flags) __THROW {
   static const crashpad::NoCfiIcall<decltype(memfd_create)*> next_memfd_create(
       dlsym(RTLD_NEXT, "memfd_create"));
+#if !defined(OS_TIZEN)
   return next_memfd_create ? next_memfd_create(name, flags)
                            : syscall(SYS_memfd_create, name, flags);
+#else
+  // FIXME: m94 (SYS_memfd_create not found for tizen platform)
+  if (next_memfd_create)
+    return next_memfd_create(name, flags);
+  else {
+    LOG(ERROR) << " Undefined SYS_memfd_create for Tizen  ";
+    return 0;
+  }
+#endif
 }
 
 }  // extern "C"
index b9b4248..c584813 100644 (file)
@@ -36,7 +36,7 @@ namespace {
 
 // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is
 // complete.
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) && !defined(OS_TIZEN)
 void* CallMmap(void* addr,
                size_t len,
                int prot,
index f46d108..0dff9f0 100644 (file)
@@ -214,7 +214,8 @@ dawn_generator("dawn_gpu_info_gen") {
 # This GN file is discovered by all Chromium builds, but common doesn't support
 # all of Chromium's OSes so we explicitly make the target visible only on
 # systems we know Dawn is able to compile on.
-if (is_win || is_linux || is_chromeos || is_mac || is_fuchsia || is_android) {
+if (is_win || is_linux || is_chromeos || is_mac || is_fuchsia || is_android ||
+    is_tizen) {
   static_library("common") {
     sources = [
       "Alloc.h",
index 149ba19..b206423 100644 (file)
@@ -2,7 +2,6 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("//build/timestamp.gni")
 import("../../config/gni/devtools_image_files.gni")
 import("../../scripts/build/ninja/devtools_pre_built.gni")
 import("../../scripts/build/ninja/node.gni")
@@ -16,7 +15,6 @@ node_action("generate_css_vars") {
   script = "front_end/Images/generate-css-vars.js"
 
   args = [
-           build_timestamp,
            rebase_path(target_gen_dir, root_build_dir),
            "optimize_images",
          ] + devtools_image_files + devtools_src_svg_files
index 6d168e7..ba06d3d 100644 (file)
@@ -3,7 +3,7 @@
 // found in the LICENSE file.
 const path = require('path');
 const {writeIfChanged} = require('../../scripts/build/ninja/write-if-changed.js');
-const [, , buildTimestamp, targetGenDir, targetName, ...imageSources] = process.argv;
+const [, , targetGenDir, targetName, ...imageSources] = process.argv;
 
 /**
  * @param {string} fileName
@@ -18,7 +18,7 @@ function generateCSSVariableDefinition(fileName) {
       fileName}', import.meta.url).toString() + '\\")');`;
 }
 
-const CURRENT_YEAR = new Date(Number(buildTimestamp) * 1000).getUTCFullYear();
+const CURRENT_YEAR = new Date().getFullYear();
 const newContents = `
 // Copyright ${CURRENT_YEAR} The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
index 52ccca3..50df6e6 100644 (file)
@@ -5,7 +5,7 @@ const fs = require('fs');
 const path = require('path');
 const CleanCSS = require('clean-css');
 const {writeIfChanged} = require('./ninja/write-if-changed.js');
-const [, , buildTimestamp, isDebugString, legacyString, targetName, srcDir, targetGenDir, files] = process.argv;
+const [, , isDebugString, legacyString, targetName, srcDir, targetGenDir, files] = process.argv;
 
 const filenames = files.split(',');
 const configFiles = [];
@@ -37,7 +37,7 @@ export default styles;`;
   const generatedFileName = `${fileName}${isLegacy ? '.legacy' : ''}.js`;
   const generatedFileLocation = path.join(targetGenDir, generatedFileName);
   const newContents = `// Copyright ${
-      new Date(Number(buildTimestamp) * 1000).getUTCFullYear()} The Chromium Authors. All rights reserved.
+      new Date().getFullYear()} 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.
 // IMPORTANT: this file is auto generated. Please do not edit this file.
index ef0e4ef..8deeddc 100644 (file)
@@ -2,7 +2,6 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("//build/timestamp.gni")
 import("./node.gni")
 import("./vars.gni")
 
@@ -19,7 +18,6 @@ template("generate_css") {
         [ devtools_location_prepend + "node_modules/clean-css/package.json" ]
 
     args = [
-      build_timestamp,
       "$is_debug",
       "${invoker.legacy}",
       target_name,
index 30451fb..ddaff4f 100644 (file)
@@ -417,7 +417,7 @@ BoolInt CPU_IsSupported_AES (void) { return APPLE_CRYPTO_SUPPORT_VAL; }
 
 #include <sys/auxv.h>
 
-#if !defined(ARMV8_OS_FUCHSIA)
+#if !defined(ARMV8_OS_FUCHSIA) && !defined(EWK_BRINGUP)
 #define USE_HWCAP
 #endif // !defined(ARMV8_OS_FUCHSIA)
 
index 6a8fb3e..6dd9b8f 100755 (executable)
Binary files a/third_party/node/tizen/node and b/third_party/node/tizen/node differ
index d513d6b..99df34e 100644 (file)
@@ -9,7 +9,7 @@ import("//third_party/wayland/wayland_protocol.gni")
 # is special: that is the wayland-protocols package which defines a set of
 # standardised protocols.  When using the system libwayland for the client, we
 # should use the manifest files provided in the sysroot.
-if (use_system_libwayland && use_sysroot) {
+if (use_system_libwayland && use_sysroot && !is_tizen) {
   standard_protocol_prefix = "${sysroot}/usr/share/wayland-protocols"
 } else {
   standard_protocol_prefix = "src"
index d60491d..ce2fe6b 100644 (file)
@@ -10,7 +10,7 @@ import("//tools/generate_stubs/rules.gni")
 # This should be open to both system and non - system libwayland as
 # wayland_stubs also uses this.
 wayland_protocol("wayland_protocol_c") {
-  if (use_system_libwayland && use_sysroot) {
+  if (use_system_libwayland && use_sysroot && !is_tizen) {
     sources = [ "${sysroot}/usr/share/wayland/wayland.xml" ]
   } else {
     sources = [ "src/protocol/wayland.xml" ]
index 88246f3..967407d 100644 (file)
@@ -23,7 +23,7 @@ declare_args() {
   # Path to the wayland-scanner in the sysroot.
   assert(host_os == "linux")
   if (use_system_wayland_scanner) {
-    if (use_sysroot) {
+    if (use_sysroot && !is_tizen) {
       system_wayland_scanner_path = "$sysroot/usr/bin/wayland-scanner"
     } else {
       system_wayland_scanner_path = "/usr/bin/wayland-scanner"
index 6dc9bc6..267c264 100755 (executable)
@@ -3,7 +3,7 @@
 export SCRIPTDIR=$(readlink -e $(dirname $0))
 export TOPDIR=$(readlink -f "${SCRIPTDIR}/../..")
 export CHROME_SRC="${TOPDIR}"
-export LATEST_TIZEN_VERSION=6.5
+export LATEST_TIZEN_VERSION=7.0
 export DEFAULT_TIZEN_VERSION=$LATEST_TIZEN_VERSION
 
 if [ "$(echo "$@" | grep -e "--tizen")" != "" ]; then
index cb07e28..87cdf51 100644 (file)
@@ -34,6 +34,7 @@ declare_args() {
   edje_dir = "/usr/share/chromium-efl/themes/"
   tizen_data_dir = "/usr/share/chromium-efl/"
   locale_dir = "/usr/share/chromium-efl/locale/"
+  chromium_impl_lib_name = "libchromium-ewk.so"
 
   tizen_version = 0
   tizen_version_major = 0
index 4d25b31..f041525 100755 (executable)
@@ -113,7 +113,7 @@ COMMON_GN_PARAMETERS="use_libjpeg_turbo=true
                       use_pango=false
                       use_cairo=false
                       enable_plugins=true
-                      enable_extensions=false
+                      enable_extensions=true
                       use_cups=false
                       use_allocator=\"none\"
                       depth=\"${TOPDIR}\"
@@ -137,7 +137,6 @@ add_desktop_flags() {
                              use_wayland=false
                              werror=false
                              dcheck_always_on=false
-                             enable_extensions=true
                              enable_nacl=false
                             "
 }
@@ -177,6 +176,8 @@ add_tizen_flags() {
                              host_cpu=\"${host_arch}\"
                              target_cpu=\"${host_arch}\"
                              use_real_dbus_clients=false
+                             use_nss_certs=true
+                             use_system_libwayland=true
                             "
 
   # FIXME : Note that the v8_snapshot_toolchain has been set to wrong
index 42e0b06..d1ffc54 100644 (file)
@@ -6,8 +6,8 @@ import("//tizen_src/build/config/tizen_features.gni")
 
 config("content_common_efl") {
   visibility = [
-    "//tizen_src/chromium_impl/content/common/common_efl.gni",
     "//content/*",
+    "//tizen_src/chromium_impl/content/common/common_efl.gni",
   ]
 
   defines = [
@@ -27,4 +27,5 @@ config("content_common_efl") {
       "LOCALE_DIR=\"$outdir/locale\"",
     ]
   }
+  defines += [ "CHROMIUM_IMPL_LIB_FILE=\"$chromium_impl_lib_name\"" ]
 }
index a60843b..3432dfa 100644 (file)
@@ -15,7 +15,7 @@ devtools_grd_path_no_ext = get_path_info(devtools_grd_path, "dir") + "/" +
 # Prefer using this (and excluding specific platforms) when a resource applies
 # to (most) desktop platforms.
 assert(toolkit_views ==
-       (is_chromeos || is_fuchsia || is_linux || is_mac || is_win))
+       (is_chromeos || is_fuchsia || is_linux || is_mac || is_win || is_tizen))
 
 # Variables that are passed to grit with the -D flag.
 
index 0c69677..2e77468 100644 (file)
@@ -37,7 +37,7 @@ group("telemetry_chrome_test") {
   ]
   data = []
 
-  if (!is_fuchsia && !is_android && !is_castos) {
+  if (!is_fuchsia && !is_android && !is_castos && !is_tizen) {
     data_deps += [ "//chrome" ]
   }
 
@@ -186,7 +186,7 @@ group("telemetry_chrome_test_without_chrome") {
   ]
 
   # Cr-Fuchsia doesn't support breakpad.
-  if (!is_win && !is_fuchsia) {
+  if (!is_win && !is_fuchsia && !is_tizen) {
     data_deps += [
       # This is defined for Windows, but is unused by Telemetry on
       # Windows, and including it can have issues when cross-compiling
index 5066a62..8ca381a 100644 (file)
@@ -399,7 +399,7 @@ component("base") {
       ]
     }
 
-    if (is_linux || is_chromeos) {
+    if (is_linux || is_chromeos || is_tizen) {
       sources += [
         "accelerators/menu_label_accelerator_util_linux.cc",
         "accelerators/menu_label_accelerator_util_linux.h",
@@ -583,7 +583,8 @@ component("base") {
     ]
   }
 
-  if (is_chromeos_ash || (use_aura && (is_linux || is_chromeos_lacros)) ||
+  if (is_chromeos_ash ||
+      (use_aura && (is_linux || is_chromeos_lacros || is_tizen)) ||
       is_fuchsia) {
     sources += [
       "dragdrop/os_exchange_data_provider_non_backed.cc",
index 1ff7733..a5ebd80 100644 (file)
@@ -37,7 +37,7 @@ component("init") {
   if (is_chromeos_ash) {
     deps += [ "//ui/base/ime/ash" ]
   }
-  if (is_linux || is_chromeos_lacros) {
+  if (is_linux || is_chromeos_lacros || is_tizen) {
     deps += [ "//ui/base/ime/linux" ]
   }
   if (use_ozone) {
index 9dabaac..135c7c8 100644 (file)
@@ -45,7 +45,7 @@ component("animation") {
     sources += [ "animation_win.cc" ]
   }
 
-  if (is_linux) {
+  if (is_linux || is_tizen) {
     sources += [ "animation_linux.cc" ]
   }
 
index 77ca117..b02e28a 100644 (file)
@@ -9,7 +9,9 @@
 #include "base/time/time.h"
 #include "build/build_config.h"
 
-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
+#if defined(OS_TIZEN)
+#include "third_party/libsync/src/include/sync/sync.h"
+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)
 #include <sync/sync.h>
 #endif
 
index e44f821..e7bd49e 100644 (file)
@@ -13,12 +13,6 @@ source_set("drm") {
     "drm_util_linux.h",
   ]
 
-  if (is_tizen && use_aura) {
-    set_sources_assignment_filter([])
-    sources += [ "drm_util_linux.cc" ]
-    set_sources_assignment_filter(sources_assignment_filter)
-  }
-
   deps = [
     "//base:base",
     "//build/config/linux/libdrm",
index bb22c70..3c8d0eb 100644 (file)
@@ -361,7 +361,7 @@ mojom("native_handle_types") {
   if (is_linux || is_chromeos || use_ozone) {
     enabled_features = [ "supports_native_pixmap" ]
   }
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     enabled_features += [ "is_linux_or_chromeos_ash" ]
   }
   public_deps = [ "//mojo/public/mojom/base" ]
index e138cca..3656cb3 100644 (file)
 #include "base/android/build_info.h"
 #endif
 
-#if BUILDFLAG(IS_LINUX)
+#if defined(OS_TIZEN)
+#include "third_party/angle/src/gpu_info_util/SystemInfo.h"
+#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan_core.h"
+#elif BUILDFLAG(IS_LINUX)
 #include <vulkan/vulkan_core.h>
 #include "third_party/angle/src/gpu_info_util/SystemInfo.h"  // nogncheck
 #endif
index 5f1f22d..e66594d 100644 (file)
@@ -5,7 +5,7 @@
 import("//build/config/linux/gtk/gtk.gni")
 import("//ui/qt/qt.gni")
 
-assert(is_linux)
+assert(is_linux || is_tizen)
 
 component("linux_ui") {
   defines = [ "IS_LINUX_UI_IMPL" ]
index 9906047..03fc4f0 100644 (file)
@@ -129,7 +129,7 @@ std::unique_ptr<SurfaceOzoneCanvas> SurfaceFactoryCast::CreateCanvasForWidget(
 
 scoped_refptr<gfx::NativePixmap> SurfaceFactoryCast::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
index 6937fbc..9614f64 100644 (file)
@@ -38,7 +38,7 @@ class SurfaceFactoryCast : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
index abfcfae..afbb74e 100644 (file)
@@ -385,7 +385,7 @@ std::unique_ptr<SurfaceOzoneCanvas> GbmSurfaceFactory::CreateCanvasForWidget(
 
 scoped_refptr<gfx::NativePixmap> GbmSurfaceFactory::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
@@ -405,12 +405,13 @@ scoped_refptr<gfx::NativePixmap> GbmSurfaceFactory::CreateNativePixmap(
                                          std::move(framebuffer));
 }
 
-void GbmSurfaceFactory::CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                                                VkDevice vk_device,
-                                                gfx::Size size,
-                                                gfx::BufferFormat format,
-                                                gfx::BufferUsage usage,
-                                                NativePixmapCallback callback) {
+void GbmSurfaceFactory::CreateNativePixmapAsync(
+    gfx::AcceleratedWidget widget,
+    gpu::VulkanDeviceQueue* device_queue,
+    gfx::Size size,
+    gfx::BufferFormat format,
+    gfx::BufferUsage usage,
+    NativePixmapCallback callback) {
   drm_thread_proxy_->CreateBufferAsync(
       widget, size, format, usage, 0 /* flags */,
       base::BindOnce(OnNativePixmapCreated, std::move(callback),
index a163a06..f70bafb 100644 (file)
@@ -60,13 +60,13 @@ class GbmSurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
       absl::optional<gfx::Size> framebuffer_size = absl::nullopt) override;
   void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                               VkDevice vk_device,
+                               gpu::VulkanDeviceQueue* device_queue,
                                gfx::Size size,
                                gfx::BufferFormat format,
                                gfx::BufferUsage usage,
index 0f1384a..82e10f2 100644 (file)
@@ -13,6 +13,7 @@
 #include "base/fuchsia/fuchsia_logging.h"
 #include "base/fuchsia/process_context.h"
 #include "base/memory/ptr_util.h"
+#include "gpu/vulkan/vulkan_device_queue.h"
 #include "third_party/angle/src/common/fuchsia_egl/fuchsia_egl.h"
 #include "ui/gfx/geometry/skia_conversions.h"
 #include "ui/gfx/native_pixmap.h"
index 76accbd..2727107 100644 (file)
@@ -49,13 +49,13 @@ class FlatlandSurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
       absl::optional<gfx::Size> framebuffer_size = absl::nullopt) override;
   void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                               VkDevice vk_device,
+                               gpu::VulkanDeviceQueue* device_queue,
                                gfx::Size size,
                                gfx::BufferFormat format,
                                gfx::BufferUsage usage,
index 0c7d7b3..791c26c 100644 (file)
@@ -257,7 +257,7 @@ HeadlessSurfaceFactory::CreateCanvasForWidget(gfx::AcceleratedWidget widget) {
 
 scoped_refptr<gfx::NativePixmap> HeadlessSurfaceFactory::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
index 5ef52f0..f50c27a 100644 (file)
@@ -35,7 +35,7 @@ class HeadlessSurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
index 8ec8abe..40326dd 100644 (file)
@@ -13,6 +13,7 @@
 #include "base/fuchsia/fuchsia_logging.h"
 #include "base/fuchsia/process_context.h"
 #include "base/memory/ptr_util.h"
+#include "gpu/vulkan/vulkan_device_queue.h"
 #include "third_party/angle/src/common/fuchsia_egl/fuchsia_egl.h"
 #include "ui/gfx/geometry/skia_conversions.h"
 #include "ui/gfx/native_pixmap.h"
@@ -170,13 +171,14 @@ std::unique_ptr<SurfaceOzoneCanvas> ScenicSurfaceFactory::CreateCanvasForWidget(
 
 scoped_refptr<gfx::NativePixmap> ScenicSurfaceFactory::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
     absl::optional<gfx::Size> framebuffer_size) {
   DCHECK(!framebuffer_size || framebuffer_size == size);
 
+  VkDevice vk_device = device_queue->GetVulkanDevice();
   if (widget != gfx::kNullAcceleratedWidget &&
       usage == gfx::BufferUsage::SCANOUT) {
     // The usage SCANOUT is for a primary plane buffer.
@@ -195,13 +197,13 @@ scoped_refptr<gfx::NativePixmap> ScenicSurfaceFactory::CreateNativePixmap(
 
 void ScenicSurfaceFactory::CreateNativePixmapAsync(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
     NativePixmapCallback callback) {
   std::move(callback).Run(
-      CreateNativePixmap(widget, vk_device, size, format, usage));
+      CreateNativePixmap(widget, device_queue, size, format, usage));
 }
 
 scoped_refptr<gfx::NativePixmap>
index a7f0135..9f0fb75 100644 (file)
@@ -53,13 +53,13 @@ class ScenicSurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
       absl::optional<gfx::Size> framebuffer_size = absl::nullopt) override;
   void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                               VkDevice vk_device,
+                               gpu::VulkanDeviceQueue* device_queue,
                                gfx::Size size,
                                gfx::BufferFormat format,
                                gfx::BufferUsage usage,
index e0f0d7d..8f12e39 100644 (file)
@@ -12,7 +12,7 @@ import("//testing/libfuzzer/fuzzer_test.gni")
 import("//third_party/wayland/features.gni")
 import("//ui/ozone/platform/wayland/wayland.gni")
 
-assert(is_linux || is_chromeos_lacros)
+assert(is_linux || is_chromeos_lacros || is_tizen)
 
 source_set("common") {
   sources = [
index 71cdc75..c71eb46 100644 (file)
 #define EGL_PLATFORM_VULKAN_DISPLAY_MODE_HEADLESS_ANGLE 0x34A5
 #endif /* EGL_ANGLE_platform_angle_vulkan */
 
+#if defined(OS_TIZEN)
+#include <bits/stdc++.h>
+#endif
+
 namespace ui {
 
 WaylandGLEGLUtility::WaylandGLEGLUtility() = default;
index b3be7d5..50d6fcb 100644 (file)
@@ -217,7 +217,7 @@ WaylandSurfaceFactory::CreateVulkanImplementation(bool use_swiftshader,
 
 scoped_refptr<gfx::NativePixmap> WaylandSurfaceFactory::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
@@ -240,7 +240,7 @@ scoped_refptr<gfx::NativePixmap> WaylandSurfaceFactory::CreateNativePixmap(
 
 void WaylandSurfaceFactory::CreateNativePixmapAsync(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
@@ -248,7 +248,7 @@ void WaylandSurfaceFactory::CreateNativePixmapAsync(
   // CreateNativePixmap is non-blocking operation. Thus, it is safe to call it
   // and return the result with the provided callback.
   std::move(callback).Run(
-      CreateNativePixmap(widget, vk_device, size, format, usage));
+      CreateNativePixmap(widget, device_queue, size, format, usage));
 }
 
 scoped_refptr<gfx::NativePixmap>
index 259d9cb..c1b1137 100644 (file)
@@ -42,13 +42,13 @@ class WaylandSurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
       absl::optional<gfx::Size> framebuffer_size = absl::nullopt) override;
   void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                               VkDevice vk_device,
+                               gpu::VulkanDeviceQueue* device_queue,
                                gfx::Size size,
                                gfx::BufferFormat format,
                                gfx::BufferUsage usage,
index 4719f2d..40ba262 100644 (file)
@@ -219,6 +219,10 @@ void WaylandOutput::OutputHandleDone(void* data, struct wl_output* wl_output) {
 void WaylandOutput::OutputHandleScale(void* data,
                                       struct wl_output* wl_output,
                                       int32_t factor) {
+#if defined(OS_TIZEN_TV_PRODUCT)
+  if (!factor)
+    return;
+#endif
   WaylandOutput* wayland_output = static_cast<WaylandOutput*>(data);
   if (wayland_output)
     wayland_output->scale_factor_ = factor;
index 69c03b1..d38941d 100644 (file)
@@ -174,7 +174,7 @@ std::unique_ptr<SurfaceOzoneCanvas> X11SurfaceFactory::CreateCanvasForWidget(
 
 scoped_refptr<gfx::NativePixmap> X11SurfaceFactory::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
@@ -199,16 +199,17 @@ bool X11SurfaceFactory::CanCreateNativePixmapForFormat(
       ->CanCreateNativePixmapForFormat(format);
 }
 
-void X11SurfaceFactory::CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                                                VkDevice vk_device,
-                                                gfx::Size size,
-                                                gfx::BufferFormat format,
-                                                gfx::BufferUsage usage,
-                                                NativePixmapCallback callback) {
+void X11SurfaceFactory::CreateNativePixmapAsync(
+    gfx::AcceleratedWidget widget,
+    gpu::VulkanDeviceQueue* device_queue,
+    gfx::Size size,
+    gfx::BufferFormat format,
+    gfx::BufferUsage usage,
+    NativePixmapCallback callback) {
   // CreateNativePixmap is non-blocking operation. Thus, it is safe to call it
   // and return the result with the provided callback.
   std::move(callback).Run(
-      CreateNativePixmap(widget, vk_device, size, format, usage));
+      CreateNativePixmap(widget, device_queue, size, format, usage));
 }
 
 scoped_refptr<gfx::NativePixmap>
index 0482962..49ac851 100644 (file)
@@ -38,14 +38,14 @@ class X11SurfaceFactory : public SurfaceFactoryOzone {
       gfx::AcceleratedWidget widget) override;
   scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
       absl::optional<gfx::Size> framebuffer_size = absl::nullopt) override;
   bool CanCreateNativePixmapForFormat(gfx::BufferFormat format) override;
   void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                               VkDevice vk_device,
+                               gpu::VulkanDeviceQueue* device_queue,
                                gfx::Size size,
                                gfx::BufferFormat format,
                                gfx::BufferUsage usage,
index 5e468fe..7f5435f 100644 (file)
@@ -78,7 +78,7 @@ std::unique_ptr<SurfaceOzoneCanvas> SurfaceFactoryOzone::CreateCanvasForWidget(
 
 scoped_refptr<gfx::NativePixmap> SurfaceFactoryOzone::CreateNativePixmap(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
@@ -95,7 +95,7 @@ bool SurfaceFactoryOzone::CanCreateNativePixmapForFormat(
 
 void SurfaceFactoryOzone::CreateNativePixmapAsync(
     gfx::AcceleratedWidget widget,
-    VkDevice vk_device,
+    gpu::VulkanDeviceQueue* device_queue,
     gfx::Size size,
     gfx::BufferFormat format,
     gfx::BufferUsage usage,
index f88fca9..81b3db2 100644 (file)
@@ -9,12 +9,6 @@
 #include <memory>
 #include <vector>
 
-#if defined(OS_TIZEN)
-#include "third_party/vulkan-deps/vulkan-headers/src/include/vulkan/vulkan.h"
-#else
-#include <vulkan/vulkan.h>
-#endif
-
 #include "base/callback.h"
 #include "base/component_export.h"
 #include "base/memory/ref_counted.h"
@@ -37,6 +31,10 @@ namespace gfx {
 class NativePixmap;
 }
 
+namespace gpu {
+class VulkanDeviceQueue;
+}
+
 namespace ui {
 
 class SurfaceOzoneCanvas;
@@ -146,7 +144,7 @@ class COMPONENT_EXPORT(OZONE_BASE) SurfaceFactoryOzone {
   // This method can be called on any thread.
   virtual scoped_refptr<gfx::NativePixmap> CreateNativePixmap(
       gfx::AcceleratedWidget widget,
-      VkDevice vk_device,
+      gpu::VulkanDeviceQueue* device_queue,
       gfx::Size size,
       gfx::BufferFormat format,
       gfx::BufferUsage usage,
@@ -158,7 +156,7 @@ class COMPONENT_EXPORT(OZONE_BASE) SurfaceFactoryOzone {
   using NativePixmapCallback =
       base::OnceCallback<void(scoped_refptr<gfx::NativePixmap>)>;
   virtual void CreateNativePixmapAsync(gfx::AcceleratedWidget widget,
-                                       VkDevice vk_device,
+                                       gpu::VulkanDeviceQueue* device_queue,
                                        gfx::Size size,
                                        gfx::BufferFormat format,
                                        gfx::BufferUsage usage,
index 39f4cb9..2e3c61a 100644 (file)
@@ -43,7 +43,7 @@ component("platform_window") {
     ]
   }
 
-  if (is_linux || is_chromeos) {
+  if (is_linux || is_chromeos || is_tizen) {
     sources += [
       "extensions/desk_extension.cc",
       "extensions/desk_extension.h",
@@ -55,7 +55,7 @@ component("platform_window") {
       "extensions/wayland_extension.h",
     ]
   }
-  if (is_linux || is_chromeos_ash) {
+  if (is_linux || is_chromeos_ash || is_tizen) {
     sources += [
       "extensions/x11_extension.cc",
       "extensions/x11_extension.h",
index c746f23..0608750 100644 (file)
@@ -45,7 +45,7 @@ component("shell_dialogs") {
     sources += [ "shell_dialog_stub.cc" ]
   }
 
-  if (is_linux && !is_castos) {
+  if ((is_linux || is_tizen) && !is_castos) {
     sources += [
       "select_file_dialog_linux.cc",
       "select_file_dialog_linux.h",
index dbe3d5a..cd15e8d 100644 (file)
@@ -577,7 +577,7 @@ component("views") {
     deps += [ "//chromeos/constants" ]
   }
 
-  if (is_linux) {
+  if (is_linux || is_tizen) {
     public_deps += [ "//ui/linux:linux_ui" ]
   }
 
@@ -586,7 +586,7 @@ component("views") {
     sources += [ "color_chooser/color_chooser_view.cc" ]
   }
 
-  if (is_linux || is_chromeos_lacros) {
+  if (is_linux || is_chromeos_lacros || is_tizen) {
     deps += [ "//ui/base/ime/linux" ]
     if (!is_chromeos_lacros) {
       sources += [ "controls/menu/menu_config_linux.cc" ]
@@ -828,7 +828,7 @@ component("views") {
         public += [ "widget/desktop_aura/desktop_screen_ozone.h" ]
         sources += [ "widget/desktop_aura/desktop_screen_ozone.cc" ]
       }
-      if (is_linux) {
+      if (is_linux || is_tizen) {
         public += [ "widget/desktop_aura/desktop_window_tree_host_linux.h" ]
         sources += [
           "widget/desktop_aura/desktop_screen_ozone_linux.cc",
@@ -851,7 +851,7 @@ component("views") {
           "//ui/base:hit_test",
         ]
       }
-      if (is_linux || is_chromeos_lacros || is_fuchsia) {
+      if (is_linux || is_chromeos_lacros || is_fuchsia || is_tizen) {
         public += [
           "widget/desktop_aura/desktop_window_tree_host_platform.h",
           "widget/desktop_aura/window_move_client_platform.h",
@@ -864,7 +864,7 @@ component("views") {
         ]
         public_deps += [ "//ui/base/dragdrop/mojom:mojom_shared" ]
       }
-      if (is_linux) {
+      if (is_linux || is_tizen) {
         sources += [
           "widget/desktop_aura/desktop_drag_drop_client_ozone_linux.cc",
           "widget/desktop_aura/desktop_drag_drop_client_ozone_linux.h",
index bf28b6d..92683a1 100644 (file)
@@ -310,7 +310,7 @@ class V8_EXPORT_PRIVATE HeapBase : public cppgc::HeapHandle {
   friend class cppgc::testing::OverrideEmbedderStackStateScope;
 };
 
-class V8_NODISCARD V8_EXPORT_PRIVATE ClassNameAsHeapObjectNameScope final {
+class V8_EXPORT_PRIVATE ClassNameAsHeapObjectNameScope final {
  public:
   explicit ClassNameAsHeapObjectNameScope(HeapBase& heap);
   ~ClassNameAsHeapObjectNameScope();