diff options
author | Christian Heimes <christian@python.org> | 2021-12-18 14:54:02 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-18 14:54:02 (GMT) |
commit | 0339434835aa74dc78a38ae12ea7d2973c144eb1 (patch) | |
tree | 63e143ba11625131ba0d9e90dc09d96953337454 /Tools/wasm/config.site-wasm32-emscripten | |
parent | ae36cd1e792db9d6db4c6847ec2a7d50a71f2b68 (diff) | |
download | cpython-0339434835aa74dc78a38ae12ea7d2973c144eb1.zip cpython-0339434835aa74dc78a38ae12ea7d2973c144eb1.tar.gz cpython-0339434835aa74dc78a38ae12ea7d2973c144eb1.tar.bz2 |
bpo-40280: Add Tools/wasm with helpers for cross building (GH-29984)
Co-authored-by: Ethan Smith <ethan@ethanhs.me>
Co-authored-by: Brett Cannon <brett@python.org>
Diffstat (limited to 'Tools/wasm/config.site-wasm32-emscripten')
-rw-r--r-- | Tools/wasm/config.site-wasm32-emscripten | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/Tools/wasm/config.site-wasm32-emscripten b/Tools/wasm/config.site-wasm32-emscripten new file mode 100644 index 0000000..67304be --- /dev/null +++ b/Tools/wasm/config.site-wasm32-emscripten @@ -0,0 +1,70 @@ +# config.site override for cross compiling to wasm32-emscripten platform +# +# CONFIG_SITE=Tools/wasm/config.site-wasm32-emscripten \ +# emconfigure ./configure --host=wasm32-unknown-emscripten --build=... +# +# Written by Christian Heimes <christian@python.org> +# Partly based on pyodide's pyconfig.undefs.h file. +# + +# cannot be detected in cross builds +ac_cv_buggy_getaddrinfo=no + +# Emscripten has no /dev/pt* +ac_cv_file__dev_ptmx=no +ac_cv_file__dev_ptc=no + +# dummy readelf, Emscripten build does not need readelf. +ac_cv_prog_ac_ct_READELF=true + +# new undefined symbols / unsupported features +ac_cv_func_posix_spawn=no +ac_cv_func_posix_spawnp=no +ac_cv_func_eventfd=no +ac_cv_func_memfd_create=no +ac_cv_func_prlimit=no + +# unsupported syscall, https://github.com/emscripten-core/emscripten/issues/13393 +ac_cv_func_shutdown=no + +# breaks build, see https://github.com/ethanhs/python-wasm/issues/16 +ac_cv_lib_bz2_BZ2_bzCompress=no + +# The rest is based on pyodide +# https://github.com/pyodide/pyodide/blob/main/cpython/pyconfig.undefs.h + +ac_cv_func_epoll=no +ac_cv_func_epoll_create1=no +ac_cv_header_linux_vm_sockets_h=no +ac_cv_func_socketpair=no +ac_cv_func_utimensat=no +ac_cv_func_sigaction=no + +# Untested syscalls in emscripten +ac_cv_func_openat=no +ac_cv_func_mkdirat=no +ac_cv_func_fchownat=no +ac_cv_func_renameat=no +ac_cv_func_linkat=no +ac_cv_func_symlinkat=no +ac_cv_func_readlinkat=no +ac_cv_func_fchmodat=no +ac_cv_func_dup3=no + +# Syscalls not implemented in emscripten +ac_cv_func_preadv2=no +ac_cv_func_preadv=no +ac_cv_func_pwritev2=no +ac_cv_func_pwritev=no +ac_cv_func_pipe2=no +ac_cv_func_nice=no + +# Syscalls that resulted in a segfault +ac_cv_func_utimensat=no +ac_cv_header_sys_ioctl_h=no + +# sockets are supported, but only in non-blocking mode +# ac_cv_header_sys_socket_h=no + +# Unsupported functionality +#undef HAVE_PTHREAD_H |