@@ -4617,71 +4617,18 @@ function(build_orc)
46174617
46184618 message (STATUS "Building Apache ORC from source" )
46194619
4620- if (LZ4_VENDORED)
4621- set (ORC_LZ4_TARGET lz4_static)
4622- set (ORC_LZ4_ROOT "${lz4_SOURCE_DIR } " )
4623- set (ORC_LZ4_INCLUDE_DIR "${lz4_SOURCE_DIR } /lib" )
4624- else ()
4625- set (ORC_LZ4_TARGET LZ4::lz4)
4626- get_target_property (ORC_LZ4_INCLUDE_DIR ${ORC_LZ4_TARGET}
4627- INTERFACE_INCLUDE_DIRECTORIES )
4628- get_filename_component (ORC_LZ4_ROOT "${ORC_LZ4_INCLUDE_DIR} " DIRECTORY )
4629- endif ()
4630-
46314620 if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.29)
46324621 fetchcontent_declare (orc
46334622 ${FC_DECLARE_COMMON_OPTIONS}
4634- URL ${ORC_SOURCE_URL}
4635- URL_HASH "SHA256=${ARROW_ORC_BUILD_SHA256_CHECKSUM} " )
4623+ GIT_REPOSITORY https://github.com/wgtmac/orc.git
4624+ GIT_TAG 315604624b20d540ca00ba87c971bb16dfc1027d
4625+ # SOURCE_DIR "/Users/gangwu/Projects/orc"
4626+ # URL ${ORC_SOURCE_URL}
4627+ # URL_HASH "SHA256=${ARROW_ORC_BUILD_SHA256_CHECKSUM}"
4628+ )
46364629 prepare_fetchcontent ()
46374630
46384631 set (CMAKE_UNITY_BUILD FALSE )
4639-
4640- set (ORC_PREFER_STATIC_LZ4 OFF )
4641- set (LZ4_HOME "${ORC_LZ4_ROOT} " )
4642- set (LZ4_INCLUDE_DIR "${ORC_LZ4_INCLUDE_DIR} " )
4643- set (LZ4_LIBRARY ${ORC_LZ4_TARGET} )
4644-
4645- set (ORC_PREFER_STATIC_PROTOBUF OFF )
4646- get_target_property (PROTOBUF_INCLUDE_DIR ${ARROW_PROTOBUF_LIBPROTOBUF}
4647- INTERFACE_INCLUDE_DIRECTORIES )
4648- get_filename_component (Protobuf_ROOT "${PROTOBUF_INCLUDE_DIR} " DIRECTORY )
4649- set (PROTOBUF_HOME ${Protobuf_ROOT} )
4650- # ORC uses this.
4651- if (PROTOBUF_VENDORED)
4652- target_include_directories (${ARROW_PROTOBUF_LIBPROTOC}
4653- INTERFACE "${PROTOBUF_INCLUDE_DIR} " )
4654- endif ()
4655- set (PROTOBUF_EXECUTABLE ${ARROW_PROTOBUF_PROTOC} )
4656- set (PROTOBUF_LIBRARY ${ARROW_PROTOBUF_LIBPROTOBUF} )
4657- set (PROTOC_LIBRARY ${ARROW_PROTOBUF_LIBPROTOC} )
4658-
4659- set (ORC_PREFER_STATIC_SNAPPY OFF )
4660- get_target_property (SNAPPY_INCLUDE_DIR ${Snappy_TARGET} INTERFACE_INCLUDE_DIRECTORIES )
4661- get_filename_component (Snappy_ROOT "${SNAPPY_INCLUDE_DIR} " DIRECTORY )
4662- set (SNAPPY_HOME ${Snappy_ROOT} )
4663- set (SNAPPY_LIBRARY ${Snappy_TARGET} )
4664-
4665- set (ORC_PREFER_STATIC_ZLIB OFF )
4666- get_target_property (ZLIB_INCLUDE_DIR ZLIB::ZLIB INTERFACE_INCLUDE_DIRECTORIES )
4667- get_filename_component (ZLIB_ROOT "${ZLIB_INCLUDE_DIR} " DIRECTORY )
4668- set (ZLIB_HOME ${ZLIB_ROOT} )
4669- # From CMake 3.21 onwards the set(CACHE) command does not remove
4670- # any normal variable of the same name from the current scope. We
4671- # have to manually remove the variable via unset to avoid ORC not
4672- # finding the ZLIB_LIBRARY.
4673- unset (ZLIB_LIBRARY)
4674- set (ZLIB_LIBRARY
4675- ZLIB::ZLIB
4676- CACHE STRING "" FORCE )
4677-
4678- set (ORC_PREFER_STATIC_ZSTD OFF )
4679- get_target_property (ZSTD_INCLUDE_DIR ${ARROW_ZSTD_LIBZSTD}
4680- INTERFACE_INCLUDE_DIRECTORIES )
4681- get_filename_component (ZSTD_ROOT "${ZSTD_INCLUDE_DIR} " DIRECTORY )
4682- set (ZSTD_HOME ${ZSTD_ROOT} )
4683- set (ZSTD_LIBRARY ${ARROW_ZSTD_LIBZSTD} )
4684-
46854632 set (BUILD_CPP_TESTS OFF )
46864633 set (BUILD_JAVA OFF )
46874634 set (BUILD_LIBHDFSPP OFF )
@@ -4717,6 +4664,17 @@ function(build_orc)
47174664 get_target_property (ORC_ZLIB_ROOT ZLIB::ZLIB INTERFACE_INCLUDE_DIRECTORIES )
47184665 get_filename_component (ORC_ZLIB_ROOT "${ORC_ZLIB_ROOT} " DIRECTORY )
47194666
4667+ if (LZ4_VENDORED)
4668+ set (ORC_LZ4_TARGET lz4_static)
4669+ set (ORC_LZ4_ROOT "${lz4_SOURCE_DIR } " )
4670+ set (ORC_LZ4_INCLUDE_DIR "${lz4_SOURCE_DIR } /lib" )
4671+ else ()
4672+ set (ORC_LZ4_TARGET LZ4::lz4)
4673+ get_target_property (ORC_LZ4_INCLUDE_DIR ${ORC_LZ4_TARGET}
4674+ INTERFACE_INCLUDE_DIRECTORIES )
4675+ get_filename_component (ORC_LZ4_ROOT "${ORC_LZ4_INCLUDE_DIR} " DIRECTORY )
4676+ endif ()
4677+
47204678 set (ORC_CMAKE_ARGS
47214679 ${EP_COMMON_CMAKE_ARGS}
47224680 "-DCMAKE_INSTALL_PREFIX=${ORC_PREFIX} "
0 commit comments