Blame SOURCES/corefx-optflags-support.patch

133fb8
diff --git a/src/Native/Unix/CMakeLists.txt b/src/Native/Unix/CMakeLists.txt
133fb8
index 7d804a1e54..717c2718d7 100644
133fb8
--- a/src/Native/Unix/CMakeLists.txt
133fb8
+++ b/src/Native/Unix/CMakeLists.txt
133fb8
@@ -25,7 +25,6 @@ add_compile_options(-fPIC)
133fb8
 add_compile_options(-I${CMAKE_CURRENT_SOURCE_DIR}/Common)
133fb8
 add_compile_options(-I${CMAKE_CURRENT_BINARY_DIR}/Common)
133fb8
 add_compile_options(-g)
133fb8
-add_compile_options(-Werror)
133fb8
 if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5)
133fb8
     add_compile_options(-Wno-unreachable-code)
133fb8
 endif ()
133fb8
diff --git a/src/Native/Unix/System.Security.Cryptography.Native/configure.cmake b/src/Native/Unix/System.Security.Cryptography.Native/configure.cmake
133fb8
index 809ffe318e..de55150e36 100644
133fb8
--- a/src/Native/Unix/System.Security.Cryptography.Native/configure.cmake
133fb8
+++ b/src/Native/Unix/System.Security.Cryptography.Native/configure.cmake
133fb8
@@ -3,6 +3,11 @@ include(CheckFunctionExists)
c3bec3
 include(CheckLibraryExists)
c3bec3
 include(CheckFunctionExists)
133fb8
 
133fb8
+set (PREVIOUS_CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
7e72bd
+set (CMAKE_CXX_FLAGS "-D_GNU_SOURCE")
133fb8
+set (PREVIOUS_CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
7e72bd
+set (CMAKE_C_FLAGS "-D_GNU_SOURCE")
133fb8
+
c3bec3
 set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
c3bec3
 set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY} ${OPENSSL_SSL_LIBRARY})
c3bec3
 
133fb8
@@ -17,6 +22,9 @@ check_function_exists(
133fb8
 	SSL_get0_alpn_selected
133fb8
 	HAVE_OPENSSL_ALPN)
133fb8
 
133fb8
+set (CMAKE_CXX_FLAGS "${PREVIOUS_CMAKE_CXX_FLAGS}")
133fb8
+set (CMAKE_C_FLAGS "${PREVIOUS_CMAKE_C_FLAGS}")
133fb8
+
133fb8
 configure_file(
133fb8
     ${CMAKE_CURRENT_SOURCE_DIR}/pal_crypto_config.h.in
133fb8
     ${CMAKE_CURRENT_BINARY_DIR}/pal_crypto_config.h)
133fb8
diff --git a/src/Native/Unix/configure.cmake b/src/Native/Unix/configure.cmake
133fb8
index f4a30ad6cb..cf8eaa73d3 100644
133fb8
--- a/src/Native/Unix/configure.cmake
133fb8
+++ b/src/Native/Unix/configure.cmake
133fb8
@@ -27,6 +27,11 @@ else ()
133fb8
     message(FATAL_ERROR "Unknown platform.  Cannot define PAL_UNIX_NAME, used by RuntimeInformation.")
133fb8
 endif ()
133fb8
 
133fb8
+set (PREVIOUS_CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
7e72bd
+set (CMAKE_CXX_FLAGS "-D_GNU_SOURCE")
133fb8
+set (PREVIOUS_CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
7e72bd
+set (CMAKE_C_FLAGS "-D_GNU_SOURCE")
133fb8
+
133fb8
 # We compile with -Werror, so we need to make sure these code fragments compile without warnings.
133fb8
 # Older CMake versions (3.8) do not assign the result of their tests, causing unused-value errors
133fb8
 # which are not distinguished from the test failing. So no error for that one.
133fb8
@@ -709,6 +714,9 @@ check_c_source_compiles(
133fb8
     "
133fb8
     HAVE_IN_EXCL_UNLINK)
133fb8
 
133fb8
+set (CMAKE_CXX_FLAGS "${PREVIOUS_CMAKE_CXX_FLAGS}")
133fb8
+set (CMAKE_C_FLAGS "${PREVIOUS_CMAKE_C_FLAGS}")
133fb8
+
133fb8
 configure_file(
133fb8
     ${CMAKE_CURRENT_SOURCE_DIR}/Common/pal_config.h.in
133fb8
     ${CMAKE_CURRENT_BINARY_DIR}/Common/pal_config.h)