-
Notifications
You must be signed in to change notification settings - Fork 295
Support PHP 8.1 #92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
These files seem related to PHP 8.1 fibers feature – PHP's
$fiber_asm_file is derived from $fiber_cpu which is derived from $host_cpu. Autoconf docs says:
Perhaps this is as easy as specifying the |
Adding Before:
After:
|
Oh, it wasn't about that at all. The elf files in question (
They look as follows:
|
The If not, then perhaps more hacky |
|
#94 adds support for PHP 8.1 and 8.2 |
PHP 7.4 worked at 2403d0f |
## Motivation for the change, related issues When running Playground CLI and php-wasm CLI with the built-script executor, I've wanted to add extra Node.js flags like `--experimental-wasm-jspi`. Prior to this PR, the only way was to hack the executor.ts file, but these changes show up in `git status` and are easy to misplace and lose when switching between branches and pushing and popping from the stash. ## Implementation details This PR adds a `nodeArg` option to our custom `built-script` executor. It is an array and can be specified multiple times to add multiple args. ## Testing Instructions (or ideally a Blueprint) The built-script executor is only used by Playground CLI and php-wasm CLI. Let's test both. Run the following command: ``` npx nx start php-wasm-cli --nodeArg='--cpu-prof' --nodeArg='--trace-promises' -r 'phpinfo();' ``` - Confirm you see promise tracing in the output - Confirm the command created a file ending in `.cpuprofile` Run `npx nx start playground-cli server` to confirm it is still working.
PHP patches no longer cleanly apply to PHP 8.1. Adjusting the patches leads to the following error in the
emmake make -j8
step:This resembles a gist I found that's labeled Compiling error of PHP 8.1.0 on 32 bit architecture. WASM is inherently 32-bit, and yet
make
tries to use the 640bitjump_x86_64_sysv_elf_gas
– perhaps some flag that must be set to enforce using 32 files.The text was updated successfully, but these errors were encountered: