@@ -92,112 +92,132 @@ esac
92
92
mkdir -p ${build_dir}
93
93
pushd ${build_dir}
94
94
95
- cmake \
96
- -Dabsl_SOURCE=${absl_SOURCE:- } \
97
- -DARROW_ACERO=${ARROW_ACERO:- OFF} \
98
- -DARROW_AZURE=${ARROW_AZURE:- OFF} \
99
- -DARROW_BOOST_USE_SHARED=${ARROW_BOOST_USE_SHARED:- ON} \
100
- -DARROW_BUILD_BENCHMARKS_REFERENCE=${ARROW_BUILD_BENCHMARKS:- OFF} \
101
- -DARROW_BUILD_BENCHMARKS=${ARROW_BUILD_BENCHMARKS:- OFF} \
102
- -DARROW_BUILD_EXAMPLES=${ARROW_BUILD_EXAMPLES:- OFF} \
103
- -DARROW_BUILD_INTEGRATION=${ARROW_BUILD_INTEGRATION:- OFF} \
104
- -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED:- ON} \
105
- -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC:- ON} \
106
- -DARROW_BUILD_TESTS=${ARROW_BUILD_TESTS:- OFF} \
107
- -DARROW_BUILD_UTILITIES=${ARROW_BUILD_UTILITIES:- ON} \
108
- -DARROW_COMPUTE=${ARROW_COMPUTE:- ON} \
109
- -DARROW_CSV=${ARROW_CSV:- ON} \
110
- -DARROW_CUDA=${ARROW_CUDA:- OFF} \
111
- -DARROW_CXXFLAGS=${ARROW_CXXFLAGS:- } \
112
- -DARROW_CXX_FLAGS_DEBUG=" ${ARROW_CXX_FLAGS_DEBUG:- } " \
113
- -DARROW_CXX_FLAGS_RELEASE=" ${ARROW_CXX_FLAGS_RELEASE:- } " \
114
- -DARROW_CXX_FLAGS_RELWITHDEBINFO=" ${ARROW_CXX_FLAGS_RELWITHDEBINFO:- } " \
115
- -DARROW_C_FLAGS_DEBUG=" ${ARROW_C_FLAGS_DEBUG:- } " \
116
- -DARROW_C_FLAGS_RELEASE=" ${ARROW_C_FLAGS_RELEASE:- } " \
117
- -DARROW_C_FLAGS_RELWITHDEBINFO=" ${ARROW_C_FLAGS_RELWITHDEBINFO:- } " \
118
- -DARROW_DATASET=${ARROW_DATASET:- OFF} \
119
- -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE:- AUTO} \
120
- -DARROW_ENABLE_THREADING=${ARROW_ENABLE_THREADING:- ON} \
121
- -DARROW_ENABLE_TIMING_TESTS=${ARROW_ENABLE_TIMING_TESTS:- ON} \
122
- -DARROW_EXTRA_ERROR_CONTEXT=${ARROW_EXTRA_ERROR_CONTEXT:- OFF} \
123
- -DARROW_FILESYSTEM=${ARROW_FILESYSTEM:- ON} \
124
- -DARROW_FLIGHT=${ARROW_FLIGHT:- OFF} \
125
- -DARROW_FLIGHT_SQL=${ARROW_FLIGHT_SQL:- OFF} \
126
- -DARROW_FUZZING=${ARROW_FUZZING:- OFF} \
127
- -DARROW_GANDIVA_PC_CXX_FLAGS=${ARROW_GANDIVA_PC_CXX_FLAGS:- } \
128
- -DARROW_GANDIVA=${ARROW_GANDIVA:- OFF} \
129
- -DARROW_GCS=${ARROW_GCS:- OFF} \
130
- -DARROW_HDFS=${ARROW_HDFS:- ON} \
131
- -DARROW_INSTALL_NAME_RPATH=${ARROW_INSTALL_NAME_RPATH:- ON} \
132
- -DARROW_JEMALLOC=${ARROW_JEMALLOC:- ON} \
133
- -DARROW_JSON=${ARROW_JSON:- ON} \
134
- -DARROW_LARGE_MEMORY_TESTS=${ARROW_LARGE_MEMORY_TESTS:- OFF} \
135
- -DARROW_MIMALLOC=${ARROW_MIMALLOC:- OFF} \
136
- -DARROW_NO_DEPRECATED_API=${ARROW_NO_DEPRECATED_API:- OFF} \
137
- -DARROW_ORC=${ARROW_ORC:- OFF} \
138
- -DARROW_PARQUET=${ARROW_PARQUET:- OFF} \
139
- -DARROW_RUNTIME_SIMD_LEVEL=${ARROW_RUNTIME_SIMD_LEVEL:- MAX} \
140
- -DARROW_S3=${ARROW_S3:- OFF} \
141
- -DARROW_SIMD_LEVEL=${ARROW_SIMD_LEVEL:- DEFAULT} \
142
- -DARROW_SKYHOOK=${ARROW_SKYHOOK:- OFF} \
143
- -DARROW_SUBSTRAIT=${ARROW_SUBSTRAIT:- OFF} \
144
- -DARROW_TEST_LINKAGE=${ARROW_TEST_LINKAGE:- shared} \
145
- -DARROW_TEST_MEMCHECK=${ARROW_TEST_MEMCHECK:- OFF} \
146
- -DARROW_USE_ASAN=${ARROW_USE_ASAN:- OFF} \
147
- -DARROW_USE_CCACHE=${ARROW_USE_CCACHE:- ON} \
148
- -DARROW_USE_GLOG=${ARROW_USE_GLOG:- OFF} \
149
- -DARROW_USE_LD_GOLD=${ARROW_USE_LD_GOLD:- OFF} \
150
- -DARROW_USE_MOLD=${ARROW_USE_MOLD:- OFF} \
151
- -DARROW_USE_PRECOMPILED_HEADERS=${ARROW_USE_PRECOMPILED_HEADERS:- OFF} \
152
- -DARROW_USE_STATIC_CRT=${ARROW_USE_STATIC_CRT:- OFF} \
153
- -DARROW_USE_TSAN=${ARROW_USE_TSAN:- OFF} \
154
- -DARROW_USE_UBSAN=${ARROW_USE_UBSAN:- OFF} \
155
- -DARROW_VERBOSE_THIRDPARTY_BUILD=${ARROW_VERBOSE_THIRDPARTY_BUILD:- OFF} \
156
- -DARROW_WITH_BROTLI=${ARROW_WITH_BROTLI:- OFF} \
157
- -DARROW_WITH_BZ2=${ARROW_WITH_BZ2:- OFF} \
158
- -DARROW_WITH_LZ4=${ARROW_WITH_LZ4:- OFF} \
159
- -DARROW_WITH_OPENTELEMETRY=${ARROW_WITH_OPENTELEMETRY:- OFF} \
160
- -DARROW_WITH_MUSL=${ARROW_WITH_MUSL:- OFF} \
161
- -DARROW_WITH_SNAPPY=${ARROW_WITH_SNAPPY:- OFF} \
162
- -DARROW_WITH_UCX=${ARROW_WITH_UCX:- OFF} \
163
- -DARROW_WITH_UTF8PROC=${ARROW_WITH_UTF8PROC:- ON} \
164
- -DARROW_WITH_ZLIB=${ARROW_WITH_ZLIB:- OFF} \
165
- -DARROW_WITH_ZSTD=${ARROW_WITH_ZSTD:- OFF} \
166
- -DAWSSDK_SOURCE=${AWSSDK_SOURCE:- } \
167
- -DAzure_SOURCE=${Azure_SOURCE:- } \
168
- -Dbenchmark_SOURCE=${benchmark_SOURCE:- } \
169
- -DBOOST_SOURCE=${BOOST_SOURCE:- } \
170
- -DBrotli_SOURCE=${Brotli_SOURCE:- } \
171
- -DBUILD_WARNING_LEVEL=${BUILD_WARNING_LEVEL:- CHECKIN} \
172
- -Dc-ares_SOURCE=${cares_SOURCE:- } \
173
- -DCMAKE_BUILD_TYPE=${ARROW_BUILD_TYPE:- debug} \
174
- -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE:- OFF} \
175
- -DCMAKE_C_FLAGS=" ${CFLAGS:- } " \
176
- -DCMAKE_CXX_FLAGS=" ${CXXFLAGS:- } " \
177
- -DCMAKE_CXX_STANDARD=" ${CMAKE_CXX_STANDARD:- 17} " \
178
- -DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR:- lib} \
179
- -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX:- ${ARROW_HOME} } \
180
- -DCMAKE_UNITY_BUILD=${CMAKE_UNITY_BUILD:- OFF} \
181
- -Dgflags_SOURCE=${gflags_SOURCE:- } \
182
- -Dgoogle_cloud_cpp_storage_SOURCE=${google_cloud_cpp_storage_SOURCE:- } \
183
- -DgRPC_SOURCE=${gRPC_SOURCE:- } \
184
- -DGTest_SOURCE=${GTest_SOURCE:- } \
185
- -Dlz4_SOURCE=${lz4_SOURCE:- } \
186
- -DORC_SOURCE=${ORC_SOURCE:- } \
187
- -DPARQUET_BUILD_EXAMPLES=${PARQUET_BUILD_EXAMPLES:- OFF} \
188
- -DPARQUET_BUILD_EXECUTABLES=${PARQUET_BUILD_EXECUTABLES:- OFF} \
189
- -DPARQUET_REQUIRE_ENCRYPTION=${PARQUET_REQUIRE_ENCRYPTION:- ON} \
190
- -DProtobuf_SOURCE=${Protobuf_SOURCE:- } \
191
- -DRapidJSON_SOURCE=${RapidJSON_SOURCE:- } \
192
- -Dre2_SOURCE=${re2_SOURCE:- } \
193
- -DSnappy_SOURCE=${Snappy_SOURCE:- } \
194
- -DThrift_SOURCE=${Thrift_SOURCE:- } \
195
- -Dutf8proc_SOURCE=${utf8proc_SOURCE:- } \
196
- -Dzstd_SOURCE=${zstd_SOURCE:- } \
197
- -Dxsimd_SOURCE=${xsimd_SOURCE:- } \
198
- -G " ${CMAKE_GENERATOR:- Ninja} " \
199
- ${ARROW_CMAKE_ARGS} \
200
- ${source_dir}
95
+ if [ " ${ARROW_EMSCRIPTEN:- OFF} " = " ON" ]; then
96
+ if [ " ${UBUNTU} " = " 20.04" ]; then
97
+ echo " arrow emscripten build is not supported on Ubuntu 20.04, run with UBUNTU=22.04"
98
+ exit -1
99
+ fi
100
+ n_jobs=2 # Emscripten build fails on docker unless this is set really low
101
+ source ~ /emsdk/emsdk_env.sh
102
+ emcmake cmake \
103
+ --preset=ninja-${ARROW_BUILD_TYPE:- debug} -emscripten \
104
+ -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE:- OFF} \
105
+ -DCMAKE_C_FLAGS=" ${CFLAGS:- } " \
106
+ -DCMAKE_CXX_FLAGS=" ${CXXFLAGS:- } " \
107
+ -DCMAKE_CXX_STANDARD=" ${CMAKE_CXX_STANDARD:- 17} " \
108
+ -DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR:- lib} \
109
+ -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX:- ${ARROW_HOME} } \
110
+ -DCMAKE_UNITY_BUILD=${CMAKE_UNITY_BUILD:- OFF} \
111
+ ${ARROW_CMAKE_ARGS} \
112
+ ${source_dir}
113
+ else
114
+ cmake \
115
+ -Dabsl_SOURCE=${absl_SOURCE:- } \
116
+ -DARROW_ACERO=${ARROW_ACERO:- OFF} \
117
+ -DARROW_AZURE=${ARROW_AZURE:- OFF} \
118
+ -DARROW_BOOST_USE_SHARED=${ARROW_BOOST_USE_SHARED:- ON} \
119
+ -DARROW_BUILD_BENCHMARKS_REFERENCE=${ARROW_BUILD_BENCHMARKS:- OFF} \
120
+ -DARROW_BUILD_BENCHMARKS=${ARROW_BUILD_BENCHMARKS:- OFF} \
121
+ -DARROW_BUILD_EXAMPLES=${ARROW_BUILD_EXAMPLES:- OFF} \
122
+ -DARROW_BUILD_INTEGRATION=${ARROW_BUILD_INTEGRATION:- OFF} \
123
+ -DARROW_BUILD_SHARED=${ARROW_BUILD_SHARED:- ON} \
124
+ -DARROW_BUILD_STATIC=${ARROW_BUILD_STATIC:- ON} \
125
+ -DARROW_BUILD_TESTS=${ARROW_BUILD_TESTS:- OFF} \
126
+ -DARROW_BUILD_UTILITIES=${ARROW_BUILD_UTILITIES:- ON} \
127
+ -DARROW_COMPUTE=${ARROW_COMPUTE:- ON} \
128
+ -DARROW_CSV=${ARROW_CSV:- ON} \
129
+ -DARROW_CUDA=${ARROW_CUDA:- OFF} \
130
+ -DARROW_CXXFLAGS=${ARROW_CXXFLAGS:- } \
131
+ -DARROW_CXX_FLAGS_DEBUG=" ${ARROW_CXX_FLAGS_DEBUG:- } " \
132
+ -DARROW_CXX_FLAGS_RELEASE=" ${ARROW_CXX_FLAGS_RELEASE:- } " \
133
+ -DARROW_CXX_FLAGS_RELWITHDEBINFO=" ${ARROW_CXX_FLAGS_RELWITHDEBINFO:- } " \
134
+ -DARROW_C_FLAGS_DEBUG=" ${ARROW_C_FLAGS_DEBUG:- } " \
135
+ -DARROW_C_FLAGS_RELEASE=" ${ARROW_C_FLAGS_RELEASE:- } " \
136
+ -DARROW_C_FLAGS_RELWITHDEBINFO=" ${ARROW_C_FLAGS_RELWITHDEBINFO:- } " \
137
+ -DARROW_DATASET=${ARROW_DATASET:- OFF} \
138
+ -DARROW_DEPENDENCY_SOURCE=${ARROW_DEPENDENCY_SOURCE:- AUTO} \
139
+ -DARROW_ENABLE_THREADING=${ARROW_ENABLE_THREADING:- ON} \
140
+ -DARROW_ENABLE_TIMING_TESTS=${ARROW_ENABLE_TIMING_TESTS:- ON} \
141
+ -DARROW_EXTRA_ERROR_CONTEXT=${ARROW_EXTRA_ERROR_CONTEXT:- OFF} \
142
+ -DARROW_FILESYSTEM=${ARROW_FILESYSTEM:- ON} \
143
+ -DARROW_FLIGHT=${ARROW_FLIGHT:- OFF} \
144
+ -DARROW_FLIGHT_SQL=${ARROW_FLIGHT_SQL:- OFF} \
145
+ -DARROW_FUZZING=${ARROW_FUZZING:- OFF} \
146
+ -DARROW_GANDIVA_PC_CXX_FLAGS=${ARROW_GANDIVA_PC_CXX_FLAGS:- } \
147
+ -DARROW_GANDIVA=${ARROW_GANDIVA:- OFF} \
148
+ -DARROW_GCS=${ARROW_GCS:- OFF} \
149
+ -DARROW_HDFS=${ARROW_HDFS:- ON} \
150
+ -DARROW_INSTALL_NAME_RPATH=${ARROW_INSTALL_NAME_RPATH:- ON} \
151
+ -DARROW_JEMALLOC=${ARROW_JEMALLOC:- ON} \
152
+ -DARROW_JSON=${ARROW_JSON:- ON} \
153
+ -DARROW_LARGE_MEMORY_TESTS=${ARROW_LARGE_MEMORY_TESTS:- OFF} \
154
+ -DARROW_MIMALLOC=${ARROW_MIMALLOC:- OFF} \
155
+ -DARROW_NO_DEPRECATED_API=${ARROW_NO_DEPRECATED_API:- OFF} \
156
+ -DARROW_ORC=${ARROW_ORC:- OFF} \
157
+ -DARROW_PARQUET=${ARROW_PARQUET:- OFF} \
158
+ -DARROW_RUNTIME_SIMD_LEVEL=${ARROW_RUNTIME_SIMD_LEVEL:- MAX} \
159
+ -DARROW_S3=${ARROW_S3:- OFF} \
160
+ -DARROW_SIMD_LEVEL=${ARROW_SIMD_LEVEL:- DEFAULT} \
161
+ -DARROW_SKYHOOK=${ARROW_SKYHOOK:- OFF} \
162
+ -DARROW_SUBSTRAIT=${ARROW_SUBSTRAIT:- OFF} \
163
+ -DARROW_TEST_LINKAGE=${ARROW_TEST_LINKAGE:- shared} \
164
+ -DARROW_TEST_MEMCHECK=${ARROW_TEST_MEMCHECK:- OFF} \
165
+ -DARROW_USE_ASAN=${ARROW_USE_ASAN:- OFF} \
166
+ -DARROW_USE_CCACHE=${ARROW_USE_CCACHE:- ON} \
167
+ -DARROW_USE_GLOG=${ARROW_USE_GLOG:- OFF} \
168
+ -DARROW_USE_LD_GOLD=${ARROW_USE_LD_GOLD:- OFF} \
169
+ -DARROW_USE_MOLD=${ARROW_USE_MOLD:- OFF} \
170
+ -DARROW_USE_PRECOMPILED_HEADERS=${ARROW_USE_PRECOMPILED_HEADERS:- OFF} \
171
+ -DARROW_USE_STATIC_CRT=${ARROW_USE_STATIC_CRT:- OFF} \
172
+ -DARROW_USE_TSAN=${ARROW_USE_TSAN:- OFF} \
173
+ -DARROW_USE_UBSAN=${ARROW_USE_UBSAN:- OFF} \
174
+ -DARROW_VERBOSE_THIRDPARTY_BUILD=${ARROW_VERBOSE_THIRDPARTY_BUILD:- OFF} \
175
+ -DARROW_WITH_BROTLI=${ARROW_WITH_BROTLI:- OFF} \
176
+ -DARROW_WITH_BZ2=${ARROW_WITH_BZ2:- OFF} \
177
+ -DARROW_WITH_LZ4=${ARROW_WITH_LZ4:- OFF} \
178
+ -DARROW_WITH_OPENTELEMETRY=${ARROW_WITH_OPENTELEMETRY:- OFF} \
179
+ -DARROW_WITH_MUSL=${ARROW_WITH_MUSL:- OFF} \
180
+ -DARROW_WITH_SNAPPY=${ARROW_WITH_SNAPPY:- OFF} \
181
+ -DARROW_WITH_UCX=${ARROW_WITH_UCX:- OFF} \
182
+ -DARROW_WITH_UTF8PROC=${ARROW_WITH_UTF8PROC:- ON} \
183
+ -DARROW_WITH_ZLIB=${ARROW_WITH_ZLIB:- OFF} \
184
+ -DARROW_WITH_ZSTD=${ARROW_WITH_ZSTD:- OFF} \
185
+ -DAWSSDK_SOURCE=${AWSSDK_SOURCE:- } \
186
+ -DAzure_SOURCE=${Azure_SOURCE:- } \
187
+ -Dbenchmark_SOURCE=${benchmark_SOURCE:- } \
188
+ -DBOOST_SOURCE=${BOOST_SOURCE:- } \
189
+ -DBrotli_SOURCE=${Brotli_SOURCE:- } \
190
+ -DBUILD_WARNING_LEVEL=${BUILD_WARNING_LEVEL:- CHECKIN} \
191
+ -Dc-ares_SOURCE=${cares_SOURCE:- } \
192
+ -DCMAKE_BUILD_TYPE=${ARROW_BUILD_TYPE:- debug} \
193
+ -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE:- OFF} \
194
+ -DCMAKE_C_FLAGS=" ${CFLAGS:- } " \
195
+ -DCMAKE_CXX_FLAGS=" ${CXXFLAGS:- } " \
196
+ -DCMAKE_CXX_STANDARD=" ${CMAKE_CXX_STANDARD:- 17} " \
197
+ -DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR:- lib} \
198
+ -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX:- ${ARROW_HOME} } \
199
+ -DCMAKE_UNITY_BUILD=${CMAKE_UNITY_BUILD:- OFF} \
200
+ -Dgflags_SOURCE=${gflags_SOURCE:- } \
201
+ -Dgoogle_cloud_cpp_storage_SOURCE=${google_cloud_cpp_storage_SOURCE:- } \
202
+ -DgRPC_SOURCE=${gRPC_SOURCE:- } \
203
+ -DGTest_SOURCE=${GTest_SOURCE:- } \
204
+ -Dlz4_SOURCE=${lz4_SOURCE:- } \
205
+ -DORC_SOURCE=${ORC_SOURCE:- } \
206
+ -DPARQUET_BUILD_EXAMPLES=${PARQUET_BUILD_EXAMPLES:- OFF} \
207
+ -DPARQUET_BUILD_EXECUTABLES=${PARQUET_BUILD_EXECUTABLES:- OFF} \
208
+ -DPARQUET_REQUIRE_ENCRYPTION=${PARQUET_REQUIRE_ENCRYPTION:- ON} \
209
+ -DProtobuf_SOURCE=${Protobuf_SOURCE:- } \
210
+ -DRapidJSON_SOURCE=${RapidJSON_SOURCE:- } \
211
+ -Dre2_SOURCE=${re2_SOURCE:- } \
212
+ -DSnappy_SOURCE=${Snappy_SOURCE:- } \
213
+ -DThrift_SOURCE=${Thrift_SOURCE:- } \
214
+ -Dutf8proc_SOURCE=${utf8proc_SOURCE:- } \
215
+ -Dzstd_SOURCE=${zstd_SOURCE:- } \
216
+ -Dxsimd_SOURCE=${xsimd_SOURCE:- } \
217
+ -G " ${CMAKE_GENERATOR:- Ninja} " \
218
+ ${ARROW_CMAKE_ARGS} \
219
+ ${source_dir}
220
+ fi
201
221
202
222
export CMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL:- $[${n_jobs} + 1]}
203
223
time cmake --build . --target install
0 commit comments