aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2016-10-12 16:25:27 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-10-12 20:46:20 +0000
commitcc300a15d49f6c62c32935b40f5b86d681aff845 (patch)
treee9625f941f30f121621703d584106f51bf459857
parentc9a9ca934b936512a486674cfe06fd1c132b4723 (diff)
GN/Win: flesh out compiler flags.
This should turn on the basics: optimization, debug symbols, disabled RTTI. Release builds compile monobench, and cl.exe isn't happy with 1.0/0.0 there, so I swapped that into infinity(). Also, gn format I skipped last time. CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3252 Change-Id: I8718d583e3fba4496b789eb25971462b972a5425 Reviewed-on: https://skia-review.googlesource.com/3252 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
-rw-r--r--gn/BUILD.gn16
-rw-r--r--tools/monobench.cpp4
2 files changed, 16 insertions, 4 deletions
diff --git a/gn/BUILD.gn b/gn/BUILD.gn
index 2ced468396..b09e1846a4 100644
--- a/gn/BUILD.gn
+++ b/gn/BUILD.gn
@@ -55,10 +55,12 @@ config("default") {
]
include_dirs = [
"$windk/VC/include",
+
# For local builds.
"$windk/../Windows Kits/10/Include/10.0.10150.0/ucrt",
"$windk/../Windows Kits/8.1/Include/shared",
"$windk/../Windows Kits/8.1/Include/um",
+
# For builds using win_toolchain asset.
"$windk/win_sdk/Include/10.0.10586.0/shared",
"$windk/win_sdk/Include/10.0.10586.0/ucrt",
@@ -66,9 +68,11 @@ config("default") {
]
lib_dirs = [
"$windk/VC/lib/amd64",
+
# For local builds.
"$windk/../Windows Kits/10/Lib/10.0.10150.0/ucrt/x64",
"$windk/../Windows Kits/8.1/Lib/winv6.3/um/x64",
+
# For builds using win_toolchain asset.
"$windk/win_sdk/Lib/10.0.10586.0/ucrt/x64",
"$windk/win_sdk/Lib/10.0.10586.0/um/x64",
@@ -276,21 +280,27 @@ config("debug_symbols") {
# to Android devices. -gline-tables-only is a lot slimmer.
if (is_android) {
cflags = [ "-gline-tables-only" ]
- } else if (!is_win) {
+ } else if (is_win) {
+ cflags = [ "/Zi" ]
+ } else {
cflags = [ "-g" ]
}
}
config("no_rtti") {
if (sanitize != "ASAN") { # -fsanitize=vptr requires RTTI
- if (!is_win) {
+ if (is_win) {
+ cflags_cc = [ "/GR-" ]
+ } else {
cflags_cc = [ "-fno-rtti" ]
}
}
}
config("release") {
- if (!is_win) {
+ if (is_win) {
+ cflags = [ "/O2" ]
+ } else {
cflags = [ "-O3" ]
}
defines = [ "NDEBUG" ]
diff --git a/tools/monobench.cpp b/tools/monobench.cpp
index 756e24f101..a9dac37254 100644
--- a/tools/monobench.cpp
+++ b/tools/monobench.cpp
@@ -10,6 +10,7 @@
#include "SkTaskGroup.h"
#include <algorithm>
#include <chrono>
+#include <limits>
#include <regex>
#include <stdio.h>
#include <stdlib.h>
@@ -42,7 +43,8 @@ int main(int argc, char** argv) {
if (std::regex_search(name, pattern) &&
bench->isSuitableFor(Benchmark::kNonRendering_Backend)) {
bench->delayedSetup();
- benches.emplace_back(Bench{std::move(bench), name, ns{1.0/0.0}});
+ benches.emplace_back(Bench{std::move(bench), name,
+ ns{std::numeric_limits<double>::infinity()}});
}
}