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

philo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-gluten.git


The following commit(s) were added to refs/heads/main by this push:
     new c20437a89 [VL] Upgrade folly to v2024.04.01.00 (#5314)
c20437a89 is described below

commit c20437a89e11896962ba13f3495d5369e9321759
Author: PHILO-HE <[email protected]>
AuthorDate: Tue May 28 19:53:49 2024 +0800

    [VL] Upgrade folly to v2024.04.01.00 (#5314)
---
 dev/vcpkg/ports/folly/boost-1.70.patch             |   4 +-
 .../folly/disable-non-underscore-posix-names.patch |  34 -----
 .../disable-uninitialized-resize-on-new-stl.patch  |  34 +++++
 dev/vcpkg/ports/folly/fix-deps.patch               | 152 +++++++++++----------
 dev/vcpkg/ports/folly/fix-unistd-include.patch     |  13 ++
 dev/vcpkg/ports/folly/portfile.cmake               |  20 +--
 dev/vcpkg/ports/folly/reorder-glog-gflags.patch    |  28 ----
 dev/vcpkg/ports/folly/vcpkg-cmake-wrapper.cmake    |  10 +-
 dev/vcpkg/ports/folly/vcpkg.json                   |  10 +-
 9 files changed, 152 insertions(+), 153 deletions(-)

diff --git a/dev/vcpkg/ports/folly/boost-1.70.patch 
b/dev/vcpkg/ports/folly/boost-1.70.patch
index 298516f82..da6b81788 100644
--- a/dev/vcpkg/ports/folly/boost-1.70.patch
+++ b/dev/vcpkg/ports/folly/boost-1.70.patch
@@ -1,5 +1,5 @@
 diff --git a/folly/portability/PThread.cpp b/folly/portability/PThread.cpp
-index 2126ec0..ef82ade 100644
+index 777ac21ef..a4fc13a09 100644
 --- a/folly/portability/PThread.cpp
 +++ b/folly/portability/PThread.cpp
 @@ -20,6 +20,8 @@
@@ -11,7 +11,7 @@ index 2126ec0..ef82ade 100644
  
  #include <errno.h>
  
-@@ -691,7 +693,7 @@ int pthread_setspecific(pthread_key_t key, const void* 
value) {
+@@ -682,7 +684,7 @@ int pthread_setspecific(pthread_key_t key, const void* 
value) {
          boost::detail::thread::cleanup_caller_t(),
          boost::detail::thread::cleanup_func_t(),
  #else
diff --git a/dev/vcpkg/ports/folly/disable-non-underscore-posix-names.patch 
b/dev/vcpkg/ports/folly/disable-non-underscore-posix-names.patch
deleted file mode 100644
index c03994792..000000000
--- a/dev/vcpkg/ports/folly/disable-non-underscore-posix-names.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/folly/portability/Windows.h b/folly/portability/Windows.h
-index 86fd0f9..ccad11e 100644
---- a/folly/portability/Windows.h
-+++ b/folly/portability/Windows.h
-@@ -32,24 +32,17 @@
- // disabled to ensure all of the normal names get declared properly.
- #include <stdio.h>
- 
--#ifndef __STDC__
--/* nolint */
--#define __STDC__ 1
- #pragma push_macro("_CRT_DECLARE_NONSTDC_NAMES")
- #ifdef _CRT_DECLARE_NONSTDC_NAMES
- #undef _CRT_DECLARE_NONSTDC_NAMES
- #endif
-+
-+#include <corecrt.h>
- #pragma push_macro("_CRT_INTERNAL_NONSTDC_NAMES")
--#undef _CRT_INTERNAL_NONSTDC_NAMES
--#include <direct.h> // @manual nolint
--#include <io.h> // @manual nolint
--#undef __STDC__
-+#define _CRT_INTERNAL_NONSTDC_NAMES 0
-+#include <direct.h>
-+#include <io.h>
- #pragma pop_macro("_CRT_INTERNAL_NONSTDC_NAMES")
--#pragma pop_macro("_CRT_DECLARE_NONSTDC_NAMES")
--#else
--#include <direct.h> // @manual nolint
--#include <io.h> // @manual nolint
--#endif
- 
- #if defined(min) || defined(max)
- #error Windows.h needs to be included by this header, or else NOMINMAX needs \
diff --git 
a/dev/vcpkg/ports/folly/disable-uninitialized-resize-on-new-stl.patch 
b/dev/vcpkg/ports/folly/disable-uninitialized-resize-on-new-stl.patch
new file mode 100644
index 000000000..6e7b6b571
--- /dev/null
+++ b/dev/vcpkg/ports/folly/disable-uninitialized-resize-on-new-stl.patch
@@ -0,0 +1,34 @@
+diff --git a/folly/memory/UninitializedMemoryHacks.h 
b/folly/memory/UninitializedMemoryHacks.h
+index daf5eb735..1ac44d6b2 100644
+--- a/folly/memory/UninitializedMemoryHacks.h
++++ b/folly/memory/UninitializedMemoryHacks.h
+@@ -101,6 +101,9 @@ template <
+         typename 
std::enable_if<std::is_trivially_destructible<T>::value>::type>
+ inline void resizeWithoutInitialization(
+     std::basic_string<T>& s, std::size_t n) {
++#if defined(_MSVC_STL_UPDATE) && _MSVC_STL_UPDATE >= 202206L
++    s.resize(n);
++#else
+   if (n <= s.size()) {
+     s.resize(n);
+   } else {
+@@ -111,6 +114,7 @@ inline void resizeWithoutInitialization(
+     }
+     detail::unsafeStringSetLargerSize(s, n);
+   }
++#endif // defined(_MSVC_STL_UPDATE) && _MSVC_STL_UPDATE >= 202206L
+ }
+ 
+ /**
+@@ -278,8 +282,11 @@ struct MakeUnsafeStringSetLargerSize {
+ } // namespace folly
+ 
+ #if defined(FOLLY_DECLARE_STRING_RESIZE_WITHOUT_INIT)
++#if defined(_MSVC_STL_UPDATE) && _MSVC_STL_UPDATE >= 202206L
++#else
+ FOLLY_DECLARE_STRING_RESIZE_WITHOUT_INIT(char)
+ FOLLY_DECLARE_STRING_RESIZE_WITHOUT_INIT(wchar_t)
++#endif // defined(_MSVC_STL_UPDATE) && _MSVC_STL_UPDATE >= 202206L
+ #endif
+ 
+ namespace folly {
diff --git a/dev/vcpkg/ports/folly/fix-deps.patch 
b/dev/vcpkg/ports/folly/fix-deps.patch
index 179fa71be..442ad8063 100644
--- a/dev/vcpkg/ports/folly/fix-deps.patch
+++ b/dev/vcpkg/ports/folly/fix-deps.patch
@@ -1,12 +1,13 @@
 diff --git a/CMake/folly-config.cmake.in b/CMake/folly-config.cmake.in
-index 0b96f0a10..c90110287 100644
+index 0b96f0a10..1559f9f70 100644
 --- a/CMake/folly-config.cmake.in
 +++ b/CMake/folly-config.cmake.in
-@@ -29,10 +29,35 @@ endif()
+@@ -29,10 +29,30 @@ endif()
  set(FOLLY_LIBRARIES Folly::folly)
  
  # Find folly's dependencies
 -find_dependency(fmt)
++find_dependency(fmt CONFIG)
 +find_dependency(double-conversion CONFIG)
 +find_dependency(glog CONFIG)
 +find_dependency(gflags CONFIG)
@@ -27,12 +28,6 @@ index 0b96f0a10..c90110287 100644
 +if (NOT @CMAKE_DISABLE_FIND_PACKAGE_LZ4@)
 +    find_dependency(lz4 CONFIG)
 +endif()
-+
-+if (@WITH_liburing@)
-+    find_dependency(LibUring)
-+endif()
-+
-+find_dependency(fmt CONFIG)
  
  set(Boost_USE_STATIC_LIBS "@FOLLY_BOOST_LINK_STATIC@")
 -find_dependency(Boost 1.51.0 MODULE
@@ -41,7 +36,7 @@ index 0b96f0a10..c90110287 100644
      context
      filesystem
 diff --git a/CMake/folly-deps.cmake b/CMake/folly-deps.cmake
-index 4b78e9f02..eb77e29c9 100644
+index 41a513a30..d75908f77 100644
 --- a/CMake/folly-deps.cmake
 +++ b/CMake/folly-deps.cmake
 @@ -35,7 +35,7 @@ else()
@@ -53,27 +48,17 @@ index 4b78e9f02..eb77e29c9 100644
    COMPONENTS
      context
      filesystem
-@@ -45,37 +45,38 @@ find_package(Boost 1.51.0 MODULE
+@@ -45,37 +45,37 @@ find_package(Boost 1.51.0 MODULE
      thread
    REQUIRED
  )
-+set (Boost_LIBRARIES Boost::context Boost::filesystem Boost::program_options 
Boost::regex  Boost::system Boost::thread
-+  )
++set(Boost_LIBRARIES Boost::boost Boost::context Boost::filesystem 
Boost::program_options Boost::regex Boost::system Boost::thread)
  list(APPEND FOLLY_LINK_LIBRARIES ${Boost_LIBRARIES})
 -list(APPEND FOLLY_INCLUDE_DIRECTORIES ${Boost_INCLUDE_DIRS})
- 
+-
 -find_package(DoubleConversion MODULE REQUIRED)
 -list(APPEND FOLLY_LINK_LIBRARIES ${DOUBLE_CONVERSION_LIBRARY})
 -list(APPEND FOLLY_INCLUDE_DIRECTORIES ${DOUBLE_CONVERSION_INCLUDE_DIR})
-+find_package(double-conversion CONFIG REQUIRED)
-+list(APPEND FOLLY_LINK_LIBRARIES double-conversion::double-conversion)
- 
--find_package(Glog CONFIG REQUIRED)
--set(FOLLY_HAVE_LIBGLOG ${GLOG_FOUND})
-+find_package(glog CONFIG REQUIRED)
-+set(FOLLY_HAVE_LIBGLOG 1)
- list(APPEND FOLLY_LINK_LIBRARIES glog::glog)
--list(APPEND FOLLY_INCLUDE_DIRECTORIES ${GLOG_INCLUDE_DIR})
 -
 -find_package(Gflags MODULE)
 -set(FOLLY_HAVE_LIBGFLAGS ${LIBGFLAGS_FOUND})
@@ -82,22 +67,21 @@ index 4b78e9f02..eb77e29c9 100644
 -  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBGFLAGS_INCLUDE_DIR})
 -  set(FOLLY_LIBGFLAGS_LIBRARY ${LIBGFLAGS_LIBRARY})
 -  set(FOLLY_LIBGFLAGS_INCLUDE ${LIBGFLAGS_INCLUDE_DIR})
-+
-+find_package(gflags CONFIG)
-+if(TARGET gflags::gflags)
-+  set(FOLLY_HAVE_LIBGFLAGS 1)
-+  list(APPEND FOLLY_LINK_LIBRARIES gflags::gflags)
-+  set(FOLLY_LIBGFLAGS_LIBRARY gflags::gflags)
- endif()
+-endif()
+ 
+-find_package(Glog MODULE)
+-set(FOLLY_HAVE_LIBGLOG ${GLOG_FOUND})
+-list(APPEND FOLLY_LINK_LIBRARIES ${GLOG_LIBRARY})
+-list(APPEND FOLLY_INCLUDE_DIRECTORIES ${GLOG_INCLUDE_DIR})
++find_package(double-conversion CONFIG REQUIRED)
++list(APPEND FOLLY_LINK_LIBRARIES double-conversion::double-conversion)
  
 -find_package(LibEvent MODULE REQUIRED)
 -list(APPEND FOLLY_LINK_LIBRARIES ${LIBEVENT_LIB})
 -list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBEVENT_INCLUDE_DIR})
-+find_package(Libevent CONFIG REQUIRED)
-+list(APPEND FOLLY_LINK_LIBRARIES libevent::core libevent::extra)
-+if(NOT WIN32)
-+  list(APPEND FOLLY_LINK_LIBRARIES libevent::pthreads)
-+endif()
++find_package(glog CONFIG REQUIRED)
++set(FOLLY_HAVE_LIBGLOG 1)
++list(APPEND FOLLY_LINK_LIBRARIES glog::glog)
  
 -find_package(ZLIB MODULE)
 -set(FOLLY_HAVE_LIBZ ${ZLIB_FOUND})
@@ -105,18 +89,31 @@ index 4b78e9f02..eb77e29c9 100644
 -  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${ZLIB_INCLUDE_DIRS})
 -  list(APPEND FOLLY_LINK_LIBRARIES ${ZLIB_LIBRARIES})
 -  list(APPEND CMAKE_REQUIRED_LIBRARIES ${ZLIB_LIBRARIES})
++find_package(gflags CONFIG)
++if(TARGET gflags::gflags)
++  set(FOLLY_HAVE_LIBGFLAGS 1)
++  list(APPEND FOLLY_LINK_LIBRARIES gflags::gflags)
++  set(FOLLY_LIBGFLAGS_LIBRARY gflags::gflags)
++endif()
++
++find_package(Libevent CONFIG REQUIRED)
++list(APPEND FOLLY_LINK_LIBRARIES libevent::core libevent::extra)
++if(NOT WIN32)
++  list(APPEND FOLLY_LINK_LIBRARIES libevent::pthreads)
++endif()
++
 +if (CMAKE_REQUIRE_FIND_PACKAGE_ZLIB)
-+    find_package(ZLIB MODULE REQUIRED)
-+    set(FOLLY_HAVE_LIBZ ${ZLIB_FOUND})
-+    if (ZLIB_FOUND)
-+      list(APPEND FOLLY_INCLUDE_DIRECTORIES ${ZLIB_INCLUDE_DIRS})
-+      list(APPEND FOLLY_LINK_LIBRARIES ${ZLIB_LIBRARIES})
-+      list(APPEND CMAKE_REQUIRED_LIBRARIES ${ZLIB_LIBRARIES})
-+    endif()
++  find_package(ZLIB MODULE REQUIRED)
++  set(FOLLY_HAVE_LIBZ ${ZLIB_FOUND})
++  if (ZLIB_FOUND)
++    list(APPEND FOLLY_INCLUDE_DIRECTORIES ${ZLIB_INCLUDE_DIRS})
++    list(APPEND FOLLY_LINK_LIBRARIES ${ZLIB_LIBRARIES})
++    list(APPEND CMAKE_REQUIRED_LIBRARIES ${ZLIB_LIBRARIES})
++  endif()
  endif()
  
  find_package(OpenSSL 1.1.1 MODULE REQUIRED)
-@@ -104,25 +105,30 @@ if (LIBLZMA_FOUND)
+@@ -103,25 +103,30 @@ if (LIBLZMA_FOUND)
    list(APPEND FOLLY_LINK_LIBRARIES ${LIBLZMA_LIBRARIES})
  endif()
  
@@ -125,7 +122,7 @@ index 4b78e9f02..eb77e29c9 100644
 -if (LZ4_FOUND)
 -  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LZ4_INCLUDE_DIR})
 -  list(APPEND FOLLY_LINK_LIBRARIES ${LZ4_LIBRARY})
-+if (NOT CMAKE_DISABLE_FIND_PACKAGE_LZ4)
++if(NOT CMAKE_DISABLE_FIND_PACKAGE_LZ4)
 +  find_package(lz4 CONFIG)
 +  if(TARGET lz4::lz4)
 +    set(FOLLY_HAVE_LIBLZ4 1)
@@ -138,15 +135,15 @@ index 4b78e9f02..eb77e29c9 100644
 -if(ZSTD_FOUND)
 -  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${ZSTD_INCLUDE_DIR})
 -  list(APPEND FOLLY_LINK_LIBRARIES ${ZSTD_LIBRARY})
-+if (NOT CMAKE_DISABLE_FIND_PACKAGE_Zstd)
-+    find_package(zstd CONFIG)
-+    if(TARGET zstd::libzstd_shared )
-+      set(FOLLY_HAVE_LIBZSTD 1)
-+      list(APPEND FOLLY_LINK_LIBRARIES zstd::libzstd_shared)
-+    elseif( TARGET zstd::libzstd_static )
-+      set(FOLLY_HAVE_LIBZSTD 1)
-+      list(APPEND FOLLY_LINK_LIBRARIES zstd::libzstd_static)
-+    endif()
++if(NOT CMAKE_DISABLE_FIND_PACKAGE_Zstd)
++  find_package(zstd CONFIG)
++  if(TARGET zstd::libzstd_shared )
++    set(FOLLY_HAVE_LIBZSTD 1)
++    list(APPEND FOLLY_LINK_LIBRARIES zstd::libzstd_shared)
++  elseif( TARGET zstd::libzstd_static )
++    set(FOLLY_HAVE_LIBZSTD 1)
++    list(APPEND FOLLY_LINK_LIBRARIES zstd::libzstd_static)
++  endif()
  endif()
  
 -find_package(Snappy MODULE)
@@ -154,49 +151,62 @@ index 4b78e9f02..eb77e29c9 100644
 -if (SNAPPY_FOUND)
 -  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${SNAPPY_INCLUDE_DIR})
 -  list(APPEND FOLLY_LINK_LIBRARIES ${SNAPPY_LIBRARY})
-+if (NOT CMAKE_DISABLE_FIND_PACKAGE_Snappy)
-+    find_package(Snappy CONFIG)
-+    if(TARGET Snappy::snappy)
-+          list(APPEND FOLLY_LINK_LIBRARIES Snappy::snappy)
-+    endif()
++if(NOT CMAKE_DISABLE_FIND_PACKAGE_Snappy)
++  find_package(Snappy CONFIG)
++  if(TARGET Snappy::snappy)
++    list(APPEND FOLLY_LINK_LIBRARIES Snappy::snappy)
++  endif()
  endif()
  
  find_package(LibDwarf)
-@@ -137,13 +143,18 @@ find_package(LibAIO)
- list(APPEND FOLLY_LINK_LIBRARIES ${LIBAIO_LIBRARIES})
- list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBAIO_INCLUDE_DIRS})
+@@ -132,17 +137,24 @@ find_package(Libiberty)
+ list(APPEND FOLLY_LINK_LIBRARIES ${LIBIBERTY_LIBRARIES})
+ list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBIBERTY_INCLUDE_DIRS})
+ 
+-find_package(LibAIO)
+-list(APPEND FOLLY_LINK_LIBRARIES ${LIBAIO_LIBRARIES})
+-list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBAIO_INCLUDE_DIRS})
++if(WITH_libaio)
++  find_package(LibAIO)
++  list(APPEND FOLLY_LINK_LIBRARIES ${LIBAIO_LIBRARIES})
++  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBAIO_INCLUDE_DIRS})
++endif()
  
+-find_package(LibUring)
+-list(APPEND FOLLY_LINK_LIBRARIES ${LIBURING_LIBRARIES})
+-list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBURING_INCLUDE_DIRS})
 +if(WITH_liburing)
- find_package(LibUring)
- list(APPEND FOLLY_LINK_LIBRARIES ${LIBURING_LIBRARIES})
- list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBURING_INCLUDE_DIRS})
++  find_package(LibUring)
++  list(APPEND FOLLY_LINK_LIBRARIES ${LIBURING_LIBRARIES})
++  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBURING_INCLUDE_DIRS})
 +endif()
  
 -find_package(Libsodium)
 -list(APPEND FOLLY_LINK_LIBRARIES ${LIBSODIUM_LIBRARIES})
 -list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBSODIUM_INCLUDE_DIRS})
-+if (NOT CMAKE_DISABLE_FIND_PACKAGE_unofficial-sodium)
-+    find_package(unofficial-sodium CONFIG)
-+    if(TARGET unofficial-sodium::sodium)
-+      list(APPEND FOLLY_LINK_LIBRARIES unofficial-sodium::sodium)
-+    endif()
++if(NOT CMAKE_DISABLE_FIND_PACKAGE_unofficial-sodium)
++  find_package(unofficial-sodium CONFIG)
++  if(TARGET unofficial-sodium::sodium)
++    list(APPEND FOLLY_LINK_LIBRARIES unofficial-sodium::sodium)
++  endif()
 +endif()
  
  list(APPEND FOLLY_LINK_LIBRARIES ${CMAKE_DL_LIBS})
  list(APPEND CMAKE_REQUIRED_LIBRARIES ${CMAKE_DL_LIBS})
-@@ -154,9 +165,9 @@ if (PYTHON_EXTENSIONS)
+@@ -153,10 +165,10 @@ if (PYTHON_EXTENSIONS)
  endif ()
  
  find_package(LibUnwind)
 -list(APPEND FOLLY_LINK_LIBRARIES ${LIBUNWIND_LIBRARIES})
 -list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBUNWIND_INCLUDE_DIRS})
  if (LIBUNWIND_FOUND)
+   set(FOLLY_HAVE_LIBUNWIND ON)
 +  list(APPEND FOLLY_LINK_LIBRARIES ${LIBUNWIND_LIBRARIES})
 +  list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBUNWIND_INCLUDE_DIRS})
-   set(FOLLY_HAVE_LIBUNWIND ON)
  endif()
  if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
-@@ -299,11 +310,7 @@ endif()
+   list(APPEND FOLLY_LINK_LIBRARIES "execinfo")
+@@ -298,11 +310,7 @@ endif()
  
  add_library(folly_deps INTERFACE)
  
diff --git a/dev/vcpkg/ports/folly/fix-unistd-include.patch 
b/dev/vcpkg/ports/folly/fix-unistd-include.patch
new file mode 100644
index 000000000..9e3fe5d7a
--- /dev/null
+++ b/dev/vcpkg/ports/folly/fix-unistd-include.patch
@@ -0,0 +1,13 @@
+diff --git a/folly/experimental/symbolizer/Elf.cpp 
b/folly/experimental/symbolizer/Elf.cpp
+index 6a7f74f..6546fe0 100644
+--- a/folly/experimental/symbolizer/Elf.cpp
++++ b/folly/experimental/symbolizer/Elf.cpp
+@@ -49,6 +49,8 @@
+ #define FOLLY_ELF_NATIVE_CLASS __WORDSIZE
+ #endif // __ELF_NATIVE_CLASS
+ 
++#include <unistd.h>
++
+ namespace folly {
+ namespace symbolizer {
+ 
diff --git a/dev/vcpkg/ports/folly/portfile.cmake 
b/dev/vcpkg/ports/folly/portfile.cmake
index 12d503331..40a0231ea 100644
--- a/dev/vcpkg/ports/folly/portfile.cmake
+++ b/dev/vcpkg/ports/folly/portfile.cmake
@@ -8,15 +8,15 @@ vcpkg_add_to_path("${PYTHON3_DIR}")
 vcpkg_from_github(
     OUT_SOURCE_PATH SOURCE_PATH
     REPO facebook/folly
-    REF "v${VERSION}" #v2023.12.04.00
-    SHA512 
5fe3d99dbd4f10698cc3f5076f80f627932c5f527210fac5610f60e373b90ce0ce44655e4be8467dbafcd007d6b82ec05f4b4014ff4697c5e144d6a2105a3c92
+    REF "v${VERSION}"
+    SHA512 
6f4fa9b30ff0aba4c1c89619ada2cafd8943ba9a06b6ac4086fba212f26f0df606c8735485110eec6977900d45fc33ddcfdb8095dc6728b8c12b5cac65672e12
     HEAD_REF main
     PATCHES
-        reorder-glog-gflags.patch
-        disable-non-underscore-posix-names.patch
         boost-1.70.patch
         fix-windows-minmax.patch
         fix-deps.patch
+        disable-uninitialized-resize-on-new-stl.patch
+        fix-unistd-include.patch
 )
 
 file(REMOVE "${SOURCE_PATH}/CMake/FindFmt.cmake")
@@ -29,6 +29,7 @@ file(REMOVE 
"${SOURCE_PATH}/build/fbcode_builder/CMake/FindGMock.cmake")
 file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindGflags.cmake")
 file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindGlog.cmake")
 file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindLibEvent.cmake")
+file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindLibUnwind.cmake")
 file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindSodium.cmake")
 file(REMOVE "${SOURCE_PATH}/build/fbcode_builder/CMake/FindZstd.cmake")
 
@@ -42,6 +43,7 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
     FEATURES
         "zlib"       CMAKE_REQUIRE_FIND_PACKAGE_ZLIB
         "liburing"   WITH_liburing
+        "libaio"     WITH_libaio
     INVERTED_FEATURES
         "bzip2"      CMAKE_DISABLE_FIND_PACKAGE_BZip2
         "lzma"       CMAKE_DISABLE_FIND_PACKAGE_LibLZMA
@@ -54,19 +56,19 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
 vcpkg_cmake_configure(
     SOURCE_PATH "${SOURCE_PATH}"
     OPTIONS
+        # Exclude exception tracer, which is necessary to statically link 
libstdc++.
+        # https://github.com/facebook/folly/issues/1623
+        -DFOLLY_NO_EXCEPTION_TRACER=ON
         -DMSVC_USE_STATIC_RUNTIME=${MSVC_USE_STATIC_RUNTIME}
-        # -DCMAKE_DISABLE_FIND_PACKAGE_LibDwarf=ON
+        -DCMAKE_DISABLE_FIND_PACKAGE_LibDwarf=OFF
         -DCMAKE_DISABLE_FIND_PACKAGE_Libiberty=ON
         -DCMAKE_DISABLE_FIND_PACKAGE_LibAIO=ON
         -DLIBAIO_FOUND=OFF
+        # Required by Velox.
         -DFOLLY_HAVE_INT128_T=ON
         -DCMAKE_INSTALL_DIR=share/folly
-        # Fix folly static link libstdc++
-        # See: 
https://github.com/facebook/folly/blob/b88123c2abf4b3244ed285e6db0d4bea2d24f95f/CMakeLists.txt#L192
-        -DFOLLY_NO_EXCEPTION_TRACER=ON
         ${FEATURE_OPTIONS}
     MAYBE_UNUSED_VARIABLES
-        LIBAIO_FOUND
         MSVC_USE_STATIC_RUNTIME
 )
 
diff --git a/dev/vcpkg/ports/folly/reorder-glog-gflags.patch 
b/dev/vcpkg/ports/folly/reorder-glog-gflags.patch
deleted file mode 100644
index 911481d88..000000000
--- a/dev/vcpkg/ports/folly/reorder-glog-gflags.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/CMake/folly-deps.cmake b/CMake/folly-deps.cmake
-index 92b8ce7..04589ed 100644
---- a/CMake/folly-deps.cmake
-+++ b/CMake/folly-deps.cmake
-@@ -52,6 +52,11 @@ find_package(DoubleConversion MODULE REQUIRED)
- list(APPEND FOLLY_LINK_LIBRARIES ${DOUBLE_CONVERSION_LIBRARY})
- list(APPEND FOLLY_INCLUDE_DIRECTORIES ${DOUBLE_CONVERSION_INCLUDE_DIR})
- 
-+find_package(Glog CONFIG REQUIRED)
-+set(FOLLY_HAVE_LIBGLOG ${GLOG_FOUND})
-+list(APPEND FOLLY_LINK_LIBRARIES glog::glog)
-+list(APPEND FOLLY_INCLUDE_DIRECTORIES ${GLOG_INCLUDE_DIR})
-+
- find_package(Gflags MODULE)
- set(FOLLY_HAVE_LIBGFLAGS ${LIBGFLAGS_FOUND})
- if(LIBGFLAGS_FOUND)
-@@ -61,11 +66,6 @@ if(LIBGFLAGS_FOUND)
-   set(FOLLY_LIBGFLAGS_INCLUDE ${LIBGFLAGS_INCLUDE_DIR})
- endif()
- 
--find_package(Glog MODULE)
--set(FOLLY_HAVE_LIBGLOG ${GLOG_FOUND})
--list(APPEND FOLLY_LINK_LIBRARIES ${GLOG_LIBRARY})
--list(APPEND FOLLY_INCLUDE_DIRECTORIES ${GLOG_INCLUDE_DIR})
--
- find_package(LibEvent MODULE REQUIRED)
- list(APPEND FOLLY_LINK_LIBRARIES ${LIBEVENT_LIB})
- list(APPEND FOLLY_INCLUDE_DIRECTORIES ${LIBEVENT_INCLUDE_DIR})
diff --git a/dev/vcpkg/ports/folly/vcpkg-cmake-wrapper.cmake 
b/dev/vcpkg/ports/folly/vcpkg-cmake-wrapper.cmake
index f5997e836..cce45a2e4 100644
--- a/dev/vcpkg/ports/folly/vcpkg-cmake-wrapper.cmake
+++ b/dev/vcpkg/ports/folly/vcpkg-cmake-wrapper.cmake
@@ -1,6 +1,6 @@
-set(FOLLY_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
-list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR})
-
-_find_package(${ARGS})
-
+set(FOLLY_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
+list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR})
+
+_find_package(${ARGS})
+
 set(CMAKE_MODULE_PATH ${FOLLY_PREV_MODULE_PATH})
\ No newline at end of file
diff --git a/dev/vcpkg/ports/folly/vcpkg.json b/dev/vcpkg/ports/folly/vcpkg.json
index cbb1006ba..b908f40dd 100644
--- a/dev/vcpkg/ports/folly/vcpkg.json
+++ b/dev/vcpkg/ports/folly/vcpkg.json
@@ -1,7 +1,6 @@
 {
   "name": "folly",
-  "version-string": "2023.12.04.00",
-  "port-version": 4,
+  "version-string": "2024.04.01.00",
   "description": "An open-source C++ library developed and used at Facebook. 
The library is UNSTABLE on Windows",
   "homepage": "https://github.com/facebook/folly";,
   "license": "Apache-2.0",
@@ -19,14 +18,13 @@
     "boost-smart-ptr",
     "boost-system",
     "boost-thread",
+    "boost-variant",
     "double-conversion",
     "fmt",
     "gflags",
     "glog",
     "libevent",
     "openssl",
-    "libdwarf",
-    "libelf",
     {
       "name": "vcpkg-cmake",
       "host": true
@@ -46,6 +44,10 @@
         "bzip2"
       ]
     },
+    "libaio": {
+      "description": "Support compile with libaio",
+      "supports": "linux & x64"
+    },
     "libsodium": {
       "description": "Support libsodium for cryto",
       "dependencies": [


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to