You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@orc.apache.org by md...@apache.org on 2018/06/03 14:34:15 UTC
orc git commit: ORC-371: [C++] Disable Libhdfspp build when Cyrus
SASL is not found
Repository: orc
Updated Branches:
refs/heads/master 113173a2e -> 665baaff4
ORC-371: [C++] Disable Libhdfspp build when Cyrus SASL is not found
Fixes #275
Signed-off-by: Deepak Majeti <md...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/orc/repo
Commit: http://git-wip-us.apache.org/repos/asf/orc/commit/665baaff
Tree: http://git-wip-us.apache.org/repos/asf/orc/tree/665baaff
Diff: http://git-wip-us.apache.org/repos/asf/orc/diff/665baaff
Branch: refs/heads/master
Commit: 665baaff448f069a8cbb70052274948d63ea5ecf
Parents: 113173a
Author: Deepak Majeti <de...@hpe.com>
Authored: Wed May 30 17:46:08 2018 -0400
Committer: Deepak Majeti <md...@apache.org>
Committed: Sun Jun 3 10:33:41 2018 -0400
----------------------------------------------------------------------
cmake_modules/ThirdpartyToolchain.cmake | 98 +++++++++++++++-------------
1 file changed, 54 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/orc/blob/665baaff/cmake_modules/ThirdpartyToolchain.cmake
----------------------------------------------------------------------
diff --git a/cmake_modules/ThirdpartyToolchain.cmake b/cmake_modules/ThirdpartyToolchain.cmake
index 3db4a5f..539185c 100644
--- a/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cmake_modules/ThirdpartyToolchain.cmake
@@ -291,50 +291,60 @@ if(BUILD_LIBHDFSPP)
find_package(CyrusSASL)
find_package(OpenSSL)
find_package(Threads)
-
- set (LIBHDFSPP_PREFIX "${THIRDPARTY_DIR}/libhdfspp_ep-install")
- set (LIBHDFSPP_INCLUDE_DIR "${LIBHDFSPP_PREFIX}/include")
- set (LIBHDFSPP_STATIC_LIB_NAME hdfspp_static)
- set (LIBHDFSPP_STATIC_LIB "${LIBHDFSPP_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}${LIBHDFSPP_STATIC_LIB_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}")
- set (LIBHDFSPP_SRC_URL "${CMAKE_SOURCE_DIR}/c++/libs/libhdfspp/libhdfspp.tar.gz")
- set (LIBHDFSPP_CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DCMAKE_INSTALL_PREFIX=${LIBHDFSPP_PREFIX}
- -DPROTOBUF_INCLUDE_DIR=${PROTOBUF_INCLUDE_DIR}
- -DPROTOBUF_LIBRARY=${PROTOBUF_STATIC_LIB}
- -DPROTOBUF_PROTOC_LIBRARY=${PROTOC_STATIC_LIB}
- -DPROTOBUF_PROTOC_EXECUTABLE=${PROTOBUF_EXECUTABLE}
- -DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
- -DCMAKE_C_FLAGS=${EP_C_FLAGS}
- -DBUILD_SHARED_LIBS=OFF
- -DHDFSPP_LIBRARY_ONLY=TRUE
- -DBUILD_SHARED_HDFSPP=FALSE)
-
- ExternalProject_Add (libhdfspp_ep
- DEPENDS protobuf
- URL ${LIBHDFSPP_SRC_URL}
- LOG_DOWNLOAD 0
- LOG_CONFIGURE 0
- LOG_BUILD 0
- LOG_INSTALL 0
- BUILD_BYPRODUCTS "${LIBHDFSPP_STATIC_LIB}"
- CMAKE_ARGS ${LIBHDFSPP_CMAKE_ARGS})
-
- include_directories (SYSTEM ${LIBHDFSPP_INCLUDE_DIR})
-
- add_library (libhdfspp STATIC IMPORTED)
- set_target_properties (libhdfspp PROPERTIES IMPORTED_LOCATION ${LIBHDFSPP_STATIC_LIB})
- add_dependencies (libhdfspp libhdfspp_ep)
- if (INSTALL_VENDORED_LIBS)
- install(FILES "${LIBHDFSPP_STATIC_LIB}"
- DESTINATION "lib")
- endif ()
-
- set (LIBHDFSPP_LIBRARIES
- libhdfspp
- ${CYRUS_SASL_SHARED_LIB}
- ${OPENSSL_LIBRARIES}
- ${CMAKE_THREAD_LIBS_INIT})
-
+ if (CYRUS_SASL_SHARED_LIB AND OPENSSL_LIBRARIES)
+ set (LIBHDFSPP_PREFIX "${THIRDPARTY_DIR}/libhdfspp_ep-install")
+ set (LIBHDFSPP_INCLUDE_DIR "${LIBHDFSPP_PREFIX}/include")
+ set (LIBHDFSPP_STATIC_LIB_NAME hdfspp_static)
+ set (LIBHDFSPP_STATIC_LIB "${LIBHDFSPP_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}${LIBHDFSPP_STATIC_LIB_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}")
+ set (LIBHDFSPP_SRC_URL "${CMAKE_SOURCE_DIR}/c++/libs/libhdfspp/libhdfspp.tar.gz")
+ set (LIBHDFSPP_CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
+ -DCMAKE_INSTALL_PREFIX=${LIBHDFSPP_PREFIX}
+ -DPROTOBUF_INCLUDE_DIR=${PROTOBUF_INCLUDE_DIR}
+ -DPROTOBUF_LIBRARY=${PROTOBUF_STATIC_LIB}
+ -DPROTOBUF_PROTOC_LIBRARY=${PROTOC_STATIC_LIB}
+ -DPROTOBUF_PROTOC_EXECUTABLE=${PROTOBUF_EXECUTABLE}
+ -DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
+ -DCMAKE_C_FLAGS=${EP_C_FLAGS}
+ -DBUILD_SHARED_LIBS=OFF
+ -DHDFSPP_LIBRARY_ONLY=TRUE
+ -DBUILD_SHARED_HDFSPP=FALSE)
+
+ ExternalProject_Add (libhdfspp_ep
+ DEPENDS protobuf
+ URL ${LIBHDFSPP_SRC_URL}
+ LOG_DOWNLOAD 0
+ LOG_CONFIGURE 0
+ LOG_BUILD 0
+ LOG_INSTALL 0
+ BUILD_BYPRODUCTS "${LIBHDFSPP_STATIC_LIB}"
+ CMAKE_ARGS ${LIBHDFSPP_CMAKE_ARGS})
+
+ include_directories (SYSTEM ${LIBHDFSPP_INCLUDE_DIR})
+
+ add_library (libhdfspp STATIC IMPORTED)
+ set_target_properties (libhdfspp PROPERTIES IMPORTED_LOCATION ${LIBHDFSPP_STATIC_LIB})
+ add_dependencies (libhdfspp libhdfspp_ep)
+ if (INSTALL_VENDORED_LIBS)
+ install(FILES "${LIBHDFSPP_STATIC_LIB}"
+ DESTINATION "lib")
+ endif ()
+
+ set (LIBHDFSPP_LIBRARIES
+ libhdfspp
+ ${CYRUS_SASL_SHARED_LIB}
+ ${OPENSSL_LIBRARIES}
+ ${CMAKE_THREAD_LIBS_INIT})
+
+ elseif(CYRUS_SASL_SHARED_LIB)
+ message(STATUS
+ "WARNING: Libhdfs++ library was not built because the required OpenSSL library was not found")
+ elseif(OPENSSL_LIBRARIES)
+ message(STATUS
+ "WARNING: Libhdfs++ library was not built because the required CyrusSASL library was not found")
+ else ()
+ message(STATUS
+ "WARNING: Libhdfs++ library was not built because the required CyrusSASL and OpenSSL libraries were not found")
+ endif(CYRUS_SASL_SHARED_LIB AND OPENSSL_LIBRARIES)
else(ORC_CXX_HAS_THREAD_LOCAL)
message(STATUS
"WARNING: Libhdfs++ library was not built because the required feature