This is an automated email from the ASF dual-hosted git repository.

wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new f913d8f  ARROW-4702: [C++] Update dependency versions
f913d8f is described below

commit f913d8f0adff71c288a10f6c1b0ad2d1ab3e9e32
Author: Antoine Pitrou <anto...@python.org>
AuthorDate: Thu Apr 25 08:28:58 2019 -0500

    ARROW-4702: [C++] Update dependency versions
    
    Author: Antoine Pitrou <anto...@python.org>
    
    Closes #4189 from pitrou/ARROW-4702-update-deps and squashes the following 
commits:
    
    f13660f4e <Antoine Pitrou> ARROW-4702:  Update dependency versions
---
 cpp/cmake_modules/ThirdpartyToolchain.cmake        | 200 +++++++--------------
 ...17c897976c60b0e6e4f4a365c751027244dada7a.tar.gz | Bin 454719 -> 0 bytes
 cpp/thirdparty/versions.txt                        |  23 ++-
 3 files changed, 80 insertions(+), 143 deletions(-)

diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake 
b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index 30f99ff..1c42d87 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -280,6 +280,13 @@ else()
       
"https://github.com/google/googletest/archive/release-${GTEST_VERSION}.tar.gz";)
 endif()
 
+if(DEFINED ENV{ARROW_JEMALLOC_URL})
+  set(JEMALLOC_SOURCE_URL "$ENV{ARROW_JEMALLOC_URL}")
+else()
+  set(JEMALLOC_SOURCE_URL
+      
"https://github.com/jemalloc/jemalloc/archive/${JEMALLOC_VERSION}.tar.gz";)
+endif()
+
 if(DEFINED ENV{ARROW_LZ4_URL})
   set(LZ4_SOURCE_URL "$ENV{ARROW_LZ4_URL}")
 else()
@@ -320,10 +327,8 @@ endif()
 if(DEFINED ENV{ARROW_SNAPPY_URL})
   set(SNAPPY_SOURCE_URL "$ENV{ARROW_SNAPPY_URL}")
 else()
-  set(
-    SNAPPY_SOURCE_URL
-    
"https://github.com/google/snappy/releases/download/${SNAPPY_VERSION}/snappy-${SNAPPY_VERSION}.tar.gz";
-    )
+  set(SNAPPY_SOURCE_URL
+      "https://github.com/google/snappy/archive/${SNAPPY_VERSION}.tar.gz";)
 endif()
 
 if(DEFINED ENV{ARROW_THRIFT_URL})
@@ -338,8 +343,10 @@ endif()
 if(DEFINED ENV{ARROW_URIPARSER_URL})
   set(URIPARSER_SOURCE_URL "$ENV{ARROW_URIPARSER_URL}")
 else()
-  set(URIPARSER_SOURCE_URL
-      
"https://github.com/uriparser/uriparser/archive/${URIPARSER_VERSION}.tar.gz";)
+  set(
+    URIPARSER_SOURCE_URL
+    
"https://github.com/uriparser/uriparser/archive/uriparser-${URIPARSER_VERSION}.tar.gz";
+    )
 endif()
 
 if(DEFINED ENV{ARROW_ZLIB_URL})
@@ -560,10 +567,12 @@ macro(build_uriparser)
   add_library(uriparser::uriparser STATIC IMPORTED)
   # Work around https://gitlab.kitware.com/cmake/cmake/issues/15052
   file(MAKE_DIRECTORY ${URIPARSER_INCLUDE_DIRS})
-  set_target_properties(
-    uriparser::uriparser
-    PROPERTIES IMPORTED_LOCATION ${URIPARSER_STATIC_LIB} 
INTERFACE_INCLUDE_DIRECTORIES
-               ${URIPARSER_INCLUDE_DIRS})
+  set_target_properties(uriparser::uriparser
+                        PROPERTIES IMPORTED_LOCATION ${URIPARSER_STATIC_LIB}
+                                   INTERFACE_INCLUDE_DIRECTORIES 
${URIPARSER_INCLUDE_DIRS}
+                                   # URI_STATIC_BUILD required on Windows
+                                   INTERFACE_COMPILE_DEFINITIONS
+                                   "URI_STATIC_BUILD;URI_NO_UNICODE")
 
   add_dependencies(toolchain uriparser_ep)
   add_dependencies(uriparser::uriparser uriparser_ep)
@@ -586,79 +595,27 @@ include_directories(SYSTEM ${URIPARSER_INCLUDE_DIRS})
 macro(build_snappy)
   message(STATUS "Building snappy from source")
   set(SNAPPY_PREFIX 
"${CMAKE_CURRENT_BINARY_DIR}/snappy_ep/src/snappy_ep-install")
-  if(MSVC)
-    set(SNAPPY_STATIC_LIB_NAME snappy_static)
-  else()
-    set(SNAPPY_STATIC_LIB_NAME snappy)
-  endif()
+  set(SNAPPY_STATIC_LIB_NAME snappy)
   set(
     SNAPPY_STATIC_LIB
     
"${SNAPPY_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}${SNAPPY_STATIC_LIB_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}"
     )
 
-  if(${UPPERCASE_BUILD_TYPE} EQUAL "RELEASE")
-    if(APPLE)
-      set(SNAPPY_CXXFLAGS "CXXFLAGS='-DNDEBUG -O1'")
-    else()
-      set(SNAPPY_CXXFLAGS "CXXFLAGS='-DNDEBUG -O2'")
-    endif()
-  endif()
+  set(SNAPPY_CMAKE_ARGS ${EP_COMMON_CMAKE_ARGS} -DSNAPPY_BUILD_TESTS=OFF
+      "-DCMAKE_INSTALL_PREFIX=${SNAPPY_PREFIX}")
 
-  if(WIN32)
-    set(SNAPPY_CMAKE_ARGS
-        ${EP_COMMON_CMAKE_ARGS}
-        -DCMAKE_AR=${CMAKE_AR}
-        -DCMAKE_RANLIB=${CMAKE_RANLIB}
-        "-DCMAKE_INSTALL_PREFIX=${SNAPPY_PREFIX}")
-    set(SNAPPY_UPDATE_COMMAND
-        ${CMAKE_COMMAND}
-        -E
-        copy
-        ${CMAKE_SOURCE_DIR}/cmake_modules/SnappyCMakeLists.txt
-        ./CMakeLists.txt
-        &&
-        ${CMAKE_COMMAND}
-        -E
-        copy
-        ${CMAKE_SOURCE_DIR}/cmake_modules/SnappyConfig.h
-        ./config.h)
-    externalproject_add(snappy_ep
-                        UPDATE_COMMAND
-                        ${SNAPPY_UPDATE_COMMAND}
-                        ${EP_LOG_OPTIONS}
-                        BUILD_IN_SOURCE
-                        1
-                        BUILD_COMMAND
-                        ${MAKE}
-                        INSTALL_DIR
-                        ${SNAPPY_PREFIX}
-                        URL
-                        ${SNAPPY_SOURCE_URL}
-                        CMAKE_ARGS
-                        ${SNAPPY_CMAKE_ARGS}
-                        BUILD_BYPRODUCTS
-                        "${SNAPPY_STATIC_LIB}")
-  else()
-    externalproject_add(snappy_ep
-                        CONFIGURE_COMMAND
-                        ./configure
-                        --with-pic
-                        "AR=${CMAKE_AR}"
-                        "RANLIB=${CMAKE_RANLIB}"
-                        "--prefix=${SNAPPY_PREFIX}"
-                        ${SNAPPY_CXXFLAGS}
-                        ${EP_LOG_OPTIONS}
-                        BUILD_IN_SOURCE
-                        1
-                        BUILD_COMMAND
-                        ${MAKE}
-                        INSTALL_DIR
-                        ${SNAPPY_PREFIX}
-                        URL
-                        ${SNAPPY_SOURCE_URL}
-                        BUILD_BYPRODUCTS
-                        "${SNAPPY_STATIC_LIB}")
-  endif()
+  externalproject_add(snappy_ep
+                      ${EP_LOG_OPTIONS}
+                      BUILD_IN_SOURCE
+                      1
+                      INSTALL_DIR
+                      ${SNAPPY_PREFIX}
+                      URL
+                      ${SNAPPY_SOURCE_URL}
+                      CMAKE_ARGS
+                      ${SNAPPY_CMAKE_ARGS}
+                      BUILD_BYPRODUCTS
+                      "${SNAPPY_STATIC_LIB}")
 
   file(MAKE_DIRECTORY "${SNAPPY_PREFIX}/include")
 
@@ -709,22 +666,18 @@ macro(build_brotli)
   message(STATUS "Building brotli from source")
   set(BROTLI_PREFIX 
"${CMAKE_CURRENT_BINARY_DIR}/brotli_ep/src/brotli_ep-install")
   set(BROTLI_INCLUDE_DIR "${BROTLI_PREFIX}/include")
-  if(MSVC)
-    set(BROTLI_LIB_DIR bin)
-  else()
-    set(BROTLI_LIB_DIR lib)
-  endif()
+  set(BROTLI_LIB_DIR lib)
   set(
     BROTLI_STATIC_LIBRARY_ENC
-    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlienc${CMAKE_STATIC_LIBRARY_SUFFIX}"
+    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlienc-static${CMAKE_STATIC_LIBRARY_SUFFIX}"
     )
   set(
     BROTLI_STATIC_LIBRARY_DEC
-    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlidec${CMAKE_STATIC_LIBRARY_SUFFIX}"
+    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlidec-static${CMAKE_STATIC_LIBRARY_SUFFIX}"
     )
   set(
     BROTLI_STATIC_LIBRARY_COMMON
-    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlicommon${CMAKE_STATIC_LIBRARY_SUFFIX}"
+    
"${BROTLI_PREFIX}/${BROTLI_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}brotlicommon-static${CMAKE_STATIC_LIBRARY_SUFFIX}"
     )
   set(BROTLI_CMAKE_ARGS
       ${EP_COMMON_CMAKE_ARGS}
@@ -745,23 +698,6 @@ macro(build_brotli)
                       ${BROTLI_CMAKE_ARGS}
                       STEP_TARGETS
                       headers_copy)
-  if(MSVC)
-    externalproject_get_property(brotli_ep SOURCE_DIR)
-
-    externalproject_add_step(brotli_ep
-                             headers_copy
-                             COMMAND
-                             xcopy
-                             /E
-                             /I
-                             include
-                             
..\\..\\..\\brotli_ep\\src\\brotli_ep-install\\include
-                             /Y
-                             DEPENDEES
-                             build
-                             WORKING_DIRECTORY
-                             ${SOURCE_DIR})
-  endif()
 
   add_dependencies(toolchain brotli_ep)
   file(MAKE_DIRECTORY "${BROTLI_INCLUDE_DIR}")
@@ -864,7 +800,6 @@ endif()
 
 macro(build_gflags)
   message(STATUS "Building gflags from source")
-  set(GFLAGS_CMAKE_CXX_FLAGS ${EP_CXX_FLAGS})
 
   set(GFLAGS_PREFIX 
"${CMAKE_CURRENT_BINARY_DIR}/gflags_ep-prefix/src/gflags_ep")
   set(GFLAGS_INCLUDE_DIR "${GFLAGS_PREFIX}/include")
@@ -1204,34 +1139,36 @@ if(ARROW_JEMALLOC)
       "${CMAKE_CURRENT_BINARY_DIR}/jemalloc_ep-prefix/src/jemalloc_ep/dist/")
   set(JEMALLOC_STATIC_LIB
       "${JEMALLOC_PREFIX}/lib/libjemalloc_pic${CMAKE_STATIC_LIBRARY_SUFFIX}")
-  # We need to disable TLS or otherwise C++ exceptions won't work anymore.
-  externalproject_add(
-    jemalloc_ep
-    URL
-    ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/jemalloc/${JEMALLOC_VERSION}.tar.gz
-    PATCH_COMMAND
-    touch
-    doc/jemalloc.3
-    doc/jemalloc.html
-    CONFIGURE_COMMAND
-    ./autogen.sh
-    "AR=${CMAKE_AR}"
-    "CC=${CMAKE_C_COMPILER}"
-    "--prefix=${JEMALLOC_PREFIX}"
-    "--with-jemalloc-prefix=je_arrow_"
-    "--with-private-namespace=je_arrow_private_"
-    "--disable-tls"
-    ${EP_LOG_OPTIONS}
-    BUILD_IN_SOURCE
-    1
-    BUILD_COMMAND
-    ${MAKE}
-    ${MAKE_BUILD_ARGS}
-    BUILD_BYPRODUCTS
-    "${JEMALLOC_STATIC_LIB}"
-    INSTALL_COMMAND
-    ${MAKE}
-    install)
+  externalproject_add(jemalloc_ep
+                      URL
+                      ${JEMALLOC_SOURCE_URL}
+                      PATCH_COMMAND
+                      touch
+                      doc/jemalloc.3
+                      doc/jemalloc.html
+                      CONFIGURE_COMMAND
+                      ./autogen.sh
+                      "AR=${CMAKE_AR}"
+                      "CC=${CMAKE_C_COMPILER}"
+                      "--prefix=${JEMALLOC_PREFIX}"
+                      "--with-jemalloc-prefix=je_arrow_"
+                      "--with-private-namespace=je_arrow_private_"
+                      "--without-export"
+                      # Don't override operator new()
+                      "--disable-cxx" "--disable-libdl"
+                      # See https://github.com/jemalloc/jemalloc/issues/1237
+                      "--disable-initial-exec-tls"
+                      ${EP_LOG_OPTIONS}
+                      BUILD_IN_SOURCE
+                      1
+                      BUILD_COMMAND
+                      ${MAKE}
+                      ${MAKE_BUILD_ARGS}
+                      BUILD_BYPRODUCTS
+                      "${JEMALLOC_STATIC_LIB}"
+                      INSTALL_COMMAND
+                      ${MAKE}
+                      install)
 
   # Don't use the include directory directly so that we can point to a path
   # that is unique to our codebase.
@@ -1870,6 +1807,7 @@ if(ARROW_WITH_BZ2)
 endif()
 
 macro(build_cares)
+  message(STATUS "Building c-ares from source")
   set(CARES_PREFIX "${THIRDPARTY_DIR}/cares_ep-install")
   set(CARES_INCLUDE_DIR "${CARES_PREFIX}/include")
 
diff --git 
a/cpp/thirdparty/jemalloc/17c897976c60b0e6e4f4a365c751027244dada7a.tar.gz 
b/cpp/thirdparty/jemalloc/17c897976c60b0e6e4f4a365c751027244dada7a.tar.gz
deleted file mode 100644
index 29d9266..0000000
Binary files 
a/cpp/thirdparty/jemalloc/17c897976c60b0e6e4f4a365c751027244dada7a.tar.gz and 
/dev/null differ
diff --git a/cpp/thirdparty/versions.txt b/cpp/thirdparty/versions.txt
index 737f062..5afd4f6 100644
--- a/cpp/thirdparty/versions.txt
+++ b/cpp/thirdparty/versions.txt
@@ -24,31 +24,30 @@
 # format).
 
 BOOST_VERSION=1.67.0
-BROTLI_VERSION=v0.6.0
+BROTLI_VERSION=v1.0.7
 BZIP2_VERSION=1.0.6
 CARES_VERSION=1.15.0
-DOUBLE_CONVERSION_VERSION=v3.1.1
+DOUBLE_CONVERSION_VERSION=v3.1.4
 FLATBUFFERS_VERSION=v1.10.0
 GBENCHMARK_VERSION=v1.4.1
 GFLAGS_VERSION=v2.2.0
 GLOG_VERSION=v0.3.5
-GRPC_VERSION=v1.18.0
+GRPC_VERSION=v1.20.0
 GTEST_VERSION=1.8.1
-JEMALLOC_VERSION=17c897976c60b0e6e4f4a365c751027244dada7a
+JEMALLOC_VERSION=5.2.0
 LZ4_VERSION=v1.8.3
-ORC_VERSION=1.5.4
-PROTOBUF_VERSION=v3.6.1
+ORC_VERSION=1.5.5
+PROTOBUF_VERSION=v3.7.1
 # Because of https://github.com/Tencent/rapidjson/pull/1323, we require
 # a pre-release version of RapidJSON to build with GCC 8 without
 # warnings.
 RAPIDJSON_VERSION=2bbd33b33217ff4a73434ebf10cdac41e2ef5e34
-RE2_VERSION=2018-10-01
-SNAPPY_VERSION=1.1.3
+RE2_VERSION=2019-04-01
+SNAPPY_VERSION=1.1.7
 THRIFT_VERSION=0.12.0
-# CMake support appeared after latest release (0.9.1)
-URIPARSER_VERSION=63384be4fb8197264c55ff53a135110ecd5bd8c4
-ZLIB_VERSION=1.2.8
-ZSTD_VERSION=v1.3.7
+URIPARSER_VERSION=0.9.2
+ZLIB_VERSION=1.2.11
+ZSTD_VERSION=v1.4.0
 
 # The first field is the name of the environment variable expected by cmake.
 # This _must_ match what is defined. The second field is the name of the

Reply via email to