Skip to content

Commit

Permalink
apacheGH-23221: [C++] Add support for building with Emscripten (apach…
Browse files Browse the repository at this point in the history
…e#37821)

Split from apache#37696 

This is just the cmake changes to enable building on emscripten.

Changes are:
1) Support for target system "emscripten"
2) Cmake preset for building libarrow ` ninja-release-python-emscripten` (same as `ninja-release-python`, but with emscripten support)
3) Override file for cmake on emscripten, to set various build parameters that need setting to make it build there.
4) Changes in pyarrow cmake so it works if you are building libarrow as shared library, and also an option to enable the cmake file there to just dump the current arrow configuration, which is useful for cross-compile builds.

* Closes: apache#23221

Lead-authored-by: Joe Marshall <joe.marshall@nottingham.ac.uk>
Co-authored-by: Sutou Kouhei <kou@clear-code.com>
Co-authored-by: Joris Van den Bossche <jorisvandenbossche@gmail.com>
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
  • Loading branch information
4 people authored and rok committed May 8, 2024
1 parent dcbc2d1 commit 866af2d
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 2 deletions.
1 change: 0 additions & 1 deletion ci/scripts/cpp_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,6 @@ else
-DARROW_USE_CCACHE=${ARROW_USE_CCACHE:-ON} \
-DARROW_USE_GLOG=${ARROW_USE_GLOG:-OFF} \
-DARROW_USE_LD_GOLD=${ARROW_USE_LD_GOLD:-OFF} \
-DARROW_USE_LLD=${ARROW_USE_LLD:-OFF} \
-DARROW_USE_MOLD=${ARROW_USE_MOLD:-OFF} \
-DARROW_USE_PRECOMPILED_HEADERS=${ARROW_USE_PRECOMPILED_HEADERS:-OFF} \
-DARROW_USE_STATIC_CRT=${ARROW_USE_STATIC_CRT:-OFF} \
Expand Down
1 change: 0 additions & 1 deletion cpp/cmake_modules/SetupCxxFlags.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -314,7 +314,6 @@ if("${BUILD_WARNING_LEVEL}" STREQUAL "CHECKIN")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wall")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wextra")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wdocumentation")
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -DARROW_WARN_DOCUMENTATION")
if(CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
# size_t is 32 bit in Emscripten wasm32 - ignore conversion errors
set(CXX_COMMON_FLAGS "${CXX_COMMON_FLAGS} -Wno-shorten-64-to-32")
Expand Down

0 comments on commit 866af2d

Please sign in to comment.