This commit resolves linker errors for tizen standard profile.
Reference:
https://review.tizen.org/gerrit/#/c/173569/
https://review.tizen.org/gerrit/#/c/173097/
https://review.tizen.org/gerrit/#/c/173290/
Change-Id: I689576804a4413c5ff6b402674ed2ad867a5e167
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
sources += external_base_sources
}
+ if (is_tizen) {
+ libs = [ "event" ]
+ }
+
# winternl.h and NTSecAPI.h have different definitions of UNICODE_STRING.
# There's only one client of NTSecAPI.h in base but several of winternl.h,
# so exclude the NTSecAPI.h one.
"posix/unix_domain_socket.cc",
]
- if (is_linux) {
+ if (is_linux || is_tizen) {
sources += [ "base_paths_posix.cc" ]
}
}
sources += [ "power_monitor/power_monitor_device_source_stub.cc" ]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "files/file_path_watcher_linux.cc",
+ "files/file_util_linux.cc",
+ "process/internal_linux.cc",
+ "process/internal_linux.h",
+ "process/memory_linux.cc",
+ "process/process_handle_linux.cc",
+ "process/process_info_linux.cc",
+ "process/process_iterator_linux.cc",
+ "process/process_linux.cc",
+ "process/process_metrics_linux.cc",
+ "sys_info_linux.cc",
+ "threading/platform_thread_linux.cc",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (!use_glib) {
sources -= [
"message_loop/message_pump_glib.cc",
}
}
- if (is_tizen) {
- set_sources_assignment_filter([])
- sources += [
- "files/file_path_watcher_linux.cc",
- "files/file_util_linux.cc",
- "posix/unix_domain_socket_linux.cc",
- "posix/unix_domain_socket_linux.h",
- "process/internal_linux.cc",
- "process/internal_linux.h",
- "process/memory_linux.cc",
- "process/process_handle_linux.cc",
- "process/process_iterator_linux.cc",
- "process/process_linux.cc",
- "process/process_metrics_linux.cc",
- "sys_info_linux.cc",
- "threading/platform_thread_linux.cc",
- "trace_event/malloc_dump_provider.cc",
- "trace_event/malloc_dump_provider.h",
- ]
- set_sources_assignment_filter(sources_assignment_filter)
- }
-
if (!use_glib) {
sources -= [ "message_loop/message_pump_glib_unittest.cc" ]
}
# is_nacl conditions.
import("//build/config/nacl/config.gni")
}
+if (is_tizen) {
+ import("//tizen_src/build/config/tizen_features.gni")
+}
declare_args() {
# Default to warnings as errors for default workflow, where we catch
ldflags += [ "-fuse-ld=bfd" ]
}
+ if (is_tizen) {
+ ldflags += [ "-fuse-ld=gold" ]
+ }
+
if (use_icf) {
ldflags += [ "-Wl,--icf=all" ]
}
visibility = [ ":default_optimization" ]
}
+config("optimize_tizen") {
+ if (is_tizen) {
+ # Let compiler use lto from platform configuration.
+ common_optimize_on_cflags += [ "-O$lto_level" ]
+ if (lto_level == "s") {
+ common_optimize_on_ldflags += [ "-Wl,-O1" ]
+ } else {
+ common_optimize_on_ldflags += [ "-Wl,-O$lto_level" ]
+ }
+ cflags = common_optimize_on_cflags
+ ldflags = common_optimize_on_ldflags
+ }
+}
+
# The default optimization applied to all targets. This will be equivalent to
# either "optimize" or "no_optimize", depending on the build flags.
config("default_optimization") {
"optimize_for_fuzzing=true should not be used with " +
"use_clang_coverage=true.")
configs = [ ":optimize_fuzzing" ]
+ } else if (is_tizen) {
+ configs = [ ":optimize_tizen" ]
} else {
configs = [ ":optimize" ]
}
"//url",
]
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [ "quarantine_linux.cc" ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_mac) {
libs = [
"Carbon.framework",
# Desktop/Window/WebContents screen capture implementations, conditionally
# built depending on the available implementations for each platform.
- if (is_linux || is_mac || is_win) {
+ if (is_linux || is_mac || is_win || is_tizen) {
defines += [ "ENABLE_SCREEN_CAPTURE=1" ]
sources += [
"media/capture/cursor_renderer.cc",
"//content/zygote/zygote_linux.cc",
"//content/zygote/zygote_linux.h",
"//content/zygote/zygote_main_linux.cc",
+ "child_process_launcher_helper_linux.cc",
+ "memory/memory_monitor_linux.cc",
+ "memory/memory_monitor_linux.h",
+ "memory/swap_metrics_driver_impl_linux.cc",
+ "memory/swap_metrics_driver_impl_linux.h",
"renderer_host/font_utils_linux.cc",
"renderer_host/font_utils_linux.h",
"renderer_host/pepper/pepper_truetype_font_linux.cc",
+ "sandbox_host_linux.cc",
+ "sandbox_host_linux.h",
+ "sandbox_ipc_linux.cc",
+ "sandbox_ipc_linux.h",
"zygote_host/zygote_communication_linux.cc",
"zygote_host/zygote_communication_linux.h",
"zygote_host/zygote_handle_linux.cc",
"//v8",
]
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "child_process_sandbox_support_impl_linux.cc",
+ "child_process_sandbox_support_impl_linux.h",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (!use_default_render_theme) {
sources -= [
"webthemeengine_impl_default.cc",
"//content/public/common:interfaces",
]
- if ((is_android || is_tizen) && use_seccomp_bpf) {
+ if (is_android && use_seccomp_bpf) {
set_sources_assignment_filter([])
sources += [
"//services/service_manager/sandbox/linux/bpf_base_policy_linux.cc",
set_sources_assignment_filter(sources_assignment_filter)
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "common_sandbox_support_linux.cc",
+ "font_config_ipc_linux.cc",
+ "send_zygote_child_ping_linux.cc",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_mac) {
deps += [ "//sandbox/mac:seatbelt" ]
}
"//ui/latency/ipc",
]
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [ "gpu_sandbox_hook_linux.cc" ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_android) {
deps += [ "//media" ]
}
return PP_ERROR_NOTSUPPORTED;
}
-#if defined(OS_ANDROID)
+#if defined(OS_ANDROID) || defined(OS_TIZEN)
return PP_ERROR_NOTSUPPORTED;
#else
if (!TryFallbackToSoftwareDecoder())
}
bool PepperVideoDecoderHost::TryFallbackToSoftwareDecoder() {
-#if defined(OS_ANDROID)
+#if defined(OS_ANDROID) || defined(OS_TIZEN)
return false;
#else
DCHECK(!software_fallback_used_ && software_fallback_allowed_);
: ResourceHost(host->GetPpapiHost(), instance, resource),
renderer_ppapi_host_(host),
buffer_manager_(this),
+#if !defined(OS_TIZEN)
encoder_(new VideoEncoderShim(this)),
+#endif
initialized_(false),
encoder_last_error_(PP_ERROR_FAILED),
frame_count_(0),
media_input_format_(media::PIXEL_FORMAT_UNKNOWN),
- weak_ptr_factory_(this) {}
+ weak_ptr_factory_(this) {
+}
PepperVideoEncoderHost::~PepperVideoEncoderHost() {
Close();
deps += [ "//device/udev_linux" ]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "device_monitor_linux.cc",
+ "device_monitor_linux.h",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_win) {
libs = [ "setupapi.lib" ]
}
}
}
+ if (is_tizen && use_udev) {
+ set_sources_assignment_filter([])
+ sources += [
+ "dualshock4_controller_linux.cc",
+ "gamepad_device_linux.cc",
+ "gamepad_platform_data_fetcher_linux.cc",
+ "gamepad_platform_data_fetcher_linux.h",
+ "gamepad_standard_mappings_linux.cc",
+ "switch_pro_controller_linux.cc",
+ "udev_gamepad_linux.cc",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_android) {
deps += [ ":jni_headers" ]
}
"gpu_util.h",
]
+ if (use_efl) {
+ sources += external_gpu_efl_sources
+ sources -= external_exclude_gpu_efl_sources
+ }
+
if (is_fuchsia) {
sources += [ "gpu_info_collector_fuchsia.cc" ]
}
"gpu_memory_buffer_impl_dxgi.h",
]
}
- if (is_linux) {
+ if (is_linux || is_tizen) {
sources += [
"gpu_memory_buffer_impl_native_pixmap.cc",
"gpu_memory_buffer_impl_native_pixmap.h",
}
if (is_tizen) {
set_sources_assignment_filter([])
- sources += [ "image_transport_surface_linux.cc" ]
+ sources += [
+ "gpu_memory_buffer_factory_native_pixmap.cc",
+ "gpu_memory_buffer_factory_native_pixmap.h",
+ "image_transport_surface_linux.cc",
+ ]
set_sources_assignment_filter(sources_assignment_filter)
}
]
}
- # Use getifaddrs() on POSIX platforms, except Linux and Android.
- if (is_posix && !is_linux && !is_android) {
+ # Use getifaddrs() on POSIX platforms, except Linux, Android and Tizen.
+ if (is_posix && !is_linux && !is_android && !is_tizen) {
sources += [
"base/network_interfaces_getifaddrs.cc",
"base/network_interfaces_getifaddrs.h",
"base/network_interfaces_linux.cc",
"base/network_interfaces_linux.h",
"base/platform_mime_util_linux.cc",
+ "proxy_resolution/proxy_config_service_linux.cc",
]
}
Source0: %{name}-%{version}.tar.gz
Source1: content_shell.in
-# [M50_2661] Temporary enabling the nodebug option by default.
-# The size of libchromium-ewk.so exceeds 2GB with debug information.
-# Because of this size, the QEMU cannot generate the rpm package.
-# FIXME: http://suprem.sec.samsung.net/jira/browse/TWF-891
-%define nodebug 1
-
-%if 0%{?nodebug}
+%if 0%{?_nodebug}
%global __debug_install_post %{nil}
%global debug_package %{nil}
%endif
export CXXFLAGS="$(echo $CXXFLAGS | sed 's/-Wl,--as-needed//g')"
%endif
-%if 0%{?nodebug}
- CFLAGS=$(echo $CFLAGS | sed 's/-g[0-9]*/ /g')
- CXXFLAGS=$(echo $CXXFLAGS | sed 's/-g[0-9]*/ /g')
+%if 0%{?_nodebug}
+ CFLAGS="$(echo $CFLAGS | sed -E 's/-g[0-9] /-g0 /g')"
+ CXXFLAGS="$(echo $CXXFLAGS | sed -E 's/-g[0-9] /-g0 /g')"
%endif
%if "%{!?chromium_efl_tizen_profile:0}%{?chromium_efl_tizen_profile}" == "mobile"
%install
-# On Tizen 3.0, eu-strip (part of elfutils) does not play well with gold.
-# [ XXs] extracting debug info from <path>/<package>/efl_webview_app
-# [ XXs] eu-strip: while writing '<path>/<package>/efl_webview_app': cannot write data to file
-#
-# Problem is reported in various places, including:
-# - https://bugzilla.redhat.com/show_bug.cgi?id=1174267
-# - http://lists.gnu.org/archive/html/qemu-devel/2014-12/msg02702.html - QEMU
-# - http://bit.ly/1E8W1Uo - Public Tizen/Crosswalk
-#
-# The solution applied to Tizen public requires to patch QEMU:
-# - https://review.tizen.org/gerrit/#/c/32365/1/linux-user/syscall.c
-# Until our Tizen 3.x QEMU is fixed, we use a home made x64 bit statically
-# linked eu-strip, so that we can link with gold.
-%if "%{?chromium_efl_tizen_version}%{!?chromium_efl_tizen_version:0}" == "3.0"
-export PATH=$(pwd)/build/prebuild/tizen_3.0/:${PATH}
-%endif
-
# Generate pkg-confg file
mkdir -p "%{OUTPUT_FOLDER}"/pkgconfig/
sed -e 's#?VERSION?#%{version}#' tizen_src/build/pkgconfig/chromium-efl.pc.in \
install -d "%{buildroot}"%{_includedir}/chromium-ewk
install -d "%{buildroot}"%{_includedir}/v8
install -d "%{buildroot}%{CHROMIUM_EXE_DIR}"
-install -d "%{buildroot}%{CHROMIUM_EXE_DIR}/locales"
install -d "%{buildroot}%{CHROMIUM_DATA_DIR}"/themes
cp -r "%{OUTPUT_FOLDER}/locale" "%{buildroot}/%{CHROMIUM_LOCALE_DIR}"
-install -m 0755 "%{OUTPUT_FOLDER}"/locales/*.pak "%{buildroot}%{CHROMIUM_EXE_DIR}"/locales
-
-install -m 0755 "%{OUTPUT_FOLDER}"/lib/libchromium-ewk.so "%{buildroot}"%{_libdir}
+install -m 0755 "%{OUTPUT_FOLDER}"/libchromium-ewk.so "%{buildroot}"%{_libdir}
install -m 0755 "%{OUTPUT_FOLDER}"/efl_webprocess "%{buildroot}%{CHROMIUM_EXE_DIR}"
install -m 0755 "%{OUTPUT_FOLDER}"/icudtl.dat "%{buildroot}%{CHROMIUM_EXE_DIR}"
%{CHROMIUM_EXE_DIR}/natives_blob.bin
%{CHROMIUM_EXE_DIR}/snapshot_blob.bin
%{CHROMIUM_EXE_DIR}/content_shell.pak
-%{CHROMIUM_EXE_DIR}/locales/*.pak
%{CHROMIUM_DATA_DIR}/themes/*.edj
%{CHROMIUM_LOCALE_DIR}
# currently.
# Do not disable seccomp_bpf anywhere without talking to
# security@chromium.org!
-use_seccomp_bpf =
- (is_linux || is_android) &&
- (current_cpu == "x86" || current_cpu == "x64" || current_cpu == "arm" ||
- current_cpu == "arm64" || current_cpu == "mipsel" ||
- current_cpu == "mips64el")
+use_seccomp_bpf = (is_linux || is_android || is_tizen) &&
+ (current_cpu == "x86" || current_cpu == "x64" ||
+ current_cpu == "arm" || current_cpu == "arm64" ||
+ current_cpu == "mipsel" || current_cpu == "mips64el")
use_seccomp_bpf = use_seccomp_bpf || is_nacl_nonsfi
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+import("//build/config/compiler/compiler.gni")
import("//build/config/features.gni")
import("//build/config/nacl/config.gni")
import("//sandbox/features.gni")
}
declare_args() {
- compile_suid_client = is_linux
+ compile_suid_client = is_linux || is_tizen
- compile_credentials = is_linux
+ compile_credentials = is_linux || is_tizen
# On Android, use plain GTest.
use_base_test_suite = is_linux
}
}
-if (is_linux) {
+if (is_linux || is_tizen) {
# The setuid sandbox for Linux.
executable("chrome_sandbox") {
sources = [
import("//build/config/android/rules.gni")
}
-is_serial_enabled_platform = is_win || (is_linux && use_udev) || is_mac
+is_serial_enabled_platform =
+ is_win || ((is_linux || is_tizen) && use_udev) || is_mac
source_set("lib") {
# This should be visible only to embedders of the Device Service, and the
]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "linux/sensor_data_linux.cc",
+ "linux/sensor_data_linux.h",
+ "linux/sensor_device_manager.cc",
+ "linux/sensor_device_manager.h",
+ "platform_sensor_linux.cc",
+ "platform_sensor_linux.h",
+ "platform_sensor_provider_linux.cc",
+ "platform_sensor_provider_linux.h",
+ "platform_sensor_reader_linux.cc",
+ "platform_sensor_reader_linux.h",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_win) {
libs = [
"portabledeviceguids.lib",
deps += [ "//device/udev_linux" ]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "hid_connection_linux.cc",
+ "hid_service_linux.cc",
+ "input_service_linux.cc",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_chromeos) {
deps += [ "//chromeos" ]
}
import("//build/config/features.gni")
-if (is_win || (is_linux && use_udev) || is_mac) {
+if (is_win || ((is_linux || is_tizen) && use_udev) || is_mac) {
source_set("serial") {
visibility = [
"//services/device:lib",
if (is_fuchsia) {
sources += [ "time_zone_monitor_fuchsia.cc" ]
}
+
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [ "time_zone_monitor_linux.cc" ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
}
if (is_android) {
]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [ "network_sandbox_hook_linux.cc" ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
deps = [
"//base",
"//components/certificate_transparency",
"resource_coordinator_interface.h",
]
- if (is_android) {
+ if (is_android || is_tizen) {
set_sources_assignment_filter([])
sources += [ "memory_instrumentation/os_metrics_linux.cc" ]
set_sources_assignment_filter(sources_assignment_filter)
]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [ "set_process_title_linux.cc" ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_mac) {
sources += [
"mac_init.h",
"//services/service_manager/public/mojom",
]
- if (is_linux && !is_android) {
+ if ((is_linux || is_tizen) && !is_android) {
deps += [
"//sandbox/linux:sandbox",
"//sandbox/linux:sandbox_services",
":sanitizer_buildflags",
"//base",
]
- if (is_linux) {
+ if (is_linux || is_tizen) {
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ }
sources += [
"linux/bpf_base_policy_linux.cc",
"linux/bpf_base_policy_linux.h",
}
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "ext/fontmgr_default_linux.cc",
+ "ext/fontmgr_default_linux.h",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
# The imported Skia gni source paths are made absolute by gn.
defines = skia_core_defines
sources += skia_utils_sources
set_sources_assignment_filter(sources_assignment_filter)
}
- if (is_linux) {
+ if (is_linux || is_tizen) {
sources += [
"//third_party/skia/src/ports/SkFontConfigInterface.cpp",
"//third_party/skia/src/ports/SkFontConfigInterface_direct.cpp",
]
}
- if (is_linux || is_android || is_fuchsia) {
+ if (is_linux || is_android || is_fuchsia || is_tizen) {
sources += [
# Retain the files for the SkFontMgr_Android on linux to emulate android
# fonts. See content/zygote/zygote_main_linux.cc
use_low_quality_image_interpolation = is_android
# If true, ffmpeg will be used for decoding audio.
- use_webaudio_ffmpeg = !is_mac && !is_android
+ use_webaudio_ffmpeg = !is_mac && !is_android && !is_tizen
}
# Whether Android build uses OpenMAX DL FFT. Currently supported only on
# found in the LICENSE file.
import("//third_party/blink/renderer/core/core.gni")
+if (is_tizen) {
+ import("//tizen_src/chromium_impl/third_party/WebKit/Source/core/core_efl.gni")
+}
blink_core_sources("layout") {
split_count = 5
"view_fragmentation_context.h",
]
+ if (is_tizen) {
+ sources += external_webkit_core_rendering_sources
+ }
+
if (is_win) {
sources += [
"layout_theme_font_provider_win.cc",
]
}
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "fonts/linux/font_cache_linux.cc",
+ "text/linux/hyphenation_linux.cc",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (use_minikin_hyphenation) {
sources += [
"text/hyphenation/hyphenation_minikin.cc",
}
config("tizen_tzplatform_config") {
- if (chromium_efl_tizen_version >= 30 && is_tizen) {
- ldflags = [
- "-ltzplatform-config-static",
- "-ltzplatform-config-2.0",
- ]
- }
+ ldflags = [ "-ltzplatform-config-2.0" ]
}
tizen_pkg_config("libtizen_tzplatform_config") {
fi
fi
-supported_targets=("tizen" "desktop")
-
function getHostOs() {
echo $(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')
}
RPMLINT=1
count=$(( $count + 1 ))
;;
+ --nodebug)
+ ARGS[$count]=--define
+ count=$(( $count + 1 ))
+ ARGS[$count]="_nodebug 1"
+ ;;
--noinit)
NOINIT=1
ARGS[$count]="$1"
shift;
done
- if [ "$exclusive_options" -gt 1 ]; then
- echo "ERROR: --libs and --crosswalk-bin are mutually exclusive parameters."
- exit 1
- fi
-
- if [ "$target" == "libs" ]; then
- SPEC_FILE="chromium-efl-libs.spec"
- elif [ "$target" == "crosswalk-bin" ]; then
- SPEC_FILE="crosswalk-bin.spec"
- fi
-
if [ "$PROFILE" == "" ]; then
if [[ $platform == "mobile" ]]; then
PROFILE=tzmb_3.0_target-TM1
defines += [ "EWK_BRINGUP" ]
}
- if (prebuilt_ld_gold_dir != "") {
- ldflags = [ "-B${prebuilt_ld_gold_dir}" ]
-
- if (gcc_version >= 49) {
- # In GCC 4.9, the linker (either bfd or gold) is called with the -plugin argument
- # which our current bundled gold linker (in build/prebuild) does not accept.
- # Since our gold a x64 64bit statically linked binary, even if we rebuild it
- # with plugin support enabled, the plugin being loaded would be a 32bit ARM binary.
- # and load would fail. So we disable linker's plugin loadeir (specifically
- # gcc's liblto_plugin).
- cflags = [ "-fPIC" ]
- ldflags += [ "-shared" ]
- ldflags += [ "-fno-use-linker-plugin" ]
- }
- }
-
if (is_tizen) {
defines += [
"OS_TIZEN",
"WTF_OS_TIZEN",
]
- # Tizen build system has a global option '-Wformat-security'.
- # So, a cflag '-Wno-format' from chromium-efl needs to be ignored.
- # Otherwise, following error will happen.
- # error: -Wformat-security ignored without -Wformat [-Werror=format-security]
- if (prebuilt_ld_gold_dir == "") {
- cflags = [ "-Wno-format" ]
- }
-
defines += [ "NO_UNWIND_TABLES" ]
if (chromium_efl_tizen_version == 30) {
defines += [ "WAYLAND_BRINGUP" ]
}
}
-
}
# Use gold for Android for most CPU architectures.
if (current_cpu == "x86" || current_cpu == "x64" || current_cpu == "arm") {
- if (linux_use_gold_flags == true) {
- cflags += [ "-Wno-deprecated" ]
- ldflags += [ "-fuse-ld=gold" ]
- }
if (is_clang) {
# Let clang find the ld.gold in the NDK.
ldflags += [ "--gcc-toolchain=$rebased_android_toolchain_root" ]
use_wayland = false
- linux_use_gold_flags = false # no use of this variable, if removing then revome from gn_chromiumefl.sh also
-
disable_fatal_linker_warnings = true # no use of this variable, if removing then revome from gn_chromiumefl.sh also
python_ver = "2.5" # no use of this variable, if removing then revome from gn_chromiumefl.sh also
depth = "" # no use of this variable, if removing then revome from gn_chromiumefl.sh also
outdir = ""
+ lto_level = ""
+
use_cairo = false
use_pango = false
tizen_data_dir = "/usr/share/chromium-efl/"
locale_dir = "/usr/share/chromium-efl/locale/"
- prebuilt_ld_gold_dir = ""
chromium_efl_tizen_version = 24
tizen_tbm_support = false
}
"
fi
- # TODO(youngsoo): Once binutils-gold issue on tizen v3.0 ARM 64bit is fixed,
- # make the latest tizen version unconditional.
- if [ "$tizen_version" == "30" ] && [ "$host_arch" == "arm" ]; then
- # [M48_2564] Temporary disabling the flag for switching to new chromium
- # FIXME: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=15383
- ADDITIONAL_GN_PARAMETERS+="linux_use_gold_flags=true
- "
- elif [ "$tizen_version" == "24" -a "$target" == "tv" ]; then
- ADDITIONAL_GN_PARAMETERS+="linux_use_gold_flags=false
- prebuilt_ld_gold_dir=\"${TOPDIR}/tizen_src/build/prebuild/tizen_v2.4_tv\"
- "
- else
- ADDITIONAL_GN_PARAMETERS+="linux_use_gold_flags=true
- "
- fi
-
if [ "$tizen_version" == "30" ]; then
# [M49_2623] Temporary disabling the flag.
# FIXME: http://165.213.149.170/jira/browse/TWF-610
}
add_gbs_flags() {
+ # To reduce binary size, O2 is only applied to major components
+ # and Os is applied to the others.
+ local lto_level="s"
+
+ if [[ $lto_level =~ ^[0-9s]$ ]]; then
+ ADDITIONAL_GN_PARAMETERS+="lto_level=\"$lto_level\"
+ "
+ else
+ ADDITIONAL_GN_PARAMETERS+="lto_level=\"s\"
+ "
+ fi
+ # TODO(youngsoo):
+ # Due to large file size issue of libchromium-ewk.so,
+ # The symbol level is set to 1 by default.
+ # Once the issue is fixed, set it to the level from platform.
+ local symbol_level=$(echo " $CFLAGS" | sed -e 's#.* -g\([0-9]\).*#\1#')
+ if [ "$symbol_level" != "0" ]; then
+ symbol_level="1"
+ fi
+
+ if [[ $symbol_level =~ ^[0-9]$ ]]; then
+ ADDITIONAL_GN_PARAMETERS+="symbol_level=$symbol_level
+ "
+ else
+ ADDITIONAL_GN_PARAMETERS+="symbol_level=1
+ "
+ fi
# target_arch changed to target_cpu but not changed because it seems that
# it is used for gbs and added target_cpu also.
ADDITIONAL_GN_PARAMETERS+="target_cpu=\"${host_arch}\"
add_desktop_flags
else
add_tizen_flags
- if [ "$target" == "mobile" -o "$target" == "tv" ]; then
+ if [ "$target" == "tizen" ]; then
if [ "$target_arch" == "arm" ]; then
add_arm_flags
fi
]
}
-if (is_tizen && !ewk_bringup) {
- external_content_common_efl_sources += [
- "//tizen_src/chromium_impl/content/common/gpu/client/gpu_memory_buffer_impl_efl.cc",
- "//tizen_src/chromium_impl/content/common/gpu/gpu_memory_buffer_factory_efl.cc",
- ]
-
- if (!ewk_bringup) {
- external_content_common_efl_sources += [
- "//tizen_src/chromium_impl/content/common/gpu/client/gpu_memory_buffer_impl_efl_pixmap.cc",
- "//tizen_src/chromium_impl/content/common/gpu/client/gpu_memory_buffer_impl_efl_pixmap.h",
- "//tizen_src/chromium_impl/content/common/gpu/gpu_memory_buffer_factory_efl_pixmap.cc",
- "//tizen_src/chromium_impl/content/common/gpu/gpu_memory_buffer_factory_efl_pixmap.h",
- ]
- }
-}
-
if (tizen_multimedia_support) {
external_content_common_efl_sources += [
"//tizen_src/chromium_impl/content/common/media/efl/media_player_messages_enums_efl.h",
+++ /dev/null
-// Copyright 2014 Samsung Electronics. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Determines whether a certain driver bug exists in the current system.
-// The format of a valid gpu_driver_bug_list.json file is defined in
-// <gpu/config/gpu_control_list_format.txt>.
-// The supported "features" can be found in
-// <gpu/config/gpu_driver_bug_workaround_type.h>.
-
-// This file is analogous to src/gpu/config/gpu_driver_bug_list_json.cc.
-// Please make changes accordingly when above referred file gets changed.
-
-#include "gpu/config/gpu_control_list_jsons.h"
-
-#define LONG_STRING_CONST(...) #__VA_ARGS__
-
-namespace gpu {
-
-const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
-
-{
- "name": "gpu driver bug list",
- // Please update the version number whenever you change this file.
- "version": "7.12",
- "entries": [
- {
- "id": 1,
- "description": "Imagination driver doesn't like uploading lots of buffer data constantly",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination.*",
- "features": [
- "use_client_side_arrays_for_stream_buffers"
- ]
- },
- {
- "id": 2,
- "description": "ARM driver doesn't like uploading lots of buffer data constantly",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "ARM.*",
- "features": [
- "use_client_side_arrays_for_stream_buffers"
- ]
- },
- {
- "id": 3,
- "description": "glGenerateMipmap leaks vram without setting texture filters on some Mac drivers",
- "webkit_bugs": [48489],
- "cr_bugs": [349137],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "features": [
- "set_texture_filter_before_generating_mipmap"
- ]
- },
- {
- "id": 4,
- "description": "glReadPixels incorrectly sets alpha to 0 on some drivers from a drawing buffer without alpha channel",
- "webkit_bugs": [33416],
- "cr_bugs": [349137],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "features": [
- "clear_alpha_in_readpixels"
- ]
- },
- {
- "id": 5,
- "description": "Always call glUseProgram after a successful link to avoid a driver bug",
- "cr_bugs": [349137],
- "vendor_id": "0x10de",
- "exceptions": [
- {
- "os": {
- "type": "macosx",
- "version": {
- "op": ">=",
- "value": "10.9"
- }
- }
- }
- ],
- "features": [
- "use_current_program_after_successful_link"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 6,
- "description": "Restore scissor on FBO change with Qualcomm GPUs on older versions of Android",
- "cr_bugs": [165493, 222018],
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "restore_scissor_on_fbo_change"
- ]
- },
- {
- "id": 7,
- "cr_bugs": [89557],
- "description": "Work around a bug in offscreen buffers on NVIDIA GPUs on Macs",
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x10de",
- "features": [
- "needs_offscreen_buffer_workaround"
- ]
- },
- {
- "id": 8,
- "description": "A few built-in glsl functions on Mac behave incorrectly",
- "cr_bugs": [349137],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "vendor_id": "0x1002",
- "features": [
- "needs_glsl_built_in_function_emulation"
- ]
- },
- {
- "id": 9,
- "description": "AMD drivers get gl_PointCoord backward on OS X 10.8 or earlier",
- "cr_bugs": [256349],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "vendor_id": "0x1002",
- "features": [
- "reverse_point_sprite_coord_origin"
- ]
- },
- {
- "id": 10,
- "description": "Intel drivers get gl_PointCoord backward on OS X 10.8 or earlier",
- "cr_bugs": [256349],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "vendor_id": "0x8086",
- "features": [
- "reverse_point_sprite_coord_origin"
- ]
- },
- {
- "id": 11,
- "description": "Limit max texure size to 4096 on Macs with Intel GPUs",
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "vendor_id": "0x8086",
- "features": [
- "max_texture_size_limit_4096"
- ]
- },
- {
- "id": 12,
- "description": "Limit max cube map texure size to 1024 on Macs with Intel GPUs",
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x8086",
- "features": [
- "max_cube_map_texture_size_limit_1024"
- ]
- },
- {
- "id": 13,
- "description": "Limit max cube map texure size to 512 on older Macs with Intel GPUs",
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.7.3"
- }
- },
- "vendor_id": "0x8086",
- "features": [
- "max_cube_map_texture_size_limit_512"
- ]
- },
- {
- "id": 14,
- "description": "Limit max texure size and cube map texture size to 4096 on Macs with AMD GPUs",
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "vendor_id": "0x1002",
- "features": [
- "max_texture_size_limit_4096",
- "max_cube_map_texture_size_limit_4096"
- ]
- },
- {
- "id": 16,
- "description": "EXT_occlusion_query appears to be buggy with Intel GPUs on Linux",
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x8086",
- "features": [
- "disable_ext_occlusion_query"
- ]
- },
- {
- "id": 17,
- "description": "Some drivers are unable to reset the D3D device in the GPU process sandbox",
- "os": {
- "type": "win"
- },
- "features": [
- "exit_on_context_lost"
- ]
- },
- {
- "id": 19,
- "description": "Disable depth textures on Android with Qualcomm GPUs",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "disable_depth_texture"
- ]
- },
- {
- "id": 20,
- "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X due to driver bugs",
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0fd5"],
- "multi_gpu_category": "any",
- "features": [
- "disable_ext_draw_buffers"
- ]
- },
- {
- "id": 21,
- "description": "Vivante GPUs are buggy with context switching",
- "cr_bugs": [179250, 235935],
- "os": {
- "type": "tizen"
- },
- "gl_extensions": ".*GL_VIV_shader_binary.*",
- "features": [
- "unbind_fbo_on_context_switch"
- ]
- },
- {
- "id": 22,
- "description": "Imagination drivers are buggy with context switching",
- "cr_bugs": [230896],
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination.*",
- "features": [
- "unbind_fbo_on_context_switch"
- ]
- },
- {
- "id": 23,
- "cr_bugs": [243038],
- "description": "Disable OES_standard_derivative on Intel Pineview M Gallium drivers",
- "os": {
- "type": "chromeos"
- },
- "vendor_id": "0x8086",
- "device_id": ["0xa011", "0xa012"],
- "features": [
- "disable_oes_standard_derivatives"
- ]
- },
- {
- "id": 24,
- "cr_bugs": [231082],
- "description": "Mali-400 drivers throw an error when a buffer object's size is set to 0",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "ARM.*",
- "gl_renderer": ".*Mali-400.*",
- "features": [
- "use_non_zero_size_for_client_side_stream_buffers"
- ]
- },
- {
- "id": 25,
- "cr_bugs": [152225],
- "description": "PBO + Readpixels don't work on OS X 10.7",
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.8"
- }
- },
- "features": [
- "disable_async_readpixels"
- ]
- },
- {
- "id": 26,
- "description": "Disable use of Direct3D 11 on Windows Vista and lower",
- "os": {
- "type": "win",
- "version": {
- "op": "<=",
- "value": "6.0"
- }
- },
- "features": [
- "disable_d3d11"
- ]
- },
- {
- "id": 27,
- "cr_bugs": [265115],
- "description": "Async Readpixels with GL_BGRA format is broken on Haswell chipset on Macs",
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x8086",
- "device_id": ["0x0402", "0x0406", "0x040a", "0x0412", "0x0416", "0x041a",
- "0x0a04", "0x0a16", "0x0a22", "0x0a26", "0x0a2a"],
- "features": [
- "swizzle_rgba_for_async_readpixels"
- ]
- },
- {
- "id": 30,
- "cr_bugs": [237931],
- "description": "Multisampling is buggy on OSX when multiple monitors are connected",
- "os": {
- "type": "macosx"
- },
- "features": [
- "disable_multimonitor_multisampling"
- ]
- },
- {
- "id": 31,
- "cr_bugs": [154715, 10068, 269829, 294779, 285292],
- "description": "The Mali-Txxx driver does not guarantee flush ordering",
- "gl_vendor": "ARM.*",
- "gl_renderer": "Mali-T.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- "id": 32,
- "cr_bugs": [179815],
- "description": "Share groups are not working on (older?) Broadcom drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Broadcom.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- "id": 33,
- "description": "Share group-related crashes and poor context switching perf on Galaxy Nexus",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- "id": 34,
- "cr_bugs": [179250, 229643, 230896],
- "description": "Share groups are not working on (older?) Vivante drivers",
- "os": {
- "type": "tizen"
- },
- "gl_extensions": ".*GL_VIV_shader_binary.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 35,
- "cr_bugs": [163464],
- "description": "Share-group related crashes on older NVIDIA drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "NVIDIA.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 36,
- "cr_bugs": [163464, 233612],
- "description": "Share-group related crashes on Qualcomm drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- "id": 37,
- "cr_bugs": [286468],
- "description": "Program link fails in NVIDIA Linux if gl_Position is not set",
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "features": [
- "init_gl_position_in_vertex_shader"
- ]
- },
- {
- "id": 38,
- "cr_bugs": [289461],
- "description": "Non-virtual contexts on Qualcomm sometimes cause out-of-order frames",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
- {
- "id": 39,
- "cr_bugs": [290391],
- "description": "Multisampled renderbuffer allocation must be validated on some Macs",
- "os": {
- "type": "macosx"
- },
- "features": [
- "validate_multisample_buffer_allocation"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 40,
- "cr_bugs": [290876],
- "description": "Framebuffer discarding causes flickering on old ARM drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "ARM.*",
- "features": [
- "disable_ext_discard_framebuffer"
- ]
- },
- {
- "id": 42,
- "cr_bugs": [290876],
- "description": "Framebuffer discarding causes flickering on older IMG drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination.*",
- "gl_renderer": "PowerVR SGX 540",
- "features": [
- "disable_ext_discard_framebuffer"
- ]
- },
- {
- "id": 43,
- "cr_bugs": [299494],
- "description": "Framebuffer discarding doesn't accept trivial attachments on Vivante",
- "os": {
- "type": "tizen"
- },
- "gl_extensions": ".*GL_VIV_shader_binary.*",
- "features": [
- "disable_ext_discard_framebuffer"
- ]
- },
- {
- "id": 44,
- "cr_bugs": [301988],
- "description": "Framebuffer discarding causes jumpy scrolling on Mali drivers",
- "os": {
- "type": "chromeos"
- },
- "features": [
- "disable_ext_discard_framebuffer"
- ]
- },
- {
- "id": 45,
- "cr_bugs": [307751],
- "description": "Unfold short circuit on Mac OS X",
- "os": {
- "type": "macosx"
- },
- "features": [
- "unfold_short_circuit_as_ternary_operation"
- ]
- },
- {
- "id": 48,
- "description": "Force to use discrete GPU on older MacBookPro models",
- "cr_bugs": [113703],
- "os": {
- "type": "macosx",
- "version": {
- "op": ">=",
- "value": "10.7"
- }
- },
- "machine_model_name": ["MacBookPro"],
- "machine_model_version": {
- "op": "<",
- "value": "8"
- },
- "gpu_count": {
- "op": "=",
- "value": "2"
- },
- "features": [
- "force_discrete_gpu"
- ]
- },
- {
- "id": 49,
- "cr_bugs": [309734],
- "description": "The first draw operation from an idle state is slow",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "wake_up_gpu_before_drawing"
- ]
- },
- {
- "id": 51,
- "description": "TexSubImage2D() is faster for full uploads on ANGLE",
- "os": {
- "type": "win"
- },
- "gl_renderer": "ANGLE.*",
- "features": [
- "texsubimage2d_faster_than_teximage2d"
- ]
- },
- {
- "id": 52,
- "description": "ES3 MSAA is broken on Qualcomm",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "disable_multisampling"
- ]
- },
- {
- "id": 54,
- "cr_bugs": [124764, 349137],
- "description": "Clear uniforms before first program use on all platforms",
- "exceptions": [
- {
- "os": {
- "type": "macosx",
- "version": {
- "op": ">=",
- "value": "10.9"
- }
- }
- }
- ],
- "features": [
- "clear_uniforms_before_first_program_use"
- ]
- },
- {
- "id": 55,
- "cr_bugs": [333885],
- "description": "Mesa drivers in Linux handle varyings without static use incorrectly",
- "os": {
- "type": "linux"
- },
- "driver_vendor": "Mesa",
- "features": [
- "count_all_in_varyings_packing"
- ]
- },
- {
- "id": 56,
- "cr_bugs": [333885],
- "description": "Mesa drivers in ChromeOS handle varyings without static use incorrectly",
- "os": {
- "type": "chromeos"
- },
- "driver_vendor": "Mesa",
- "features": [
- "count_all_in_varyings_packing"
- ]
- },
- {
- "id": 57,
- "cr_bugs": [322760],
- "description": "Mac drivers handle varyings without static use incorrectly",
- "os": {
- "type": "macosx"
- },
- "features": [
- "init_varyings_without_static_use"
- ]
- },
- {
- "id": 58,
- "description": "Multisampling is buggy in ATI cards on older Mac OS X",
- "cr_bugs": [67752, 83153],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.7.2"
- }
- },
- "vendor_id": "0x1002",
- "features": [
- "disable_multisampling"
- ]
- },
- {
- "id": 59,
- "description": "Multisampling is buggy in Intel IvyBridge",
- "cr_bugs": [116370],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x8086",
- "device_id": ["0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
- "features": [
- "disable_multisampling"
- ]
- },
- {
- "id": 60,
- "description": "Multisampling is buggy on Mac OS X prior to 10.8.3",
- "cr_bugs": [137303, 162466],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.8.3"
- }
- },
- "features": [
- "disable_multisampling"
- ]
- },
- {
- "id": 63,
- "description": "Shaders with sampler arrays indexing for-loop indices cause the GLSL compiler to crash on OS X",
- "cr_bugs": [348198, 349137],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.9"
- }
- },
- "features": [
- "unroll_for_loop_with_sampler_array_index"
- ]
- },
- {
- "id": 64,
- "description": "Linux AMD drivers incorrectly return initial value of 1 for TEXTURE_MAX_ANISOTROPY",
- "cr_bugs": [348237],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x1002",
- "features": [
- "init_texture_max_anisotropy"
- ]
- },
- {
- "id": 65,
- "description": "Linux NVIDIA drivers don't have the correct defaults for vertex attributes",
- "cr_bugs": [351528],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "features": [
- "init_vertex_attributes"
- ]
- },
- {
- "id": 66,
- "description": "Force glFinish() after compositing on older OS X on Intel GPU",
- "cr_bugs": [123409],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<=",
- "value": "10.7"
- }
- },
- "vendor_id": "0x8086",
- "multi_gpu_category": "active",
- "features": [
- "force_gl_finish_after_compositing"
- ]
- },
- {
- "id": 68,
- "description": "Disable partial swaps on linux drivers",
- "cr_bugs": [339493],
- "os": {
- "type": "linux"
- },
- "driver_vendor": "Mesa",
- "features": [
- "disable_post_sub_buffers_for_onscreen_surfaces"
- ]
- },
- {
- "id": 69,
- "description": "Some shaders in Skia need more than the min available vertex and fragment shader uniform vectors in case of OSMesa",
- "cr_bugs": [174845],
- "driver_vendor": "osmesa",
- "features": [
- "max_fragment_uniform_vectors_32",
- "max_varying_vectors_16",
- "max_vertex_uniform_vectors_256"
- ]
- },
- {
- "id": 70,
- "description": "Disable D3D11 on older nVidia drivers",
- "cr_bugs": [349929],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "<=",
- "value": "8.17.12.6973"
- },
- "features": [
- "disable_d3d11"
- ]
- },
- {
- "id": 71,
- "description": "Vivante's support of OES_standard_derivatives is buggy",
- "cr_bugs": [368005],
- "os": {
- "type": "tizen"
- },
- "gl_extensions": ".*GL_VIV_shader_binary.*",
- "features": [
- "disable_oes_standard_derivatives"
- ]
- },
- {
- "id": 72,
- "description": "Use virtual contexts on NVIDIA with GLES 3.1",
- "cr_bugs": [369316],
- "os": {
- "type": "tizen"
- },
- "gl_type": "gles",
- "gl_version": {
- "op": "=",
- "value": "3.1"
- },
- "gl_vendor": "NVIDIA.*",
- "features": [
- "use_virtualized_gl_contexts"
- ]
- },
-) // LONG_STRING_CONST macro
-// Avoid C2026 (string too big) error on VisualStudio.
-LONG_STRING_CONST(
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 74,
- "cr_bugs": [278606, 382686],
- "description": "Testing EGL sync fences was broken on most Qualcomm drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "disable_egl_khr_fence_sync"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 76,
- "cr_bugs": [371530],
- "description": "Testing EGL sync fences was broken on IMG",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination Technologies.*",
- "features": [
- "disable_egl_khr_fence_sync"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 77,
- "cr_bugs": [378691, 373360, 371530, 398964],
- "description": "Testing fences was broken on Mali ES2 drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "ARM.*",
- "gl_renderer": "Mali.*",
- "gl_type": "gles",
- "gl_version": {
- "op": "<",
- "value": "3.0"
- },
- "features": [
- "disable_egl_khr_fence_sync"
- ]
- },
- {
- "id": 78,
- "cr_bugs": [378691, 373360, 371530],
- "description": "Testing fences was broken on Broadcom drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Broadcom.*",
- "features": [
- "disable_egl_khr_fence_sync"
- ]
- },
- {
- "id": 79,
- "cr_bugs": [371530],
- "description": "Testing ARB sync fences is broken on MacOSX",
- "os": {
- "type": "macosx"
- },
- "features": [
- "disable_arb_sync"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 82,
- "description": "PBO mappings segfault on certain older Qualcomm drivers",
- "cr_bugs": [394510],
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Qualcomm.*",
- "features": [
- "disable_async_readpixels"
- ]
- },
- {
- "id": 86,
- "description": "Disable use of Direct3D 11 on Matrox video cards",
- "cr_bugs": [395861],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x102b",
- "features": [
- "disable_d3d11"
- ]
- },
- {
- "id": 87,
- "description": "Disable use of Direct3D 11 on older AMD drivers",
- "cr_bugs": [402134],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x1002",
- "driver_date": {
- "op": "<",
- "value": "2011.1"
- },
- "features": [
- "disable_d3d11"
- ]
- },
- {
- "id": 88,
- "description": "Always rewrite vec/mat constructors to be consistent",
- "cr_bugs": [398694],
- "features": [
- "scalarize_vec_and_mat_constructor_args"
- ]
- },
- {
- "id": 89,
- "description": "Mac drivers handle struct scopes incorrectly",
- "cr_bugs": [403957],
- "os": {
- "type": "macosx"
- },
- "features": [
- "regenerate_struct_names"
- ]
- },
- {
- "id": 90,
- "description": "Linux AMD drivers handle struct scopes incorrectly",
- "cr_bugs": [403957],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x1002",
- "features": [
- "regenerate_struct_names"
- ]
- },
- {
- "id": 91,
- "cr_bugs": [150500, 414816],
- "description": "ETC1 non-power-of-two sized textures crash older IMG drivers",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Imagination.*",
- "gl_renderer": "PowerVR SGX 5.*",
- "features": [
- "etc1_power_of_two_only"
- ]
- },
- {
- "id": 92,
- "description": "Old Intel drivers cannot reliably support D3D11",
- "cr_bugs": [363721],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "driver_version": {
- "op": "<",
- "value": "8.16"
- },
- "features": [
- "disable_d3d11"
- ]
- },
- {
- "id": 93,
- "description": "The GL implementation on the Android emulator has problems with PBOs.",
- "cr_bugs": [340882],
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "VMware.*",
- "gl_renderer": "Gallium.*",
- "gl_type": "gles",
- "gl_version": {
- "op": "=",
- "value": "3.0"
- },
- "features": [
- "disable_async_readpixels"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 94,
- "description": "Disable EGL_KHR_wait_sync on NVIDIA with GLES 3.1",
- "cr_bugs": [433057],
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "NVIDIA.*",
- "gl_type": "gles",
- "gl_version": {
- "op": "=",
- "value": "3.1"
- },
- "features": [
- "disable_egl_khr_wait_sync"
- ]
- },
- {
- // TODO(prashant.n): Check and verfiy this bug on latest tizen platforms,
- // as latest versions (> 4.4) of Android have fixes for this.
- "id": 95,
- "description": "Framebuffer discarding causes tile jumps on reorient.",
- "os": {
- "type": "tizen"
- },
- "gl_vendor": "Broadcom.*",
- "gl_renderer": "VideoCore IV HW*",
- "features": [
- "disable_ext_discard_framebuffer"
- ]
- },
- {
- "id": 96,
- "description": "glBindFramebuffer sometimes requires a glBegin/End to take effect",
- "cr_bugs": [435786],
- "os": {
- "type": "macosx"
- },
- "features": [
- "gl_begin_gl_end_on_fbo_change_to_backbuffer"
- ]
- }
- ]
-}
-
-); // LONG_STRING_CONST macro
-
-} // namespace gpu
#include "gpu/config/scoped_restore_non_owned_egl_context.h"
#if defined(TIZEN_MULTIMEDIA_SUPPORT)
-#include "content/common/gpu/media/gpu_video_decode_accelerator.h"
-#include "content/common/gpu/media/gpu_video_encode_accelerator.h"
+#include "content/public/browser/gpu_utils.h"
+#include "media/gpu/ipc/service/gpu_video_decode_accelerator.h"
+#include "media/gpu/ipc/service/gpu_video_encode_accelerator.h"
#endif
namespace {
sub_string = version_string.substr(begin, end - begin);
else
sub_string = version_string.substr(begin);
- std::vector<std::string> pieces = base::SplitString(sub_string,
- ".",
- base::TRIM_WHITESPACE,
- base::SPLIT_WANT_ALL);
+ std::vector<std::string> pieces = base::SplitString(
+ sub_string, ".", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
if (pieces.size() < 2)
return "0";
return pieces[0] + "." + pieces[1];
}
-}
+} // namespace
namespace gpu {
-CollectInfoResult CollectContextGraphicsInfo(GPUInfo* gpu_info) {
- return CollectBasicGraphicsInfo(gpu_info);
-}
-
-CollectInfoResult CollectGpuID(uint32_t* vendor_id, uint32_t* device_id) {
- DCHECK(vendor_id && device_id);
- *vendor_id = 0;
- *device_id = 0;
- return kCollectInfoNonFatalFailure;
+bool CollectBasicGraphicsInfo(GPUInfo* gpu_info) {
+ NOTREACHED();
+ return false;
}
-CollectInfoResult CollectBasicGraphicsInfo(GPUInfo* gpu_info) {
+bool CollectContextGraphicsInfo(GPUInfo* gpu_info) {
DCHECK(gpu_info);
- // Create a short-lived context on the UI thread to collect the GL strings.
+ // Create a short-lived context on the GPU thread to collect the GL strings.
// Make sure we restore the existing context if there is one.
ScopedRestoreNonOwnedEGLContext restore_context;
- CollectInfoResult result = CollectGraphicsInfoGL(gpu_info);
- gpu_info->basic_info_state = result;
- gpu_info->context_info_state = result;
+ bool success = CollectGraphicsInfoGL(gpu_info);
#if defined(TIZEN_MULTIMEDIA_SUPPORT)
+ gpu::GpuPreferences gpu_preferences =
+ content::GetGpuPreferencesFromCommandLine();
+ gpu::GpuDriverBugWorkarounds work_arounds;
gpu_info->video_encode_accelerator_supported_profiles =
- content::GpuVideoEncodeAccelerator::GetSupportedProfiles();
+ media::GpuVideoEncodeAccelerator::GetSupportedProfiles(gpu_preferences);
gpu_info->video_decode_accelerator_capabilities =
- content::GpuVideoDecodeAccelerator::GetCapabilities();
+ media::GpuVideoDecodeAccelerator::GetCapabilities(gpu_preferences,
+ work_arounds);
#endif
- return result;
+ return success;
}
-CollectInfoResult CollectDriverInfoGL(GPUInfo* gpu_info) {
+void CollectDriverInfoGL(GPUInfo* gpu_info) {
DCHECK(gpu_info);
- gpu_info->driver_version = GetDriverVersionFromString(
- gpu_info->gl_version);
+ gpu_info->driver_version = GetDriverVersionFromString(gpu_info->gl_version);
gpu_info->gpu.vendor_string = gpu_info->gl_vendor;
gpu_info->gpu.device_string = gpu_info->gl_renderer;
- return kCollectInfoSuccess;
-}
-
-void MergeGPUInfo(GPUInfo* basic_gpu_info,
- const GPUInfo& context_gpu_info) {
- MergeGPUInfoGL(basic_gpu_info, context_gpu_info);
}
} // namespace gpu
+++ /dev/null
-// Copyright 2014 Samsung Electronics. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Determines whether certain gpu-related features are blacklisted or not.
-// The format of a valid software_rendering_list.json file is defined in
-// <gpu/config/gpu_control_list_format.txt>.
-// The supported "features" can be found in <gpu/config/gpu_blacklist.cc>.
-
-// This file is analogous to src/gpu/config/software_rendering_list_json.cc.
-// Please make changes accordingly when above referred file gets changed.
-
-#include "gpu/config/gpu_control_list_jsons.h"
-
-#define LONG_STRING_CONST(...) #__VA_ARGS__
-
-namespace gpu {
-
-const char kSoftwareRenderingListJson[] = LONG_STRING_CONST(
-
-{
- "name": "software rendering list",
- // Please update the version number whenever you change this file.
- "version": "9.13",
- "entries": [
- {
- "id": 1,
- "description": "ATI Radeon X1900 is not compatible with WebGL on the Mac",
- "webkit_bugs": [47028],
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x1002",
- "device_id": ["0x7249"],
- "features": [
- "webgl",
- "flash_3d",
- "flash_stage3d"
- ]
- },
- {
- "id": 3,
- "description": "GL driver is software rendered. GPU acceleration is disabled",
- "cr_bugs": [59302, 315217],
- "os": {
- "type": "linux"
- },
- "gl_renderer": "(?i).*software.*",
- "features": [
- "all"
- ]
- },
- {
- "id": 4,
- "description": "The Intel Mobile 945 Express family of chipsets is not compatible with WebGL",
- "cr_bugs": [232035],
- "os": {
- "type": "any"
- },
- "vendor_id": "0x8086",
- "device_id": ["0x27AE", "0x27A2"],
- "features": [
- "webgl",
- "flash_3d",
- "flash_stage3d",
- "accelerated_2d_canvas"
- ]
- },
- {
- "id": 5,
- "description": "ATI/AMD cards with older drivers in Linux are crash-prone",
- "cr_bugs": [71381, 76428, 73910, 101225, 136240, 357314],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x1002",
- "exceptions": [
- {
- "driver_vendor": ".*AMD.*",
- "driver_version": {
- "op": ">=",
- "style": "lexical",
- "value": "8.98"
- }
- },
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "10.0.4"
- }
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 8,
- "description": "NVIDIA GeForce FX Go5200 is assumed to be buggy",
- "cr_bugs": [72938],
- "os": {
- "type": "any"
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0324"],
- "features": [
- "all"
- ]
- },
- {
- "id": 10,
- "description": "NVIDIA GeForce 7300 GT on Mac does not support WebGL",
- "cr_bugs": [73794],
- "os": {
- "type": "macosx"
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0393"],
- "features": [
- "webgl",
- "flash_3d",
- "flash_stage3d"
- ]
- },
- {
- "id": 12,
- "description": "Drivers older than 2009-01 on Windows are possibly unreliable",
- "cr_bugs": [72979, 89802, 315205],
- "os": {
- "type": "win"
- },
- "driver_date": {
- "op": "<",
- "value": "2009.1"
- },
- "exceptions": [
- {
- "vendor_id": "0x8086",
- "device_id": ["0x29a2"],
- "driver_version": {
- "op": ">=",
- "value": "7.15.10.1624"
- }
- },
- {
- "driver_vendor": "osmesa"
- },
- {
- "vendor_id": "0x1414",
- "device_id": ["0x02c1"]
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 17,
- "description": "Older Intel mesa drivers are crash-prone",
- "cr_bugs": [76703, 164555, 225200, 340886],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x8086",
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": "<",
- "value": "10.1"
- },
- "exceptions": [
- {
- "device_id": ["0x0102", "0x0106", "0x0112", "0x0116", "0x0122", "0x0126", "0x010a", "0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
- "driver_version": {
- "op": ">=",
- "value": "8.0"
- }
- },
- {
- "device_id": ["0xa001", "0xa002", "0xa011", "0xa012", "0x29a2", "0x2992", "0x2982", "0x2972", "0x2a12", "0x2a42", "0x2e02", "0x2e12", "0x2e22", "0x2e32", "0x2e42", "0x2e92"],
- "driver_version": {
- "op": ">",
- "value": "8.0.2"
- }
- },
- {
- "device_id": ["0x0042", "0x0046"],
- "driver_version": {
- "op": ">",
- "value": "8.0.4"
- }
- },
- {
- "device_id": ["0x2a02"],
- "driver_version": {
- "op": ">=",
- "value": "9.1"
- }
- },
- {
- "device_id": ["0x0a16", "0x0a26"],
- "driver_version": {
- "op": ">=",
- "value": "10.0.1"
- }
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 18,
- "description": "NVIDIA Quadro FX 1500 is buggy",
- "cr_bugs": [84701],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "device_id": ["0x029e"],
- "features": [
- "all"
- ]
- },
- {
- "id": 23,
- "description": "Mesa drivers in linux older than 7.11 are assumed to be buggy",
- "os": {
- "type": "linux"
- },
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": "<",
- "value": "7.11"
- },
- "exceptions": [
- {
- "driver_vendor": "osmesa"
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 24,
- "description": "Accelerated 2d canvas is unstable in Linux at the moment",
- "os": {
- "type": "linux"
- },
- "features": [
- "accelerated_2d_canvas"
- ]
- },
- {
- "id": 27,
- "description": "ATI/AMD cards with older drivers in Linux are crash-prone",
- "cr_bugs": [95934, 94973, 136240, 357314],
- "os": {
- "type": "linux"
- },
- "gl_vendor": "ATI.*",
- "exceptions": [
- {
- "driver_vendor": ".*AMD.*",
- "driver_version": {
- "op": ">=",
- "style": "lexical",
- "value": "8.98"
- }
- },
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "10.0.4"
- }
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 28,
- "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone",
- "cr_bugs": [95934, 94973, 357314],
- "os": {
- "type": "linux"
- },
- "gl_vendor": "X\\.Org.*",
- "gl_renderer": ".*AMD.*",
- "exceptions": [
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "10.0.4"
- }
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 29,
- "description": "ATI/AMD cards with third-party drivers in Linux are crash-prone",
- "cr_bugs": [95934, 94973, 357314],
- "os": {
- "type": "linux"
- },
- "gl_vendor": "X\\.Org.*",
- "gl_renderer": ".*ATI.*",
- "exceptions": [
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "10.0.4"
- }
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 30,
- "description": "NVIDIA cards with nouveau drivers in Linux are crash-prone",
- "cr_bugs": [94103],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "gl_vendor": "(?i)nouveau.*",
- "features": [
- "all"
- ]
- },
- {
- "id": 32,
- "description": "Accelerated 2d canvas is disabled on Windows systems with low perf stats",
- "cr_bugs": [116350, 151500],
- "os": {
- "type": "win"
- },
- "perf_overall": {
- "op": "<",
- "value": "3.5"
- },
- "exceptions": [
- {
- "perf_gaming": {
- "op": ">",
- "value": "3.5"
- }
- },
- {
- "cpu_info": "(?i).*Atom.*"
- }
- ],
- "features": [
- "accelerated_2d_canvas"
- ]
- },
- {
- "id": 34,
- "description": "S3 Trio (used in Virtual PC) is not compatible",
- "cr_bugs": [119948],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x5333",
- "device_id": ["0x8811"],
- "features": [
- "all"
- ]
- },
- {
- "id": 35,
- "description": "Stage3D is not supported on Linux",
- "cr_bugs": [129848],
- "os": {
- "type": "linux"
- },
- "features": [
- "flash_stage3d"
- ]
- },
- {
- "id": 37,
- "description": "Older drivers are unreliable for Optimus on Linux",
- "cr_bugs": [131308, 363418],
- "os": {
- "type": "linux"
- },
- "multi_gpu_style": "optimus",
- "exceptions": [
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "10.1"
- },
- "gl_vendor": "Intel.*"
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 38,
- "description": "Accelerated 2D canvas is unstable for NVidia GeForce 9400M on Lion",
- "cr_bugs": [130495],
- "os": {
- "type": "macosx",
- "version": {
- "op": "=",
- "value": "10.7"
- }
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0863"],
- "features": [
- "accelerated_2d_canvas"
- ]
- },
- {
- "id": 42,
- "description": "AMD Radeon HD 6490M and 6970M on Snow Leopard are buggy",
- "cr_bugs": [137307, 285350],
- "os": {
- "type": "macosx",
- "version": {
- "op": "=",
- "value": "10.6"
- }
- },
- "vendor_id": "0x1002",
- "device_id": ["0x6760", "0x6720"],
- "features": [
- "webgl"
- ]
- },
- {
- "id": 44,
- "description": "Intel HD 4000 causes kernel panic on Lion",
- "cr_bugs": [134015],
- "os": {
- "type": "macosx",
- "version": {
- "op": "between",
- "value": "10.7.0",
- "value2": "10.7.4"
- }
- },
- "vendor_id": "0x8086",
- "device_id": ["0x0166"],
- "multi_gpu_category": "any",
- "features": [
- "all"
- ]
- },
- {
- "id": 45,
- "description": "Parallels drivers older than 7 are buggy",
- "cr_bugs": [138105],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x1ab8",
- "driver_version": {
- "op": "<",
- "value": "7"
- },
- "features": [
- "all"
- ]
- },
- {
- "id": 46,
- "description": "ATI FireMV 2400 cards on Windows are buggy",
- "cr_bugs": [124152],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x1002",
- "device_id": ["0x3151"],
- "features": [
- "all"
- ]
- },
- {
- "id": 47,
- "description": "NVIDIA linux drivers older than 295.* are assumed to be buggy",
- "cr_bugs": [78497],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "driver_vendor": "NVIDIA",
- "driver_version": {
- "op": "<",
- "value": "295"
- },
- "features": [
- "all"
- ]
- },
-#if !defined(TIZEN_MULTIMEDIA_SUPPORT)
- {
- "id": 48,
- "description": "Accelerated video decode is unavailable on Mac and Linux",
- "cr_bugs": [137247, 133828],
- "exceptions": [
- {
- "os": {
- "type": "chromeos"
- }
- },
- {
- "os": {
- "type": "win"
- }
- },
- {
- "os": {
- "type": "android"
- }
- }
- ],
- "features": [
- "accelerated_video_decode"
- ]
- },
-#endif
- {
- "id": 49,
- "description": "NVidia GeForce GT 650M can cause the system to hang with flash 3D",
- "cr_bugs": [140175],
- "os": {
- "type": "macosx",
- "version": {
- "op": "between",
- "value": "10.8.0",
- "value2": "10.8.1"
- }
- },
- "multi_gpu_style": "optimus",
- "vendor_id": "0x10de",
- "device_id": ["0x0fd5"],
- "features": [
- "flash_3d",
- "flash_stage3d"
- ]
- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
- "cr_bugs": [145531, 332596],
- "os": {
- "type": "linux"
- },
- "gl_vendor": "VMware.*",
- "exceptions": [
- {
- "driver_vendor": "Mesa",
- "driver_version": {
- "op": ">=",
- "value": "9.2.1"
- },
- "gl_renderer": ".*SVGA3D.*"
- }
- ],
- "features": [
- "all"
- ]
- },
- {
- "id": 53,
- "description": "The Intel GMA500 is too slow for Stage3D",
- "cr_bugs": [152096],
- "vendor_id": "0x8086",
- "device_id": ["0x8108", "0x8109"],
- "features": [
- "flash_stage3d"
- ]
- },
- {
- "id": 56,
- "description": "NVIDIA linux drivers are unstable when using multiple Open GL contexts and with low memory",
- "cr_bugs": [145600],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x10de",
- "driver_vendor": "NVIDIA",
- "features": [
- "accelerated_video_decode",
- "flash_3d",
- "flash_stage3d"
- ]
- },
- {
- // Panel fitting is only used with OS_CHROMEOS. To avoid displaying an
- // error in chrome:gpu on every other platform, this blacklist entry needs
- // to only match on chromeos. The drawback is that panel_fitting will not
- // appear to be blacklisted if accidentally queried on non-chromeos.
- "id": 57,
- "description": "Chrome OS panel fitting is only supported for Intel IVB and SNB Graphics Controllers",
- "os": {
- "type": "chromeos"
- },
- "exceptions": [
- {
- "vendor_id": "0x8086",
- "device_id": ["0x0106", "0x0116", "0x0166"]
- }
- ],
- "features": [
- "panel_fitting"
- ]
- },
- {
- "id": 59,
- "description": "NVidia driver 8.15.11.8593 is crashy on Windows",
- "cr_bugs": [155749],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "=",
- "value": "8.15.11.8593"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 62,
- "description": "Accelerated 2D canvas buggy on old Qualcomm Adreno",
- "cr_bugs": [161575],
- "os": {
- "type": "android"
- },
- "gl_renderer": ".*Adreno.*",
- "driver_version": {
- "op": "<",
- "value": "4.1"
- },
- "features": [
- "accelerated_2d_canvas"
- ]
- },
- {
- "id": 64,
- "description": "Hardware video decode is only supported in win7+",
- "cr_bugs": [159458],
- "os": {
- "type": "win",
- "version": {
- "op": "<",
- "value": "6.1"
- }
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 68,
- "description": "VMware Fusion 4 has corrupt rendering with Win Vista+",
- "cr_bugs": [169470],
- "os": {
- "type": "win",
- "version": {
- "op": ">=",
- "value": "6.0"
- }
- },
- "vendor_id": "0x15ad",
- "driver_version": {
- "op": "<=",
- "value": "7.14.1.1134"
- },
- "features": [
- "all"
- ]
- },
- {
- "id": 69,
- "description": "NVIDIA driver 8.17.11.9621 is buggy with Stage3D baseline mode",
- "cr_bugs": [172771],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "=",
- "value": "8.17.11.9621"
- },
- "features": [
- "flash_stage3d_baseline"
- ]
- },
- {
- "id": 70,
- "description": "NVIDIA driver 8.17.11.8267 is buggy with Stage3D baseline mode",
- "cr_bugs": [172771],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "=",
- "value": "8.17.11.8267"
- },
- "features": [
- "flash_stage3d_baseline"
- ]
- },
- {
- "id": 71,
- "description": "All Intel drivers before 8.15.10.2021 are buggy with Stage3D baseline mode",
- "cr_bugs": [172771],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "driver_version": {
- "op": "<",
- "value": "8.15.10.2021"
- },
- "features": [
- "flash_stage3d_baseline"
- ]
- },
- {
- "id": 72,
- "description": "NVIDIA GeForce 6200 LE is buggy with WebGL",
- "cr_bugs": [232529],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0163"],
- "features": [
- "webgl"
- ]
- },
- {
- "id": 73,
- "description": "WebGL is buggy with the NVIDIA GeForce GT 330M, 9400, and 9400M on MacOSX earlier than 10.8",
- "cr_bugs": [233523],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<",
- "value": "10.8"
- }
- },
- "vendor_id": "0x10de",
- "device_id": ["0x0a29", "0x0861", "0x0863"],
- "features": [
- "webgl"
- ]
- },
- {
- "id": 74,
- "description": "GPU access is blocked if users don't have proper graphics driver installed after Windows installation",
- "cr_bugs": [248178],
- "os": {
- "type": "win"
- },
- "driver_vendor": "Microsoft",
- "exceptions": [
- {
- "vendor_id": "0x1414",
- "device_id": ["0x02c1"]
- }
- ],
- "features": [
- "all"
- ]
- },
-) // String split to avoid MSVC char limit.
-LONG_STRING_CONST(
- {
- "id": 76,
- "description": "WebGL is disabled on Android unless GPU reset notification is supported",
- "os": {
- "type": "android"
- },
- "exceptions": [
- {
- "gl_reset_notification_strategy": {
- "op": "=",
- "value": "33362"
- }
- },
- {
- "gl_renderer": "Mali-400.*",
- "gl_extensions": ".*EXT_robustness.*"
- }
- ],
- "features": [
- "webgl"
- ],
- // FIXME(heejin): Remove when Mali-T628 DDK provides needed extensions.
- "disabled": true
- },
- {
- "id": 78,
- "description": "Accelerated video decode interferes with GPU sandbox on older Intel drivers",
- "cr_bugs": [180695],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "driver_version": {
- "op": "between",
- "value": "8.15.10.1883",
- "value2": "8.15.10.2702"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 79,
- "description": "Disable GPU on all Windows versions prior to and including Vista",
- "cr_bugs": [315199],
- "os": {
- "type": "win",
- "version": {
- "op": "<=",
- "value": "6.0"
- }
- },
- "features": [
- "all"
- ]
- },
- {
- "id": 81,
- "description": "Apple software renderer used under VMWare hangs on Mac OS 10.6 and 10.7",
- "cr_bugs": [230931],
- "os": {
- "type": "macosx",
- "version": {
- "op": "<=",
- "value": "10.7"
- }
- },
- "vendor_id": "0x15ad",
- "features": [
- "all"
- ]
- },
- {
- "id": 82,
- "description": "MediaCodec is still too buggy to use for encoding (b/11536167)",
- "os": {
- "type": "android"
- },
- "features": [
- "accelerated_video_encode"
- ]
- },
- {
- "id": 83,
- "description": "Samsung Galaxy NOTE is too buggy to use for video decoding",
- "cr_bugs": [308721],
- "os": {
- "type": "android",
- "version": {
- "op": "<",
- "value": "4.4"
- }
- },
- "machine_model_name": ["GT-.*"],
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 85,
- "description": "Samsung Galaxy S4 is too buggy to use for video decoding",
- "cr_bugs": [329072],
- "os": {
- "type": "android",
- "version": {
- "op": "<",
- "value": "4.4"
- }
- },
- "machine_model_name": ["SCH-.*"],
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 86,
- "description": "Intel Graphics Media Accelerator 3150 causes the GPU process to hang running WebGL",
- "cr_bugs": [305431],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "device_id": ["0xa011"],
- "features": [
- "webgl"
- ]
- },
- {
- "id": 87,
- "description": "Accelerated video decode on Intel driver 10.18.10.3308 is incompatible with the GPU sandbox",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "driver_version": {
- "op": "=",
- "value": "10.18.10.3308"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 88,
- "description": "Accelerated video decode on AMD driver 13.152.1.8000 is incompatible with the GPU sandbox",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x1002",
- "driver_version": {
- "op": "=",
- "value": "13.152.1.8000"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 89,
- "description": "Accelerated video decode interferes with GPU sandbox on certain AMD drivers",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x1002",
- "driver_version": {
- "op": "between",
- "value": "8.810.4.5000",
- "value2": "8.970.100.1100"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 90,
- "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "between",
- "value": "8.17.12.5729",
- "value2": "8.17.12.8026"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 91,
- "description": "Accelerated video decode interferes with GPU sandbox on certain NVIDIA drivers",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x10de",
- "driver_version": {
- "op": "between",
- "value": "9.18.13.783",
- "value2": "9.18.13.1090"
- },
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 92,
- "description": "Accelerated video decode does not work with the discrete GPU on AMD switchables",
- "cr_bugs": [298968],
- "os": {
- "type": "win"
- },
- "multi_gpu_style": "amd_switchable_discrete",
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 93,
- "description": "GLX indirect rendering (X remoting) is not supported",
- "cr_bugs": [72373],
- "os": {
- "type": "linux"
- },
- "direct_rendering": false,
- "features": [
- "all"
- ]
- },
- {
- "id": 94,
- "description": "Intel driver version 8.15.10.1749 causes GPU process hangs.",
- "cr_bugs": [350566],
- "os": {
- "type": "win"
- },
- "vendor_id": "0x8086",
- "driver_version": {
- "op": "=",
- "value": "8.15.10.1749"
- },
- "features": [
- "all"
- ]
- },
- {
- "id": 95,
- "description": "AMD driver version 13.101 is unstable on linux.",
- "cr_bugs": [363378],
- "os": {
- "type": "linux"
- },
- "vendor_id": "0x1002",
- "driver_vendor": ".*AMD.*",
- "driver_version": {
- "op": "=",
- "value": "13.101"
- },
- "features": [
- "all"
- ]
- },
- {
- "id": 96,
- "description": "GPU rasterization is whitelisted on select devices on Android",
- "cr_bugs": [362779],
- "os": {
- "type": "android"
- },
- "exceptions": [
- {
- "machine_model_name": ["Nexus 4", "Nexus 5", "Nexus 7",
- "XT1049", "XT1050", "XT1052", "XT1053",
- "XT1055", "XT1056", "XT1058", "XT1060",
- "HTC One",
- "C5303", "C6603", "C6903",
- "GT-I9195",
- "GT-I9505",
- "SAMSUNG-SCH-I337", "SCH-I545", "SGH-M919",
- "SM-N900", "SM-N9005", "SPH-L720",
- "XT907", "XT1032", "XT1033", "XT1080"]
- },
- {
- "os": {
- "type": "android",
- "version": {
- "op": ">=",
- "value": "4.4.99"
- }
- }
- },
- {
- "os": {
- "type": "android",
- "version": {
- "op": ">=",
- "value": "4.4"
- }
- },
- "gl_type": "gles",
- "gl_version": {
- "op": ">=",
- "value": "3.0"
- }
- }
- ],
- "features": [
- "gpu_rasterization"
- ]
- },
- {
- "id": 99,
- "description": "GPU rasterization is blacklisted on non-Android",
- "cr_bugs": [362779],
- "exceptions": [
- {
- "os": {
- "type": "android"
- }
- }
- ],
- "features": [
- "gpu_rasterization"
- ]
- },
- {
- "id": 100,
- "description": "GPU rasterization is blacklisted on Nexus 10",
- "cr_bugs": [407144],
- "gl_renderer": ".*Mali-T604.*",
- "features": [
- "gpu_rasterization"
- ]
- },
- {
- "id": 101,
- "description": "Samsung Galaxy Tab is too buggy to use for video decoding",
- "cr_bugs": [408353],
- "os": {
- "type": "android",
- "version": {
- "op": "<",
- "value": "4.4"
- }
- },
- "machine_model_name": ["SM-.*"],
- "features": [
- "accelerated_video_decode"
- ]
- },
- {
- "id": 102,
- "description": "Accelerated 2D canvas and Ganesh broken on Galaxy Tab 2",
- "cr_bugs": [416910],
- "os": {
- "type": "android"
- },
- "gl_renderer": "PowerVR SGX 540",
- "features": [
- "accelerated_2d_canvas",
- "gpu_rasterization"
- ]
- },
- {
- "id": 103,
- "description": "Intel GM965/GL960 crash often on Mac OS 10.6",
- "cr_bugs": [421641],
- "os": {
- "type": "macosx",
- "version": {
- "op": "=",
- "value": "10.6"
- }
- },
- "vendor_id": "0x8086",
- "device_id": ["0x2a02"],
- "features": [
- "all"
- ]
- },
- {
- "id": 104,
- "description": "GPU raster broken on PowerVR Rogue",
- "cr_bugs": [436331],
- "os": {
- "type": "android",
- "version": {
- "op": "<",
- "value": "5.0"
- }
- },
- "gl_renderer": "PowerVR Rogue.*",
- "features": [
- "accelerated_2d_canvas",
- "gpu_rasterization"
- ]
- }
- ]
-}
-
-); // LONG_STRING_CONST macro
-
-} // namespace gpu
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-external_exclude_gpu_efl_sources = [
- "gpu_driver_bug_list_json.cc",
- "gpu_info_collector_x11.cc",
- "software_rendering_list_json.cc",
-]
+external_exclude_gpu_efl_sources = []
if (!is_tizen) {
external_exclude_gpu_efl_sources += [ "gpu_info_collector_linux.cc" ]
}
external_gpu_efl_sources = [
- "//tizen_src/chromium_impl/gpu/config/gpu_driver_bug_list_json_efl.cc",
"//tizen_src/chromium_impl/gpu/config/gpu_info_collector_efl.cc",
"//tizen_src/chromium_impl/gpu/config/scoped_restore_non_owned_egl_context.cc",
"//tizen_src/chromium_impl/gpu/config/scoped_restore_non_owned_egl_context.h",
external_exclude_webkit_core_rendering_sources = []
}
external_webkit_core_rendering_sources = [
- "//tizen_src/chromium_impl/third_party/blink/renderer/core/rendering/RenderThemeChromiumTizen.cpp",
- "//tizen_src/chromium_impl/third_party/blink/renderer/core/rendering/RenderThemeChromiumTizen.h",
+ "//tizen_src/chromium_impl/third_party/WebKit/Source/core/rendering/RenderThemeChromiumTizen.cpp",
+ "//tizen_src/chromium_impl/third_party/WebKit/Source/core/rendering/RenderThemeChromiumTizen.h",
]
# For //third_party/blink/renderer/core:core_generated target
#if !defined(EWK_BRINGUP) // FIXME: m67 bringup
// FIXME: EWK_BRINGUP definition should be removed.
#include "TizenUserAgentStyleSheets.h"
-#endif // !defined(EWK_BRINGUP)
+#endif
namespace blink {
-RefPtr<LayoutTheme> RenderThemeChromiumTizen::create() {
- return new RenderThemeChromiumTizen();
+scoped_refptr<LayoutTheme> RenderThemeChromiumTizen::Create() {
+ return base::AdoptRef(new RenderThemeChromiumTizen());
}
-#if !defined(EWK_BRINGUP) // FIXME: m67 bringup
-// FIXME: EWK_BRINGUP definition should be removed.
-LayoutTheme& LayoutTheme::nativeTheme() {
- DEFINE_STATIC_REF(LayoutTheme, renderTheme,
- (RenderThemeChromiumTizen::create()));
- return *renderTheme;
+LayoutTheme& LayoutTheme::NativeTheme() {
+ DEFINE_STATIC_REF(LayoutTheme, layout_theme,
+ (RenderThemeChromiumTizen::Create()));
+ return *layout_theme;
}
-#endif // !defined(EWK_BRINGUP)
RenderThemeChromiumTizen::~RenderThemeChromiumTizen() {}
-String RenderThemeChromiumTizen::ExtraDefaultStyleSheet() {
#if !defined(EWK_BRINGUP) // FIXME: m67 bringup
- // FIXME: EWK_BRINGUP definition should be removed.
+// FIXME: EWK_BRINGUP definition should be removed.
+String RenderThemeChromiumTizen::ExtraDefaultStyleSheet() {
return LayoutThemeDefault::extraDefaultStyleSheet() +
- String(themeChromiumTizenCss, sizeof(themeChromiumTizenCss))
-#endif // !defined(EWK_BRINGUP)
+ String(themeChromiumTizenCss, sizeof(themeChromiumTizenCss));
}
+#endif
} // namespace blink
#ifndef RenderThemeChromiumTizen_h
#define RenderThemeChromiumTizen_h
-#include "core/layout/LayoutThemeDefault.h"
+#include "third_party/blink/renderer/core/layout/layout_theme_default.h"
namespace blink {
class RenderThemeChromiumTizen final : public LayoutThemeDefault {
public:
- static RefPtr<LayoutTheme> create();
+ static scoped_refptr<LayoutTheme> Create();
+#if !defined(EWK_BRINGUP) // FIXME: m67 bringup
+ // FIXME: EWK_BRINGUP definition should be removed.
String ExtraDefaultStyleSheet() override;
-
+#endif
bool DelegatesMenuListRendering() const override { return true; }
Color PlatformTapHighlightColor() const override {
"//tizen_src/chromium_impl/ui/gl/gl_shared_context_efl.cc",
"//tizen_src/chromium_impl/ui/gl/gl_current_context_efl.cc",
]
-if (is_tizen) {
- external_ui_gl_sources += [
- #"//tizen_src/chromium_impl/ui/gl/gl_image_efl_pixmap.cc",
- #"//tizen_src/chromium_impl/ui/gl/gl_image_efl_pixmap.h",
- ]
- if (!wayland_bringup) {
- external_ui_gl_sources += [
- # "//tizen_src/chromium_impl/ui/gl/efl_pixmap.cc",
- # "//tizen_src/chromium_impl/ui/gl/efl_pixmap.h",
- ]
- }
-}
# For //ui/events/platform/x11 target
external_exclude_ui_x11_event_sources = []
"renderer/content_renderer_client_efl.h",
"renderer/editorclient_agent.cc",
"renderer/editorclient_agent.h",
- "renderer/plugins/plugin_placeholder_efl.cc",
- "renderer/plugins/plugin_placeholder_efl.h",
"renderer/print_web_view_helper_efl.cc",
"renderer/print_web_view_helper_efl.h",
"renderer/render_frame_observer_efl.cc",
"wrt/wrtwidget.cc",
"wrt/wrtwidget.h",
]
+
+ # FIXME: ewk_bringup definition should be removed.
+ if (!ewk_bringup) {
+ sources += [
+ "renderer/plugins/plugin_placeholder_efl.cc",
+ "renderer/plugins/plugin_placeholder_efl.h",
+ ]
+ }
+
sources -= exclude_source_set
# FIXME: Followings are guarded just for bringup.
content::RenderFrame* render_frame,
const blink::WebPluginParams& params,
blink::WebPlugin** plugin) {
+#if defined(EWK_BRINGUP) // FIXME: m67 bringup
+ return false;
+#else
PluginPlaceholderEfl* placeholder =
PluginPlaceholderEfl::CreateMissingPlugin(render_frame, params);
if (!placeholder)
return false;
*plugin = placeholder->plugin();
return true;
+#endif
}
void ContentRendererClientEfl::WillSendRequest(
public_configs += [ "//tizen_src/build:ecore-wayland-public" ]
}
ldflags += [ "-ldlog" ]
- ldflags += [ "-ldbus-glib-1" ]
libs += [ "dlog" ]
- libs += [ "dbus-glib-1" ]
}
}
"//ui/gfx/geometry",
]
+ if (is_tizen) {
+ set_sources_assignment_filter([])
+ sources += [
+ "device_util_linux.cc",
+ "device_util_linux.h",
+ ]
+ set_sources_assignment_filter(sources_assignment_filter)
+ }
+
if (is_android) {
deps += [ ":ui_events_devices_jni_headers" ]
}
]
jni_package = "events/devices"
}
-
- if (is_tizen) {
- set_sources_assignment_filter([])
- sources += [
- "device_util_linux.cc",
- "device_util_linux.h",
- ]
- set_sources_assignment_filter(sources_assignment_filter)
- }
}
"gl_surface_egl.h",
]
- if (is_linux || (is_win && use_ozone)) {
+ if (is_linux || is_tizen || (is_win && use_ozone)) {
sources += [
"gl_image_native_pixmap.cc",
"gl_image_native_pixmap.h",
v8_path_prefix + ":toolchain",
]
-if (is_debug && !v8_optimized_debug) {
+if (is_debug && !v8_optimized_debug && !is_tizen) {
v8_remove_configs += [ "//build/config/compiler:default_optimization" ]
v8_add_configs += [ "//build/config/compiler:no_optimize" ]
} else {
# TODO(crbug.com/621335) Rework this so that we don't have the confusion
# between "optimize_speed" and "optimize_max".
- if (is_posix && !is_android && !using_sanitizer) {
+ if (is_posix && !is_android && !using_sanitizer && !is_tizen) {
v8_add_configs += [ "//build/config/compiler:optimize_speed" ]
} else {
v8_add_configs += [ "//build/config/compiler:optimize_max" ]