Commit Graph

100 Commits

Author SHA1 Message Date
Hood Chatham 4d09958ba0
Emscripten 3.1.29 (#3408) 2023-01-04 09:30:46 +09:00
Hood Chatham 8560319738
Make fs timestamps have millisecond resolution rather than second resolution (#3313)
Resolves https://github.com/pyodide/pyodide/issues/3311
2022-12-10 09:50:08 -08:00
Hood Chatham 2df7a286ee
Emscripten 3.1.26 (#3280) 2022-11-21 17:34:49 -08:00
Hood Chatham 3692ff8b22
Emscripten 3.1.25 (#3239)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>

Adds a patch reverting an Emscripten commit that dropped a freetype patch.
2022-11-14 13:44:29 -08:00
Hood Chatham 3dfe5b35ef
Emscripten 3.1.23 (#3148) 2022-11-07 08:51:24 -08:00
Gyeongjae Choi a916ea0b34
BLD simplify building CMake based packages (#3128)
This PR makes building CMake based packages easier.
- Introduce a custom toolchain file for Pyodide. It inherits most of settings from the original Emscripten toolchain file with some modifications. Packages built by pyodide-build will automatically use that toolchain file.
- Proxy cmake in pywasmcross.py, in order to proxy other compiler toolchains.
2022-09-22 10:42:26 +09:00
John Wason fd54f86136
Fix Robot Raconteur -Wenum-constexpr-conversion build error (#3105) 2022-09-15 20:44:00 -07:00
Hood Chatham 0eb6036b85
Update to emscripten 3.1.21 (#3107) 2022-09-15 16:58:14 -07:00
Hood Chatham 939b615df0
Emscripten 3.1.20 (#3027)
GSW patch:
TEOS-10/GSW-Python#99

galpy patch:
jobovy/galpy#499

pyerfa patch:
liberfa/pyerfa#89

astropy patch:
astropy/astropy#13586

scipy patch:
scipy/scipy#16924
2022-08-29 18:57:05 -07:00
Hood Chatham 3160ac937e
Add patch to Emscripten to fix some of the Jest problems (#3014)
This fixes one of the problems in #2764. 
See upstream PR emscripten-core/emscripten#17733
2022-08-26 11:57:09 -07:00
Hood Chatham 67aa16861d
Update Emscripten to 3.1.18 (#2950) 2022-08-21 17:17:49 -07:00
Gyeongjae Choi da70299d1e
Update emscripten to 3.1.15 (#2958) 2022-08-17 19:14:10 +09:00
John Wason 810be8869f
Add Robot Raconteur package to Pyodide (without wasm-exceptions) (#2794)
This PR adds the Robot Raconteur Pyodide package, which is a modified version
of Robot Raconteur designed to run in the Pyodide environment, using WebSockets
for communication. See robotraconteur/robotraconteur for the full version of the
package. Robot Raconteur is used to communicate with robots and other automation
components, and has a large library of drivers and packages: robotraconteur/robotraconteur-directory.
It is used as the bases for PyRI, a robotics programming environment: 
https://github.com/pyri-project/pyri-core/blob/master/README.md. Using a bridge, this package can
also be used to communicate with ROS2 networks: robotraconteur-contrib/robotraconteur_ros2_bridge
2022-06-26 21:17:58 -07:00
Hood Chatham f3e8836902
Update emscripten to v3.1.14 (#2775) 2022-06-23 15:51:06 -07:00
Hood Chatham 8d30ebdf13
Update emscripten patches again (#2684)
This drops the Rust patch and "Throw away errors in minify wasm_js" which
I suspect was fixed by an emscripten update (I'm not sure how long ago). It 
replaces the two remaining emscripten patches with new versions that match
the versions I am upstreaming.
2022-06-14 17:01:09 -07:00
Hood Chatham 9c305efc46
Fix cryptography build after emscripten update (#2683) 2022-06-14 14:54:07 +02:00
Hood Chatham c834085995
Use emscripten 3.1.13 (#2679) 2022-06-10 22:26:10 +02:00
Hood Chatham 52f27f06ad
Update to emscripten 3.1.6 (#2672) 2022-06-10 08:13:36 -07:00
Hood Chatham dbbbbb67b2
Cryptography v36.0.2 w/ Rust (#2378) 2022-06-09 10:57:34 -07:00
Hood Chatham 95b1194945
Enable Wasm BigInt (#2643)
This enables WASM_BIGINT while maintaining (hypothetical) Safari 14 support
by shimming BigInt64Array and BigUint64Array if they are missing. I think the
last time we tried to enable WASM_BIGINT was before #2019 so our chances
are significantly better this time.

This will fix dynamic linking bugs and yields a minor reduction in code size.
2022-06-02 10:09:54 -07:00
Hood Chatham 5595eb1305
Fix uname to report emscripten version accurately (#2608)
This is needed for the normal Python packaging system to accurately determine the platform tag for wheels for #2591.
This has been fixed upstream: https://github.com/emscripten-core/emscripten/pull/17026
2022-05-24 15:25:25 -07:00
Hood Chatham 694c47f151
Update emscripten to 2.0.27 (#2295) 2022-03-23 23:31:13 -07:00
Hood Chatham 5897646e04
MAINT Update emscripten to 2.0.24 (#2035) 2022-03-23 23:27:46 -07:00
Hood Chatham 0f2ce88edb
Rework core tests (#2265)
The goal of this commit is to add the capability of skipping specific tests by
glob pattern. Many core test sets have just one test that uses subprocess or
threads. Others have a few tests that are failing due to upstream problems in
emscripten. I went through and switched to skipping specific tests in as many
cases as I could. In modules where most or all tests use threading or
subprocess, I gave up and put a comment saying something like 35/50 tests fork
and I didn't want to bother to salvage the remaining ones.

In order to accommodate using patterns to skip specific tests (and also extra
comments) I switched the format of python_tests to a yaml file. This gives us
significantly more flexibility in the structure of the file and allows us to use
ruamel.yaml to update it. We gain a lot flexibility while reducing the length of
make_test_lists.py modestly from 108 to 78 loc.

In the future, hopefully we should be able to make fixes by deleting one skip
pattern and looking into why that particular test fails.
2022-03-22 13:41:43 -07:00
Hood Chatham 0e1e2ac01c
Python 3.10 (#2225) 2022-03-17 15:48:56 -07:00
Hood Chatham 8c5627fe4c
MAINT Fix emscripten patch paths (#2276)
Having to add `emsdk/upstream/emscripten` to all the emscripten patches is a
nuisance. If at some point we want to patch a file in a different folder, we can
separate the patches into multiple folders. In particular this should make it
easy to migrate patches using `git am`, `git rebase`, and `git format-patch`.
2022-03-15 13:52:21 -07:00
Hood Chatham 30ea13fbbf
Support for C++ exceptions in packages (#2178) 2022-02-19 08:31:19 +01:00
Hood Chatham 19261f394c
Remove function pointer cast emulation (#2019) 2021-12-09 10:31:21 -08:00
Hood Chatham 6ce70a5bf7
MAINT Rearrange emsdk Makefile to do less stuff before applying patches (#1938) 2021-11-09 21:46:59 -08:00
Roman Yurchak aa1ce3adc4
BLD Use outer ccache wrapper (#1805) 2021-09-11 14:22:13 +02:00
Hood Chatham 8dd07060a2
Ensure that dup'd file descriptors share position and flags (#1825) 2021-09-10 10:15:21 +02:00
Hood Chatham feeadd5fff
FIX Patch emscripten to fix problems with dup (#1823) 2021-09-09 11:53:47 -07:00
Gyeongjae Choi cc78bced5b
ENH Remove CMake -S and -B options from emsdk/Makefile (#1711) 2021-07-12 17:09:43 +02:00
Roman Yurchak e97d3bb2cf
Minimal Node.js support (#1691) 2021-07-09 22:26:58 +02:00
Hood Chatham 653891b045
ENH Add Ctypes support (#1656) 2021-06-26 10:34:31 +02:00
Roman Yurchak 39669630c2
MAINT/CI Fix libjpeg URL in emscripten (#1458) 2021-04-13 11:37:12 +02:00
Dexter Chua 958724101a
Update to emscripten 2.0.15 (#1312) 2021-03-10 09:13:53 +01:00
Dexter Chua df3861e469
Update to emscripten 2.0.14 (#1256) 2021-02-16 11:25:53 +08:00
Dexter Chua eb2bd5c458
Allow changing emscripten version with env var (#1249)
This makes it easier to test against different emscripten versions on
the same tree (e.g. tot a la #1223).
2021-02-14 12:17:20 +01:00
Dexter Chua 4788dd750b
Change error code on waitpid to ENOSYS (#1240) 2021-02-14 09:56:39 +01:00
Dexter Chua a73d7e7dee
TST Remove upstreamed memfsmtime emscripten test (#1241)
The patch is upstreamed and so are tests.
2021-02-12 12:00:27 +01:00
Roman Yurchak 1aea60d91d
MAINT Update to emscripten 2.0.13 (#1198)
Co-authored-by: Dexter Chua <dalcde@users.noreply.github.com>
2021-02-10 09:23:10 +01:00
Hood Chatham 6e3f5747ec
Remove debug statements from fix_emulate_pointers (#1212)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Co-authored-by: Dexter Chua <dalcde@users.noreply.github.com>
2021-02-08 09:49:44 +01:00
Dexter Chua 56073be2a9
Re-enable ccache for binaryen build (#1214)
Binaryen now invokes cc instead of gcc, and the cc symlink isn't in
/usr/lib/ccache. This replaces the implementation in #1014.

This has the disadvantage that build is now broken if ccache is not
available.
2021-02-08 09:42:43 +01:00
joemarshall 1bd8380c01
Emscripten 2.0.12 Upstream backend (#1102)
Co-authored-by: Dexter Chua <dalcde@users.noreply.github.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-02-06 08:58:12 +01:00
Dexter Chua 2454c483d6
git clone --depth 1 emsdk (#1063) 2021-01-07 09:01:25 +01:00
Dexter Chua f6f5da1145
Create script to set emscripten env vars (#1013) 2021-01-03 12:25:14 +01:00
Dexter Chua c42c81d650
Enable ccache for emsdk (#1014) 2021-01-02 21:03:45 +08:00
Dexter Chua 2ffd31284c
Only build wasm-opt in binaryen (#1012) 2021-01-02 19:40:35 +08:00
Dexter Chua 4502707e4f
Remove clean_for_dist.sh (#997)
clean_for_dist.sh is outdated and mostly refers to files that do not
exist. make clean does the job well
2021-01-01 08:56:32 +01:00