From 7a831bc05ee982ba049a21c622ab2d40c73be7f9 Mon Sep 17 00:00:00 2001 From: Will Ayd Date: Wed, 12 Jun 2024 11:23:45 -0400 Subject: [PATCH 1/4] refactor: Remove CMake requirement from Meson IPC config --- src/nanoarrow/meson.build | 6 +----- subprojects/flatcc.wrap | 3 +++ 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/nanoarrow/meson.build b/src/nanoarrow/meson.build index ccf59c990..521cc5346 100644 --- a/src/nanoarrow/meson.build +++ b/src/nanoarrow/meson.build @@ -65,11 +65,7 @@ nanoarrow_dep = declare_dependency(include_directories: [curdir, incdir], link_with: nanoarrow_lib) if get_option('ipc') - cmake = import('cmake') - cmake_opts = cmake.subproject_options() - cmake_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': true}) - flatcc_subproj = cmake.subproject('flatcc', options: cmake_opts) - flatcc_dep = flatcc_subproj.dependency('flatccrt') + flatcc_dep = dependency('flatcc') nanoarrow_ipc_lib = build_target( 'nanoarrow_ipc', diff --git a/subprojects/flatcc.wrap b/subprojects/flatcc.wrap index 311425ae2..811cf38c9 100644 --- a/subprojects/flatcc.wrap +++ b/subprojects/flatcc.wrap @@ -21,3 +21,6 @@ source_url = https://github.com/dvidelabs/flatcc/archive/refs/tags/v0.6.1.tar.gz source_filename = flatcc-0.6.1.tar.gz source_hash = 2533c2f1061498499f15acc7e0937dcf35bc68e685d237325124ae0d6c600c2b patch_directory = flatcc + +[provide] +flatcc = flatcc_dep From 7ecee2203896eb4f47a281c31e5fca0b5e32722e Mon Sep 17 00:00:00 2001 From: Will Ayd Date: Wed, 12 Jun 2024 11:36:21 -0400 Subject: [PATCH 2/4] Add IPC option to CI --- ci/scripts/build-with-meson.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/scripts/build-with-meson.sh b/ci/scripts/build-with-meson.sh index cd76c6db8..85bff22bd 100755 --- a/ci/scripts/build-with-meson.sh +++ b/ci/scripts/build-with-meson.sh @@ -66,7 +66,7 @@ function main() { pushd "${SANDBOX_DIR}" show_header "Run test suite" - meson configure -Dtests=true -Db_coverage=true + meson configure -Dtests=true -Db_coverage=true -Dipc=true meson compile meson test --wrap='valgrind --track-origins=yes --leak-check=full' --print-errorlogs From b304ed6ffeb21ecbe2fcb3ab35633addbddc3335 Mon Sep 17 00:00:00 2001 From: Will Ayd Date: Wed, 12 Jun 2024 11:47:14 -0400 Subject: [PATCH 3/4] Increased IPC timeout --- src/nanoarrow/meson.build | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/nanoarrow/meson.build b/src/nanoarrow/meson.build index 521cc5346..1218e3644 100644 --- a/src/nanoarrow/meson.build +++ b/src/nanoarrow/meson.build @@ -168,9 +168,14 @@ if get_option('tests') ipc_test_files = { 'nanoarrow-ipc-decoder': { 'deps': [nanoarrow_ipc_dep, arrow_dep, gtest_dep], + "timeout": 30, }, 'nanoarrow-ipc-reader': { 'deps': [nanoarrow_ipc_dep, arrow_dep, gtest_dep], + # the ipc reader test can take longer when executed + # under valgrind, hence the increased timeout + "timeout": 90, + }, 'nanoarrow-ipc-files': { 'deps': [ @@ -180,9 +185,11 @@ if get_option('tests') gtest_dep, nlohmann_json_dep ], + "timeout": 30, }, 'nanoarrow-ipc-hpp': { 'deps': [nanoarrow_ipc_dep, gtest_dep], + "timeout": 30, }, } @@ -192,7 +199,7 @@ if get_option('tests') name.replace('-', '_') + '_test.cc', dependencies: config['deps'] ) - test(name, exc) + test(name, exc, timeout: config['timeout']) endforeach endif endif From f2089d5108624ea2205e829c08a1c5b2b96058af Mon Sep 17 00:00:00 2001 From: Will Ayd Date: Wed, 12 Jun 2024 11:49:24 -0400 Subject: [PATCH 4/4] syntax fix --- src/nanoarrow/meson.build | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/nanoarrow/meson.build b/src/nanoarrow/meson.build index 1218e3644..e96d98b16 100644 --- a/src/nanoarrow/meson.build +++ b/src/nanoarrow/meson.build @@ -168,13 +168,13 @@ if get_option('tests') ipc_test_files = { 'nanoarrow-ipc-decoder': { 'deps': [nanoarrow_ipc_dep, arrow_dep, gtest_dep], - "timeout": 30, + 'timeout': 30, }, 'nanoarrow-ipc-reader': { 'deps': [nanoarrow_ipc_dep, arrow_dep, gtest_dep], # the ipc reader test can take longer when executed # under valgrind, hence the increased timeout - "timeout": 90, + 'timeout': 90, }, 'nanoarrow-ipc-files': { @@ -185,11 +185,11 @@ if get_option('tests') gtest_dep, nlohmann_json_dep ], - "timeout": 30, + 'timeout': 30, }, 'nanoarrow-ipc-hpp': { 'deps': [nanoarrow_ipc_dep, gtest_dep], - "timeout": 30, + 'timeout': 30, }, }