blob: 0fccf2a09113e59d61edcd527073c310f61b3532 [file] [log] [blame]
@rem Licensed to the Apache Software Foundation (ASF) under one
@rem or more contributor license agreements. See the NOTICE file
@rem distributed with this work for additional information
@rem regarding copyright ownership. The ASF licenses this file
@rem to you under the Apache License, Version 2.0 (the
@rem "License"); you may not use this file except in compliance
@rem with the License. You may obtain a copy of the License at
@rem
@rem http://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing,
@rem software distributed under the License is distributed on an
@rem "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@rem KIND, either express or implied. See the License for the
@rem specific language governing permissions and limitations
@rem under the License.
@echo on
set CMAKE_BUILD_TYPE=release
set MESON_BUILD_TYPE=release
set INSTALL_DIR=%HOMEDRIVE%%HOMEPATH%\install
set PATH=%INSTALL_DIR%\bin;%PATH%
set PKG_CONFIG_PATH=%INSTALL_DIR%\lib\pkgconfig
set GI_TYPELIB_PATH=%INSTALL_DIR%\lib\girepository-1.0
set ARROW_DLL_PATH=%MINGW_PREFIX%\bin
set ARROW_DLL_PATH=%INSTALL_DIR%\bin;%ARROW_DLL_PATH%
set ARROW_PKG_CONFIG_PATH=%PKG_CONFIG_PATH%
for /f "usebackq" %%v in (`python3 -c "import sys; print('.'.join(map(str, sys.version_info[0:2])))"`) do (
set PYTHON_VERSION=%%v
)
git submodule update --init || exit /B
set ARROW_TEST_DATA=%CD%\testing\data
set PARQUET_TEST_DATA=%CD%\cpp\submodules\parquet-testing\data
set CPP_BUILD_DIR=cpp\build
mkdir %CPP_BUILD_DIR%
pushd %CPP_BUILD_DIR%
cmake ^
-G "MSYS Makefiles" ^
-DARROW_BUILD_STATIC=OFF ^
-DARROW_BUILD_TESTS=ON ^
-DARROW_PACKAGE_PREFIX=%MINGW_PREFIX% ^
-DARROW_PARQUET=ON ^
-DARROW_PYTHON=ON ^
-DARROW_USE_GLOG=OFF ^
-DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% ^
-DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% ^
-DPythonInterp_FIND_VERSION=ON ^
-DPythonInterp_FIND_VERSION_MAJOR=3 ^
.. || exit /B
make -j4 || exit /B
setlocal
set PYTHONHOME=%MINGW_PREFIX%\lib\python%PYTHON_VERSION%
set PYTHONPATH=%PYTHONHOME%
set PYTHONPATH=%PYTHONPATH%;%MINGW_PREFIX%\lib\python%PYTHON_VERSION%\lib-dynload
set PYTHONPATH=%PYTHONPATH%;%MINGW_PREFIX%\lib\python%PYTHON_VERSION%\site-packages
@rem TODO(ARROW-4784): Run all tests
ctest ^
--exclude-regex "arrow-array-test|arrow-thread-pool-test" ^
--output-on-failure ^
--parallel 2 || exit /B
endlocal
make install || exit /B
popd
set C_GLIB_BUILD_DIR=c_glib\build
meson ^
setup ^
--prefix=%INSTALL_DIR% ^
--buildtype=%MESON_BUILD_TYPE% ^
%C_GLIB_BUILD_DIR% ^
c_glib || exit /B
sed -i'' -s 's/\r//g' %C_GLIB_BUILD_DIR%/arrow-glib/version.h || exit /B
ninja -C %C_GLIB_BUILD_DIR% || exit /B
ninja -C %C_GLIB_BUILD_DIR% install || exit /B
ruby c_glib\test\run-test.rb || exit /B
pushd ruby\red-arrow
ruby -S bundle install || exit /B
pacman --remove --noconfirm "%MINGW_PACKAGE_PREFIX%-arrow" || exit /B
ruby -rdevkit test\run-test.rb || exit /B
popd
pushd ruby\red-parquet
ruby -S bundle install || exit /B
pacman --remove --noconfirm "%MINGW_PACKAGE_PREFIX%-arrow" || exit /B
ruby test\run-test.rb || exit /B
popd