diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 08b5b4b..c951e35 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-22.04 env: BUILDS: 3.12 3.13 - EMFLAVOUR: tot + EMFLAVOUR: 3.1.68 steps: - uses: actions/checkout@v3.3.0 diff --git a/scripts/cpython-build-emsdk-prebuilt.sh b/scripts/cpython-build-emsdk-prebuilt.sh index 29f2c29..22931a6 100755 --- a/scripts/cpython-build-emsdk-prebuilt.sh +++ b/scripts/cpython-build-emsdk-prebuilt.sh @@ -2,7 +2,7 @@ . ${CONFIG:-config} -CYTHON_REL=${CYTHON_REL:-3.0.10} +CYTHON_REL=${CYTHON_REL:-3.0.11} CYTHON_WHL=${CYTHON:-Cython-${CYTHON_REL}-py2.py3-none-any.whl} PIP="${SDKROOT}/python3-wasm -m pip" @@ -38,8 +38,8 @@ then " - $PIP install --upgrade --no-build-isolation git+https://github.com/cython/cython - $HPIP install --upgrade --force git+https://github.com/cython/cython + $PIP install --upgrade --no-build-isolation git+https://github.com/pygame-web/cython.git + $HPIP install --upgrade --force git+https://github.com/pygame-web/cython.git else # cython get the latest release on gh install on both host python and build python pushd build diff --git a/scripts/cpython-build-emsdk.sh b/scripts/cpython-build-emsdk.sh index c77c669..5e32d34 100755 --- a/scripts/cpython-build-emsdk.sh +++ b/scripts/cpython-build-emsdk.sh @@ -198,7 +198,7 @@ END sed -i 's|-sWASM_BIGINT||g' configure.ac # do not mess with wasm sysconfig name - if echo $PYBUILD|grep -q 13$ + if echo $PYBUILD|grep -q 3\\.13$ then GIL="--disable-gil" sed -i 's|{ABIFLAGS}t|{ABIFLAGS}|g' configure diff --git a/scripts/cpython-build-host.sh b/scripts/cpython-build-host.sh index bd1defd..db91f9e 100755 --- a/scripts/cpython-build-host.sh +++ b/scripts/cpython-build-host.sh @@ -81,7 +81,7 @@ END END - if echo $PYBUILD|grep -q 3.13$ + if echo $PYBUILD|grep -q 3\\.13$ then # Prevent freezing bytecode with a different magic rm -f $HOST_PREFIX/bin/python3 $HOST_PREFIX/bin/python${PYBUILD} diff --git a/support/__EMSCRIPTEN__.embed/emscriptenmodule.c b/support/__EMSCRIPTEN__.embed/emscriptenmodule.c index 091cad0..e791ae3 100644 --- a/support/__EMSCRIPTEN__.embed/emscriptenmodule.c +++ b/support/__EMSCRIPTEN__.embed/emscriptenmodule.c @@ -873,5 +873,11 @@ extern PyObject *PyInit_emscripten(); #endif PyObject *PyInit_emscripten() { - return PyModule_Create(&emscripten_module); +#ifdef Py_GIL_DISABLED + PyObject *emscripten_mod = PyModule_Create(&emscripten_module); + PyUnstable_Module_SetGIL(emscripten_mod, Py_MOD_GIL_NOT_USED); + return emscripten_mod; +#else + return PyModule_Create(&emscripten_module); +#endif }