Skip to content

Commit b38db76

Browse files
authored
Update Emscripten version to 4.0.5 (#93)
## Motivation for the change, related issues [Emscripten merged a fix for `statfs`](emscripten-core/emscripten#23381) in `4.0.1`, so this PR updates Emscripten to allow us to run `statfs` in PHP functions like `disk_total_space`. ## Implementation details This PR updates the version of Emscripten to `4.0.5`, rebuilds all PHP-wasm libraries, and recompiles PHP-wasm. While rebuilding PHP-wasm libraries there was a bug in the `libcurl` build script because it expected `libopenssl` to be located in `libopenssl/asyncify/dist`, but in reality `libopenssl` was located in `libopenssl/asyncify/dist/1.1.0h` (similarly for JSPI). We have two versions of `libopenssl` because it [was requires for PHP 7.0](#2038). This PR drops `libopenssl 1.1.0h` support because [Playground doesn't support PHP 7.0 anymore.](Automattic/wordpress-playground-private#74) ## Testing Instructions (or ideally a Blueprint) - CI
1 parent b150e6e commit b38db76

File tree

660 files changed

+148288
-250062
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

660 files changed

+148288
-250062
lines changed

packages/php-wasm/compile/base-image/Dockerfile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,22 +35,22 @@ RUN set -euxo pipefail;\
3535
# Install Emscripten from the repository. We'd use the official
3636
# Docker image, but there is no arm64 image available which makes
3737
# the build take forever on Apple Silicon.
38-
#
38+
#
3939
# ---- IMPORTANT ----
4040
# When upgrading the Emscripten version, you will need to rebuild all the WebAssembly libraries
4141
# shipped in this repository before you can rebuild PHP itself. The entire build, including every
4242
# linked lib, must be produced by the same Emscripten version – otherwise you'll run into undefined
4343
# behaviors and indeterministic failures like we did in these two PRs:
44-
#
44+
#
4545
# * https://github.com/WordPress/wordpress-playground/pull/1471
4646
# * https://github.com/WordPress/wordpress-playground/pull/1339
47-
#
47+
#
4848
# WASM libraries to rebuild live here:
4949
# https://github.com/WordPress/wordpress-playground/tree/67d916b5eccfe78e26e9c953598cc1a81f316931/packages/php-wasm/compile
5050
RUN ln -s /usr/bin/python3 /usr/bin/python
5151
RUN git clone https://github.com/emscripten-core/emsdk.git && \
52-
./emsdk/emsdk install 3.1.74 && \
53-
/root/emsdk/emsdk activate 3.1.74
52+
./emsdk/emsdk install 4.0.5 && \
53+
/root/emsdk/emsdk activate 4.0.5
5454

5555
RUN mkdir -p /root/lib/lib /root/lib/include /root/lib/share /root/lib/bin
5656

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

packages/php-wasm/compile/libjpeg/asyncify/dist/root/lib/lib/cmake/libjpeg-turbo/libjpeg-turboConfigVersion.cmake

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,6 @@ else()
3030
endif()
3131

3232

33-
# if the installed project requested no architecture check, don't perform the check
34-
if("FALSE")
35-
return()
36-
endif()
37-
3833
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
3934
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "4" STREQUAL "")
4035
return()

packages/php-wasm/compile/libjpeg/asyncify/dist/root/lib/lib/cmake/libjpeg-turbo/libjpeg-turboTargets.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ if(CMAKE_VERSION VERSION_LESS "2.8.3")
77
message(FATAL_ERROR "CMake >= 2.8.3 required")
88
endif()
99
cmake_policy(PUSH)
10-
cmake_policy(VERSION 2.8.3...3.23)
10+
cmake_policy(VERSION 2.8.3...3.26)
1111
#----------------------------------------------------------------
1212
# Generated CMake target import file.
1313
#----------------------------------------------------------------

packages/php-wasm/compile/libjpeg/asyncify/dist/root/lib/lib/lib32/cmake/libjpeg-turbo/libjpeg-turboConfig.cmake

Lines changed: 0 additions & 28 deletions
This file was deleted.

0 commit comments

Comments
 (0)