aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/boringssl
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/boringssl')
-rw-r--r--third_party/boringssl/add_boringssl_s390x.patch120
1 files changed, 120 insertions, 0 deletions
diff --git a/third_party/boringssl/add_boringssl_s390x.patch b/third_party/boringssl/add_boringssl_s390x.patch
index 0b41a4aa96..9a34a59a1d 100644
--- a/third_party/boringssl/add_boringssl_s390x.patch
+++ b/third_party/boringssl/add_boringssl_s390x.patch
@@ -11,3 +11,123 @@ index 7a3adfb..88012ad 100644
#else
#error "Unknown target CPU"
#endif
+diff --git a/BUILD b/BUILD
+index 6b645e61..c90b7beb 100644
+--- a/BUILD
++++ b/BUILD
+@@ -40,29 +40,46 @@ config_setting(
+ values = {"cpu": "darwin"},
+ )
+
+-boringssl_copts = [
+- # Assembler option --noexecstack adds .note.GNU-stack to each object to
+- # ensure that binaries can be built with non-executable stack.
+- "-Wa,--noexecstack",
+-
+- # This is needed on Linux systems (at least) to get rwlock in pthread.
+- "-D_XOPEN_SOURCE=700",
+-
+- # This list of warnings should match those in the top-level CMakeLists.txt.
+- "-Wall",
+- "-Werror",
+- "-Wformat=2",
+- "-Wsign-compare",
+- "-Wmissing-field-initializers",
+- "-Wwrite-strings",
+- "-Wshadow",
+- "-fno-common",
+-
+- # Modern build environments should be able to set this to use atomic
+- # operations for reference counting rather than locks. However, it's
+- # known not to work on some Android builds.
+- # "-DOPENSSL_C11_ATOMIC",
+-] + select({
++config_setting(
++ name = "windows",
++ values = {"cpu": "x64_windows"},
++ visibility = ["//visibility:public"],
++)
++
++config_setting(
++ name = "windows_msvc",
++ values = {"cpu": "x64_windows_msvc"},
++ visibility = ["//visibility:public"],
++)
++
++boringssl_copts = select({
++ ":windows": [
++ "-DWIN32_LEAN_AND_MEAN",
++ ],
++ "//conditions:default": [
++ # Assembler option --noexecstack adds .note.GNU-stack to each object to
++ # ensure that binaries can be built with non-executable stack.
++ "-Wa,--noexecstack",
++
++ # This is needed on Linux systems (at least) to get rwlock in pthread.
++ "-D_XOPEN_SOURCE=700",
++
++ # This list of warnings should match those in the top-level CMakeLists.txt.
++ "-Wall",
++ "-Werror",
++ "-Wformat=2",
++ "-Wsign-compare",
++ "-Wmissing-field-initializers",
++ "-Wwrite-strings",
++ "-Wshadow",
++ "-fno-common",
++
++ # Modern build environments should be able to set this to use atomic
++ # operations for reference counting rather than locks. However, it's
++ # known not to work on some Android builds.
++ # "-DOPENSSL_C11_ATOMIC",
++ ],
++}) + select({
+ ":linux_x86_64": [],
+ ":mac_x86_64": [],
+ "//conditions:default": ["-DOPENSSL_NO_ASM"],
+@@ -75,18 +92,26 @@ crypto_sources_asm = select({
+ })
+
+ # For C targets only (not C++), compile with C11 support.
+-boringssl_copts_c11 = boringssl_copts + [
+- "-std=c11",
+- "-Wmissing-prototypes",
+- "-Wold-style-definition",
+- "-Wstrict-prototypes",
+-]
++boringssl_copts_c11 = boringssl_copts + select({
++ ":windows": [],
++ ":windows_msvc": [],
++ "//conditions:default": [
++ "-std=c11",
++ "-Wmissing-prototypes",
++ "-Wold-style-definition",
++ "-Wstrict-prototypes",
++ ],
++})
+
+ # For C targets only (not C++), compile with C11 support.
+-boringssl_copts_cxx = boringssl_copts + [
+- "-std=c++11",
+- "-Wmissing-declarations",
+-]
++boringssl_copts_cxx = boringssl_copts + select({
++ ":windows": [],
++ ":windows_msvc": [],
++ "//conditions:default": [
++ "-std=c++11",
++ "-Wmissing-declarations",
++ ],
++})
+
+ cc_library(
+ name = "crypto",
+@@ -96,6 +121,8 @@ cc_library(
+ includes = ["src/include"],
+ linkopts = select({
+ ":mac_x86_64": [],
++ ":windows": [],
++ ":windows_msvc": [],
+ "//conditions:default": ["-lpthread"],
+ }),
+ visibility = ["//visibility:public"],