@@ -26,10 +26,10 @@ project(
2626 ' arrow' ,
2727 ' cpp' ,
2828 ' c' ,
29- version : ' 21 .0.0' ,
29+ version : ' 22 .0.0' ,
3030 license : ' Apache-2.0' ,
3131 meson_version : ' >=1.3.0' ,
32- default_options : [' c_std=gnu11, c11' , ' warning_level=2' , ' cpp_std=c++17' ],
32+ default_options : [' c_std=c11' , ' warning_level=2' , ' cpp_std=c++17' ],
3333)
3434
3535project_args = [
@@ -81,14 +81,37 @@ needs_csv = get_option('csv').enabled()
8181needs_azure = get_option (' azure' ).enabled()
8282needs_gcs = get_option (' gcs' ).enabled()
8383needs_hdfs = get_option (' hdfs' ).enabled()
84+ needs_parquet = get_option (' parquet' ).enabled()
85+ needs_parquet_encryption = get_option (' parquet_require_encryption' ).enabled()
8486needs_s3 = get_option (' s3' ).enabled()
85- needs_filesystem = get_option (' filesystem' ).enabled() or needs_azure or needs_gcs or needs_hdfs or needs_s3
87+ needs_filesystem = (get_option (' filesystem' ).enabled()
88+ or needs_azure
89+ or needs_gcs
90+ or needs_hdfs
91+ or needs_parquet_encryption
92+ or needs_s3
93+ )
8694needs_integration = get_option (' integration' ).enabled()
8795needs_tests = get_option (' tests' ).enabled()
8896needs_acero = get_option (' acero' ).enabled()
8997needs_flight = get_option (' flight' ).enabled()
90- needs_ipc = get_option (' ipc' ).enabled() or needs_tests or needs_acero or needs_benchmarks or needs_flight
98+ needs_ipc = (get_option (' ipc' ).enabled()
99+ or needs_tests
100+ or needs_acero
101+ or needs_benchmarks
102+ or needs_flight
103+ or needs_parquet
104+ )
105+
91106needs_fuzzing = get_option (' fuzzing' ).enabled()
107+ if needs_fuzzing
108+ if meson .version() < ' 1.8.0'
109+ error (
110+ f' Meson >= 1.8.0 is required for fuzzing support, found @meson.version()@' ,
111+ )
112+ endif
113+ endif
114+
92115needs_testing = (get_option (' testing' ).enabled()
93116 or needs_tests
94117 or needs_benchmarks
@@ -105,3 +128,11 @@ needs_zstd = get_option('zstd').enabled()
105128needs_utilities = get_option (' utilities' ).enabled()
106129
107130subdir (' cpp/src/arrow' )
131+
132+ if needs_parquet
133+ subdir (' cpp/src/parquet' )
134+ subdir (' cpp/tools/parquet' )
135+ if get_option (' parquet_build_examples' ).enabled()
136+ subdir (' cpp/examples/parquet' )
137+ endif
138+ endif
0 commit comments