From 969bbb65fc042d05c0b5322ce5bbbe6a2a7739ca Mon Sep 17 00:00:00 2001
From: David Li
Date: Mon, 12 Oct 2020 10:24:54 -0400
Subject: [PATCH] ARROW-10286: [C++][FlightRPC] Make CMake output less
confusing
---
cpp/src/arrow/flight/CMakeLists.txt | 57 +++++++++++++++++------------
1 file changed, 33 insertions(+), 24 deletions(-)
diff --git a/cpp/src/arrow/flight/CMakeLists.txt b/cpp/src/arrow/flight/CMakeLists.txt
index 1a1ebe91c8c3..da152367b2aa 100644
--- a/cpp/src/arrow/flight/CMakeLists.txt
+++ b/cpp/src/arrow/flight/CMakeLists.txt
@@ -69,34 +69,43 @@ string(REPLACE "-Werror " " " CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
# Probe the version of gRPC being used to see if it supports disabling server
# verification when using TLS.
-message(STATUS "Checking support for TlsCredentialsOptions...")
-get_property(CURRENT_INCLUDE_DIRECTORIES
- DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- PROPERTY INCLUDE_DIRECTORIES)
-try_compile(HAS_GRPC_132 ${CMAKE_CURRENT_BINARY_DIR}/try_compile SOURCES
- "${CMAKE_CURRENT_SOURCE_DIR}/try_compile/check_tls_opts_132.cc"
- CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CURRENT_INCLUDE_DIRECTORIES}"
- LINK_LIBRARIES gRPC::grpc
- OUTPUT_VARIABLE TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT CXX_STANDARD 11)
-
-if(HAS_GRPC_132)
- message(STATUS "TlsCredentialsOptions found in grpc::experimental.")
- add_definitions(-DGRPC_NAMESPACE_FOR_TLS_CREDENTIALS_OPTIONS=grpc::experimental)
-else()
- message(STATUS "TlsCredentialsOptions not found in grpc::experimental.")
- message(STATUS "Build output: ${TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT}")
-
- try_compile(HAS_GRPC_127 ${CMAKE_CURRENT_BINARY_DIR}/try_compile SOURCES
- "${CMAKE_CURRENT_SOURCE_DIR}/try_compile/check_tls_opts_127.cc"
+if(NOT DEFINED HAS_GRPC_132)
+ message(STATUS "Checking support for TlsCredentialsOptions...")
+ get_property(CURRENT_INCLUDE_DIRECTORIES
+ DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ PROPERTY INCLUDE_DIRECTORIES)
+ try_compile(HAS_GRPC_132 ${CMAKE_CURRENT_BINARY_DIR}/try_compile SOURCES
+ "${CMAKE_CURRENT_SOURCE_DIR}/try_compile/check_tls_opts_132.cc"
CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CURRENT_INCLUDE_DIRECTORIES}"
+ LINK_LIBRARIES gRPC::grpc
OUTPUT_VARIABLE TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT CXX_STANDARD 11)
- if(HAS_GRPC_127)
- message(STATUS "TlsCredentialsOptions found in grpc_impl::experimental.")
- add_definitions(-DGRPC_NAMESPACE_FOR_TLS_CREDENTIALS_OPTIONS=grpc_impl::experimental)
+ if(HAS_GRPC_132)
+ message(STATUS "TlsCredentialsOptions found in grpc::experimental.")
+ add_definitions(-DGRPC_NAMESPACE_FOR_TLS_CREDENTIALS_OPTIONS=grpc::experimental)
else()
- message(STATUS "TlsCredentialsOptions not found in grpc_impl::experimental.")
- message(STATUS "Build output: ${TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT}")
+ message(STATUS "TlsCredentialsOptions not found in grpc::experimental.")
+ message(DEBUG "Build output:")
+ list(APPEND CMAKE_MESSAGE_INDENT "check_tls_opts_132.cc: ")
+ message(DEBUG ${TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT})
+ list(POP_BACK CMAKE_MESSAGE_INDENT)
+
+ try_compile(HAS_GRPC_127 ${CMAKE_CURRENT_BINARY_DIR}/try_compile SOURCES
+ "${CMAKE_CURRENT_SOURCE_DIR}/try_compile/check_tls_opts_127.cc"
+ CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${CURRENT_INCLUDE_DIRECTORIES}"
+ OUTPUT_VARIABLE TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT CXX_STANDARD 11)
+
+ if(HAS_GRPC_127)
+ message(STATUS "TlsCredentialsOptions found in grpc_impl::experimental.")
+ add_definitions(
+ -DGRPC_NAMESPACE_FOR_TLS_CREDENTIALS_OPTIONS=grpc_impl::experimental)
+ else()
+ message(STATUS "TlsCredentialsOptions not found in grpc_impl::experimental.")
+ message(DEBUG "Build output:")
+ list(APPEND CMAKE_MESSAGE_INDENT "check_tls_opts_127.cc: ")
+ message(DEBUG ${TSL_CREDENTIALS_OPTIONS_CHECK_OUTPUT})
+ list(POP_BACK CMAKE_MESSAGE_INDENT)
+ endif()
endif()
endif()