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 49f1d00  ARROW-2258: [Python] Add additional information to find Boost 
on windows
49f1d00 is described below

commit 49f1d006b58e2ed3c041ba5697c112ee1f7e105e
Author: Uwe L. Korn <[email protected]>
AuthorDate: Mon Mar 5 09:44:12 2018 -0500

    ARROW-2258: [Python] Add additional information to find Boost on windows
    
    cc @MaxRis
    
    Author: Uwe L. Korn <[email protected]>
    
    Closes #1700 from xhochy/ARROW-2258 and squashes the following commits:
    
    a8c00b22 <Uwe L. Korn> ARROW-2258:  Add additional information to find 
Boost on windows
---
 ci/msvc-build.bat     |  2 +-
 python/CMakeLists.txt | 18 ++++++++++++++++++
 python/setup.py       |  3 +++
 3 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/ci/msvc-build.bat b/ci/msvc-build.bat
index b6f672d..beefee6 100644
--- a/ci/msvc-build.bat
+++ b/ci/msvc-build.bat
@@ -133,7 +133,7 @@ popd
 pushd python
 
 set PYARROW_CXXFLAGS=/WX
-python setup.py build_ext --with-parquet --bundle-arrow-cpp ^
+python setup.py build_ext --with-parquet --bundle-arrow-cpp 
--with-static-boost ^
     install -q --single-version-externally-managed --record=record.text ^
     bdist_wheel || exit /B
 
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index 72294d4..d171946 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -268,6 +268,24 @@ if (PYARROW_BUNDLE_ARROW_CPP)
   # boost
   if (PYARROW_BOOST_USE_SHARED)
     set(Boost_USE_STATIC_LIBS OFF)
+    set(Boost_USE_MULTITHREADED ON)
+    if (MSVC AND ARROW_USE_STATIC_CRT)
+      set(Boost_USE_STATIC_RUNTIME ON)
+    endif()
+    set(Boost_ADDITIONAL_VERSIONS
+      "1.66.0" "1.66"
+      "1.65.0" "1.65"
+      "1.64.0" "1.64"
+      "1.63.0" "1.63"
+      "1.62.0" "1.61"
+      "1.61.0" "1.62"
+      "1.60.0" "1.60")
+    list(GET Boost_ADDITIONAL_VERSIONS 0 BOOST_LATEST_VERSION)
+    string(REPLACE "." "_" BOOST_LATEST_VERSION_IN_PATH 
${BOOST_LATEST_VERSION})
+    if (MSVC)
+      # disable autolinking in boost
+      add_definitions(-DBOOST_ALL_NO_LIB)
+    endif()
     find_package(Boost COMPONENTS system filesystem regex REQUIRED)
     bundle_boost_lib(Boost_REGEX_LIBRARY)
     bundle_boost_lib(Boost_FILESYSTEM_LIBRARY)
diff --git a/python/setup.py b/python/setup.py
index 34d2d90..ddf7cc5 100644
--- a/python/setup.py
+++ b/python/setup.py
@@ -96,6 +96,7 @@ class build_ext(_build_ext):
                      ('build-type=', None, 'build type (debug or release)'),
                      ('with-parquet', None, 'build the Parquet extension'),
                      ('with-static-parquet', None, 'link parquet statically'),
+                     ('with-static-boost', None, 'link boost statically'),
                      ('with-plasma', None, 'build the Plasma extension'),
                      ('with-orc', None, 'build the ORC extension'),
                      ('bundle-arrow-cpp', None,
@@ -170,6 +171,8 @@ class build_ext(_build_ext):
                 cmake_options.append('-DPYARROW_PARQUET_USE_SHARED=off')
             if not self.with_static_boost:
                 cmake_options.append('-DPYARROW_BOOST_USE_SHARED=on')
+            else:
+                cmake_options.append('-DPYARROW_BOOST_USE_SHARED=off')
 
             if self.with_plasma:
                 cmake_options.append('-DPYARROW_BUILD_PLASMA=on')

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to