mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2025-12-07 09:16:48 +08:00
win64 builds use clangcl to enable optimized codepath
BUG=libyuv:685, chromium:692600 TEST=gn gen out\Release "--args=is_debug=false" ninja -C out\Release out\release\libyuv_unittest --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=999 --libyuv_flags=-1 --libyuv_cpu_info=-1 --gtest_filter=*ARGBToI420_Opt Change-Id: I12ec09ae2e9bc448252aa46b137f52916403865d Reviewed-on: https://chromium-review.googlesource.com/446667 Reviewed-by: Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
This commit is contained in:
parent
33a72f1e32
commit
bbcd785586
62
BUILD.gn
62
BUILD.gn
@ -36,7 +36,21 @@ group("default") {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static_library("libyuv") {
|
group("libyuv") {
|
||||||
|
public_configs = [ ":libyuv_config" ]
|
||||||
|
|
||||||
|
if (is_win && target_cpu == "x64") {
|
||||||
|
deps = [
|
||||||
|
":libyuv_internal(//build/toolchain/win:clang_x64)",
|
||||||
|
]
|
||||||
|
} else {
|
||||||
|
deps = [
|
||||||
|
":libyuv_internal",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static_library("libyuv_internal") {
|
||||||
sources = [
|
sources = [
|
||||||
# Headers
|
# Headers
|
||||||
"include/libyuv.h",
|
"include/libyuv.h",
|
||||||
@ -97,8 +111,7 @@ static_library("libyuv") {
|
|||||||
"source/video_common.cc",
|
"source/video_common.cc",
|
||||||
]
|
]
|
||||||
|
|
||||||
public_configs = [ ":libyuv_config" ]
|
configs += [ ":libyuv_config" ]
|
||||||
|
|
||||||
defines = []
|
defines = []
|
||||||
deps = []
|
deps = []
|
||||||
|
|
||||||
@ -119,13 +132,13 @@ static_library("libyuv") {
|
|||||||
# crbug.com/538243).
|
# crbug.com/538243).
|
||||||
if (!is_debug || is_nacl) {
|
if (!is_debug || is_nacl) {
|
||||||
configs -= [ "//build/config/compiler:default_optimization" ]
|
configs -= [ "//build/config/compiler:default_optimization" ]
|
||||||
|
|
||||||
# Enable optimize for speed (-O2) over size (-Os).
|
# Enable optimize for speed (-O2) over size (-Os).
|
||||||
configs += [ "//build/config/compiler:optimize_max" ]
|
configs += [ "//build/config/compiler:optimize_max" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
# To enable AVX2 or other cpu optimization, pass flag here
|
# To enable AVX2 or other cpu optimization, pass flag here
|
||||||
# cflags = [ "-mavx2" ]
|
# cflags = [ "-mavx2" ]
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (libyuv_use_neon) {
|
if (libyuv_use_neon) {
|
||||||
@ -148,6 +161,7 @@ if (libyuv_use_neon) {
|
|||||||
# crbug.com/538243).
|
# crbug.com/538243).
|
||||||
if (!is_debug) {
|
if (!is_debug) {
|
||||||
configs -= [ "//build/config/compiler:default_optimization" ]
|
configs -= [ "//build/config/compiler:default_optimization" ]
|
||||||
|
|
||||||
# Enable optimize for speed (-O2) over size (-Os).
|
# Enable optimize for speed (-O2) over size (-Os).
|
||||||
configs += [ "//build/config/compiler:optimize_max" ]
|
configs += [ "//build/config/compiler:optimize_max" ]
|
||||||
}
|
}
|
||||||
@ -163,9 +177,9 @@ if (libyuv_use_msa) {
|
|||||||
static_library("libyuv_msa") {
|
static_library("libyuv_msa") {
|
||||||
sources = [
|
sources = [
|
||||||
# MSA Source Files
|
# MSA Source Files
|
||||||
|
"source/rotate_msa.cc",
|
||||||
"source/row_msa.cc",
|
"source/row_msa.cc",
|
||||||
"source/scale_msa.cc",
|
"source/scale_msa.cc",
|
||||||
"source/rotate_msa.cc",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
public_configs = [ ":libyuv_config" ]
|
public_configs = [ ":libyuv_config" ]
|
||||||
@ -178,7 +192,7 @@ if (libyuv_include_tests) {
|
|||||||
cflags = [
|
cflags = [
|
||||||
# TODO(fbarchard): Fix sign and unused variable warnings.
|
# TODO(fbarchard): Fix sign and unused variable warnings.
|
||||||
"-Wno-sign-compare",
|
"-Wno-sign-compare",
|
||||||
"-Wno-unused-variable"
|
"-Wno-unused-variable",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
if (is_win) {
|
if (is_win) {
|
||||||
@ -196,12 +210,11 @@ if (libyuv_include_tests) {
|
|||||||
testonly = true
|
testonly = true
|
||||||
|
|
||||||
sources = [
|
sources = [
|
||||||
# headers
|
|
||||||
"unit_test/unit_test.h",
|
|
||||||
# sources
|
# sources
|
||||||
|
# headers
|
||||||
"unit_test/basictypes_test.cc",
|
"unit_test/basictypes_test.cc",
|
||||||
"unit_test/compare_test.cc",
|
|
||||||
"unit_test/color_test.cc",
|
"unit_test/color_test.cc",
|
||||||
|
"unit_test/compare_test.cc",
|
||||||
"unit_test/convert_test.cc",
|
"unit_test/convert_test.cc",
|
||||||
"unit_test/cpu_test.cc",
|
"unit_test/cpu_test.cc",
|
||||||
"unit_test/math_test.cc",
|
"unit_test/math_test.cc",
|
||||||
@ -211,6 +224,7 @@ if (libyuv_include_tests) {
|
|||||||
"unit_test/scale_argb_test.cc",
|
"unit_test/scale_argb_test.cc",
|
||||||
"unit_test/scale_test.cc",
|
"unit_test/scale_test.cc",
|
||||||
"unit_test/unit_test.cc",
|
"unit_test/unit_test.cc",
|
||||||
|
"unit_test/unit_test.h",
|
||||||
"unit_test/video_common_test.cc",
|
"unit_test/video_common_test.cc",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -222,7 +236,9 @@ if (libyuv_include_tests) {
|
|||||||
|
|
||||||
configs += [ ":libyuv_unittest_warnings_config" ]
|
configs += [ ":libyuv_unittest_warnings_config" ]
|
||||||
|
|
||||||
public_deps = [ "//testing/gtest" ]
|
public_deps = [
|
||||||
|
"//testing/gtest",
|
||||||
|
]
|
||||||
public_configs = [ ":libyuv_unittest_config" ]
|
public_configs = [ ":libyuv_unittest_config" ]
|
||||||
|
|
||||||
defines = []
|
defines = []
|
||||||
@ -263,9 +279,11 @@ if (libyuv_include_tests) {
|
|||||||
executable("compare") {
|
executable("compare") {
|
||||||
sources = [
|
sources = [
|
||||||
# sources
|
# sources
|
||||||
"util/compare.cc"
|
"util/compare.cc",
|
||||||
|
]
|
||||||
|
deps = [
|
||||||
|
":libyuv",
|
||||||
]
|
]
|
||||||
deps = [ ":libyuv" ]
|
|
||||||
if (is_linux) {
|
if (is_linux) {
|
||||||
cflags = [ "-fexceptions" ]
|
cflags = [ "-fexceptions" ]
|
||||||
}
|
}
|
||||||
@ -274,9 +292,11 @@ if (libyuv_include_tests) {
|
|||||||
executable("convert") {
|
executable("convert") {
|
||||||
sources = [
|
sources = [
|
||||||
# sources
|
# sources
|
||||||
"util/convert.cc"
|
"util/convert.cc",
|
||||||
|
]
|
||||||
|
deps = [
|
||||||
|
":libyuv",
|
||||||
]
|
]
|
||||||
deps = [ ":libyuv" ]
|
|
||||||
if (is_linux) {
|
if (is_linux) {
|
||||||
cflags = [ "-fexceptions" ]
|
cflags = [ "-fexceptions" ]
|
||||||
}
|
}
|
||||||
@ -285,11 +305,13 @@ if (libyuv_include_tests) {
|
|||||||
executable("psnr") {
|
executable("psnr") {
|
||||||
sources = [
|
sources = [
|
||||||
# sources
|
# sources
|
||||||
"util/psnr_main.cc",
|
|
||||||
"util/psnr.cc",
|
"util/psnr.cc",
|
||||||
"util/ssim.cc"
|
"util/psnr_main.cc",
|
||||||
|
"util/ssim.cc",
|
||||||
|
]
|
||||||
|
deps = [
|
||||||
|
":libyuv",
|
||||||
]
|
]
|
||||||
deps = [ ":libyuv" ]
|
|
||||||
|
|
||||||
if (!is_ios && !libyuv_disable_jpeg) {
|
if (!is_ios && !libyuv_disable_jpeg) {
|
||||||
defines = [ "HAVE_JPEG" ]
|
defines = [ "HAVE_JPEG" ]
|
||||||
@ -299,8 +321,10 @@ if (libyuv_include_tests) {
|
|||||||
executable("cpuid") {
|
executable("cpuid") {
|
||||||
sources = [
|
sources = [
|
||||||
# sources
|
# sources
|
||||||
"util/cpuid.c"
|
"util/cpuid.c",
|
||||||
|
]
|
||||||
|
deps = [
|
||||||
|
":libyuv",
|
||||||
]
|
]
|
||||||
deps = [ ":libyuv" ]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user