kou commented on code in PR #47282:
URL: https://github.com/apache/arrow/pull/47282#discussion_r2289698449
##########
.github/workflows/cpp_extra.yml:
##########
@@ -278,3 +279,70 @@ jobs:
cmake --build cpp/examples/minimal_build.build
cd cpp/examples/minimal_build
../minimal_build.build/arrow-example
+
+ meson-windows:
+ needs: check-labels
+ name: ${{ matrix.title }}
+ runs-on: ${{ matrix.runs-on }}
+ if: needs.check-labels.outputs.ci-extra == 'true'
+ timeout-minutes: 75
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - runs-on: windows-2022
+ title: AMD64 Windows Meson
+ steps:
+ - name: Checkout Arrow
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ submodules: recursive
+ - name: Download Timezone Database
+ shell: bash
+ run: ci/scripts/download_tz_database.sh
+ - name: Install ccache
+ shell: bash
+ run: |
+ ci/scripts/install_ccache.sh 4.6.3 /usr
+ - name: Setup ccache
+ shell: bash
+ run: |
+ ci/scripts/ccache_setup.sh
+ - name: ccache info
+ id: ccache-info
+ shell: bash
+ run: |
+ echo "cache-dir=$(ccache --get-config cache_dir)" >> $GITHUB_OUTPUT
+ - name: Cache ccache
+ uses: actions/cache@v4
+ with:
+ path: ${{ steps.ccache-info.outputs.cache-dir }}
+ key: cpp-ccache-windows-meson-${{ env.CACHE_VERSION }}-${{
hashFiles('cpp/**') }}
+ restore-keys: cpp-ccache-windows-meson-${{ env.CACHE_VERSION }}-
+ env:
+ # We can invalidate the current cache by updating this.
+ CACHE_VERSION: "2022-09-13"
Review Comment:
Could you update this date?
##########
cpp/src/arrow/compute/CMakeLists.txt:
##########
@@ -52,6 +52,7 @@ if(ARROW_TESTING AND ARROW_COMPUTE)
target_link_libraries(arrow_compute_testing
PUBLIC $<TARGET_OBJECTS:arrow_compute_core_testing>
PUBLIC ${ARROW_GTEST_GTEST_MAIN})
+ target_compile_definitions(arrow_compute_testing PRIVATE COMPILED_BY_CMAKE)
Review Comment:
Hmm. What is the difference between Meson build and CMake build? GTest
version?
##########
cpp/src/arrow/flight/meson.build:
##########
@@ -44,7 +44,17 @@ install_headers(
subdir: 'arrow/flight',
)
-grpc_dep = dependency('grpc++')
+# We specifically need to use the grpc subproject and cannot use a system
installion
+# due to https://github.com/mesonbuild/meson/issues/14905
Review Comment:
Can we use
https://mesonbuild.com/Reference-manual_returned_external_program.html#external_programfull_path
as workaround?
If we can use `grpc_cpp_plugin.full_path()`, can we keep supporting system
gRPC?
##########
ci/scripts/cpp_test.sh:
##########
@@ -95,6 +95,8 @@ if [ "${ARROW_USE_MESON:-OFF}" = "ON" ]; then
--no-rebuild \
--print-errorlogs \
--suite arrow \
+ --max-lines=0 \
+ --timeout-multiplier 10 \
Review Comment:
Can we unify `--XXX=V` and `-XXX V` style?
##########
cpp/src/arrow/flight/flight_test.cc:
##########
@@ -207,6 +207,9 @@ ARROW_FLIGHT_TEST_ASYNC_CLIENT(GrpcAsyncClientTest);
// Ad-hoc gRPC-specific tests
TEST(TestFlight, ConnectUri) {
+#ifndef ARROW_ENABLE_THREADING
+ GTEST_SKIP() << "This test requires Boost.Process to run";
+#endif
Review Comment:
How about adding `arrow::testing::Process::IsAvailable()` static method or
something and use it here?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]