aboutsummaryrefslogtreecommitdiffhomepage
path: root/BUILD
diff options
context:
space:
mode:
authorGravatar Yun Peng <pcloudy@google.com>2017-05-31 14:01:23 +0200
committerGravatar Yun Peng <pcloudy@google.com>2017-05-31 14:01:30 +0200
commit0b059a3d8a8f8aa40dde7bea55edca4ec5dfea66 (patch)
tree5fc86598005882f7ce7a557d8206551615feffbd /BUILD
parentd6470abef1ca76c40e6da3b4445b7c32f1d0e2e3 (diff)
Refactor cc options in BUILD file for Windows
Don't put gcc warnings options in copts, so that protobuf is able to build by MSVC toolchain without python wrappers.
Diffstat (limited to 'BUILD')
-rw-r--r--BUILD44
1 files changed, 32 insertions, 12 deletions
diff --git a/BUILD b/BUILD
index ccfbe36c..1f467cca 100644
--- a/BUILD
+++ b/BUILD
@@ -8,15 +8,35 @@ exports_files(["LICENSE"])
# Protobuf Runtime Library
################################################################################
-COPTS = [
- "-DHAVE_PTHREAD",
- "-Wall",
- "-Wwrite-strings",
- "-Woverloaded-virtual",
- "-Wno-sign-compare",
- "-Wno-unused-function",
+WIN_COPTS = [
+ "/DHAVE_PTHREAD",
+ "/wd4018", # -Wno-sign-compare
+ "/wd4514", # -Wno-unused-function
]
+COPTS = select({
+ ":windows" : WIN_COPTS,
+ ":windows_msvc" : WIN_COPTS,
+ "//conditions:default": [
+ "-DHAVE_PTHREAD",
+ "-Wall",
+ "-Wwrite-strings",
+ "-Woverloaded-virtual",
+ "-Wno-sign-compare",
+ "-Wno-unused-function",
+ ],
+})
+
+config_setting(
+ name = "windows",
+ values = { "cpu": "x64_windows" },
+)
+
+config_setting(
+ name = "windows_msvc",
+ values = { "cpu": "x64_windows_msvc" },
+)
+
config_setting(
name = "android",
values = {
@@ -60,7 +80,7 @@ config_setting(
},
)
-IOS_ARM_COPTS = COPTS + [
+IOS_ARM_COPTS = [
"-DOS_IOS",
"-miphoneos-version-min=7.0",
"-arch armv7",
@@ -103,8 +123,8 @@ cc_library(
":ios_armv7": IOS_ARM_COPTS,
":ios_armv7s": IOS_ARM_COPTS,
":ios_arm64": IOS_ARM_COPTS,
- "//conditions:default": COPTS,
- }),
+ "//conditions:default": [],
+ }) + COPTS,
includes = ["src/"],
linkopts = LINK_OPTS,
visibility = ["//visibility:public"],
@@ -174,8 +194,8 @@ cc_library(
":ios_armv7": IOS_ARM_COPTS,
":ios_armv7s": IOS_ARM_COPTS,
":ios_arm64": IOS_ARM_COPTS,
- "//conditions:default": COPTS,
- }),
+ "//conditions:default": [],
+ }) + COPTS,
includes = ["src/"],
linkopts = LINK_OPTS,
visibility = ["//visibility:public"],