WillAyd commented on code in PR #45824:
URL: https://github.com/apache/arrow/pull/45824#discussion_r2004250587


##########
cpp/src/arrow/util/meson.build:
##########
@@ -92,3 +92,242 @@ configure_file(
     configuration: internal_conf_data,
     format: 'cmake@',
 )
+
+install_headers(
+    [
+        'algorithm.h',
+        'aligned_storage.h',
+        'align_util.h',
+        'async_generator_fwd.h',
+        'async_generator.h',
+        'async_util.h',
+        'base64.h',
+        'basic_decimal.h',
+        'benchmark_util.h',
+        'binary_view_util.h',
+        'bit_block_counter.h',
+        'bitmap_builders.h',
+        'bitmap_generate.h',
+        'bitmap.h',
+        'bitmap_ops.h',
+        'bitmap_reader.h',
+        'bitmap_visit.h',
+        'bitmap_writer.h',
+        'bit_run_reader.h',
+        'bitset_stack.h',
+        'bit_util.h',
+        'bpacking64_default.h',
+        'bpacking_avx2.h',
+        'bpacking_avx512.h',
+        'bpacking_default.h',
+        'bpacking.h',
+        'bpacking_neon.h',
+        'byte_size.h',
+        'cancel.h',
+        'checked_cast.h',
+        'compare.h',
+        'compression.h',
+        'concurrent_map.h',
+        'converter.h',
+        'counting_semaphore.h',
+        'cpu_info.h',
+        'crc32.h',
+        'debug.h',
+        'decimal.h',
+        'delimiting.h',
+        'dict_util.h',
+        'dispatch.h',
+        'double_conversion.h',
+        'endian.h',
+        'float16.h',
+        'formatting.h',
+        'functional.h',
+        'future.h',
+        'hashing.h',
+        'hash_util.h',
+        'int_util.h',
+        'int_util_overflow.h',
+        'io_util.h',
+        'iterator.h',
+        'key_value_metadata.h',
+        'launder.h',
+        'list_util.h',
+        'logger.h',
+        'logging.h',
+        'macros.h',
+        'map.h',
+        'math_constants.h',
+        'memory.h',
+        'mutex.h',
+        'parallel.h',
+        'pcg_random.h',
+        'prefetch.h',
+        'print.h',
+        'queue.h',
+        'range.h',
+        'ree_util.h',
+        'regex.h',
+        'rows_to_batches.h',
+        'simd.h',
+        'small_vector.h',
+        'sort.h',
+        'spaced.h',
+        'span.h',
+        'stopwatch.h',
+        'string_builder.h',
+        'string.h',
+        'task_group.h',
+        'tdigest.h',
+        'test_common.h',
+        'thread_pool.h',
+        'time.h',
+        'tracing.h',
+        'trie.h',
+        'type_fwd.h',
+        'type_traits.h',
+        'ubsan.h',
+        'union_util.h',
+        'unreachable.h',
+        'uri.h',
+        'utf8.h',
+        'value_parsing.h',
+        'vector.h',
+        'visibility.h',
+        'windows_compatibility.h',
+        'windows_fixup.h',
+    ],
+    subdir: 'arrow/util',
+)
+
+utility_test_srcs = [
+    'align_util_test.cc',
+    'atfork_test.cc',
+    'byte_size_test.cc',
+    'byte_stream_split_test.cc',
+    'cache_test.cc',
+    'checked_cast_test.cc',
+    'compression_test.cc',
+    'decimal_test.cc',
+    'float16_test.cc',
+    'fixed_width_test.cc',
+    'formatting_util_test.cc',
+    'key_value_metadata_test.cc',
+    'hashing_test.cc',
+    'int_util_test.cc',
+    'io_util_test.cc',
+    'iterator_test.cc',
+    'list_util_test.cc',
+    'logger_test.cc',
+    'logging_test.cc',
+    'math_test.cc',
+    'queue_test.cc',
+    'range_test.cc',
+    'ree_util_test.cc',
+    'reflection_test.cc',
+    'rows_to_batches_test.cc',
+    'small_vector_test.cc',
+    'span_test.cc',
+    'stl_util_test.cc',
+    'string_test.cc',
+    'tdigest_test.cc',
+    'test_common.cc',
+    'time_test.cc',
+    'tracing_test.cc',
+    'trie_test.cc',
+    'uri_test.cc',
+    'utf8_util_test.cc',
+    'value_parsing_test.cc',
+]
+
+if host_machine.system() == 'windows'
+    # This manifest enables long file paths on Windows 10+
+    # See 
https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file#enable-long-paths-in-windows-10-version-1607-and-later
+    if cpp_compiler.get_id() == 'msvc'
+        utility_test_sources += ['io_util_test.manifest']
+    else
+        utility_test_sources += ['io_util_test.rc']
+    endif
+endif
+
+exc = executable(
+    'arrow-utility-test',
+    sources: utility_test_srcs,
+    dependencies: [arrow_dep, filesystem_dep, gtest_dep, gmock_dep],
+    link_with: [arrow_test_lib],
+    implicit_include_directories: false,
+)
+test('arrow-utility-test', exc)
+
+util_tests = {
+    'arrow-async-utility-test': {
+        'sources': [
+            'async_generator_test.cc',
+            'async_util_test.cc',
+            'test_common.cc',
+        ],
+    },
+    'arrow-bit-utility-test': {
+        'sources': [
+            'bit_block_counter_test.cc',
+            'bit_util_test.cc',
+            'rle_encoding_test.cc',
+        ],
+    },
+    'arrow-threading-utility-test': {
+        'sources': [
+            'cancel_test.cc',
+            'counting_semaphore_test.cc',
+            'future_test.cc',
+            'task_group_test.cc',
+            'test_common.cc',
+            'thread_pool_test.cc',
+        ],
+    },
+    'arrow-crc32-test': {
+        'sources': ['crc32_test.cc'],
+        'dependencies': [filesystem_dep],
+    },
+}
+
+if needs_tests

Review Comment:
   Nice catch on the arrow-utility-test - I can do that.
   
   With respect to the `if needs_tests`, it depends how much we want to adhere 
to what CMake has in place. In fact, we used to use that same condition, but I 
had to change it from `if needs_tests` to `if needs_testing` in the benchmarks 
PR. 
   
   https://github.com/apache/arrow/pull/45793/files
   
   Unless I am misreading the CMake configuration (which is certainly possible) 
it seems like it is possible to disable tests but turn the benchmarks on. In 
such a case, you would still need the current `arrow_test_dep` dependency to 
build benchmarks; the change you are proposing would add a dependency between 
the test suite and benchmark suite



-- 
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: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to