* [bazel] Set CLOSURE_COMPILER to workaround RBE+symlinks issue (#1037)
* [bazel] Set CLOSURE_COMPILER to workaround RBE+symlinks issue
* space
* specify node_js
* 3.1.10 (#1046)
* Optimize sandbox performance (#1045)
* Optimize sandbox performance
Link just the files needed to compile, link, or archive, rather than the entire directory tree. This drastically improves build times on macOS, where the sandbox is known to be slow (https://github.com/bazelbuild/bazel/issues/8230).
* Linux wants clang to link
* all_files not needed?
* Linux wants llc
* And llvm-ar
* Templated build_file_content
* include node modules glob with linker files. also some minor formatting fixes. (#1052)
* Using bazelisk on macOS CI (#1049)
* Explicit outputs for wasm_cc_binary (#1047)
* Explicit outputs for wasm_cc_binary
* Backwards compatibility
* data_runfiles restore
* restore test_bazel.sh
* Using wrong path on accident
* two separate rules for legacy support
* Added name attribute to wasm_cc_binary rule
* 3.1.11 (#1053)
* 3.1.12 (#1054)
* 3.1.13 (#1055)
* [bazel] Add additional files necessary for building with closure and on RBE (#1057)
* 3.1.14 (#1061)
* 3.1.15 (#1066)
* Pin `latest` to a specific version for arm64-linux (#1065)
Fixes: #1040
* 3.1.16 (#1071)
* 3.1.17 (#1076)
* Exclude msys from path fix function. (#1078)
Fixes: #911
* 3.1.18 (#1081)
* 3.1.18
* Update LLVM include path in Bazel files
* Version 3.1.18-2 (#1083)
3.1.18 had a bad release binary on ARM64 Mac so push an updated version of the release.
* 3.1.19 (#1090)
* Add EMSDK_QUIET to make emsdk_env less chatting (#1091)
Without this the recommended way to silence emsdk_env was to pipe its
stderr to /dev/null.. but then you also loose potentially useful error
message.
Fixes: #946
* 3.1.20 (#1095)
* Add double-quotes to allow spaces in path (#1097)
* 3.1.21 (#1101)
* Update latest-arm64-linux to 3.1.21 (#1102)
* Update XCode version on CircleCI (#1103)
12.2 is being deprecated
* 3.1.22 (#1107)
* 3.1.23 (#1111)
* Avoid exporting EM_CONFIG for modern SDK versions (#1110)
Newer versions of emscipten, starting all the way back in 1.39.13, can
automatically locate the `.emscripten` config file that emsdk creates so
there is no need for the explicit EM_CONFIG environment variable. Its
redundant and adds unnessary noisce/complexity.
Really, adding emcc to the PATH is all the is needed these days.
One nice thing about this change is that it allows folks to run
whichever emcc they want to and have it just work, even if they have
configured emsdk. Without this change, if I activate emsdk and I run
`some/other/emcc` then emsdk's `EM_CONFIG` will still be present and
override the configuration embedded in `some/other/emcc`.
e.g. in the same shell, with emsdk activated, I can run both these
commands and have them both just work as expected.
```
$ emcc --version
$ /path/to/my/emcc --version
```
* Use x64 version for Windows on Arm (#1115)
* 3.1.24 (#1122)
* 3.1.25 (#1130)
* [bazel] Switch to platforms-based toolchain resolution (#1036)
* remove "name" attribute from bazel rules (#1131)
* 3.1.26 (#1134)
* Update remote_docker version in CircleCI config (#1117)
20.10.17 is the current default.
* docker image: Change base to Ubuntu 22.04 LTS (jammy) (#1135)
Done to upgrade from CMake 3.16.3 to 3.22.1. CMake 3.21 or newer is needed to build the Qt 6.4.1 sources with emscripten.
Also update to libidn12 to resolve an "Unable to locate package libidn11" error.
* 3.1.27 (#1139)
* Use constants for fixed paths. NFC (#1140)
* Add standalone_wasm feature to bazel emscripten_toolchain (#1145)
* 3.1.28 (#1149)
* Upgrade to rules_nodejs 5.8.0 (#1150)
Fixes https://github.com/emscripten-core/emsdk/issues/1020
* 3.1.29 (#1160)
* Pin Windows CI to Bazel 5.4.0 (#1163)
* Remove reference to fastcomp-latest. NFC (#1164)
fastcomp can only be install using explicit versions names so this name
doesn't work.
* Remove fastcomp SDK and fastcomp build rules. NFC (#1165)
Folks that want to work with fastcomp will now need to use an older
checkout of emsdk.
* 3.1.30 (#1167)
* Bump emscripten to 3.1.30
* Bump clang version
* Do not include test directory
* Update eng/emsdk.proj
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
---------
Co-authored-by: Kevin Lubick <kjlubick@users.noreply.github.com>
Co-authored-by: Sam Clegg <sbc@chromium.org>
Co-authored-by: John Firebaugh <john.firebaugh@gmail.com>
Co-authored-by: walkingeyerobot <mitch@thefoley.net>
Co-authored-by: Ezekiel Warren <zaucy@users.noreply.github.com>
Co-authored-by: Heejin Ahn <aheejin@gmail.com>
Co-authored-by: Tim Ebbeke <Tim06TR@gmail.com>
Co-authored-by: Derek Schuff <dschuff@chromium.org>
Co-authored-by: Joel Van Eenwyk <joel.vaneenwyk@gmail.com>
Co-authored-by: Pierrick Bouvier <101587250+pbo-linaro@users.noreply.github.com>
Co-authored-by: Trevor Hickey <TrevorJamesHickey@gmail.com>
Co-authored-by: Fredrik Orderud <forderud@users.noreply.github.com>
Co-authored-by: Robbert van Ginkel <570934+robbertvanginkel@users.noreply.github.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
* Makes provided bazel rules look up @emsdk workspace instead of local workspace
* Uses system-specific emscripten binaries instead of defaulting to linux
* Provides macros for loading emsdk dependencies (nodejs and emscripten binaries)
* Unhardcodes paths in bazel rules and .sh wrappers
* `update_bazel_workspace.sh` now updates `revisions.bzl`
* `emscripten_deps()` can be fed with specific emscripten version
* Adds external usage test
Addresses #650 and #696
This PR has three changes:
1) Fixing --permanent flag:
The previous algorithm looped over the values of PATH 4 times to check conditions while these conditions are the opposite of each other. Also, the result did not include all the parts in the whole_path.
I have combined these loops and fixed the algorithm, so no path is lost. Now using --permanent the PATH and Env variables are correctly updated.
2) Fixing --system flag:
Now, the system flag does not cause the PATH values to be overwritten/clobbered. The PATH/Env variables are correctly updated.
3) Fixing flagless flag:
When no flag is provided the value of process/shell is correctly updated and preserved.
This adds the tests for all the situations.
Fixes#634Fixes#645
Also switch PostMessage to SendMessageWithTimeout and only send one if
environment variables actually changed.
Also, enable and fix --permanent unit tests.
- Copy the current checkout to the Dockerfile.
- Add .dockerignore to exclude files while copying.
- Test tip-of-tree build within CI.
- Run the test suite outside the Docker image.
- Perform extra sanity tests.
- Switch to make commands for CircleCI.
- Improve Docker README.
This change allows sourcing emsdk_env.sh from bash, zsh and
ksh.
The script works out the true location of the emsdk directory,
even if it is a symlink or the script itself is a symlink.
Added a test in scripts/test_source_env.sh to try sourcing via
all the shells and with various paths.
Co-authored-by: Bob Tolbert <bob@tolbert.org>
It was working previously by accident because the tests were
using the defaults such as `$HOME/.emscripten`. However usage of the
emsdk should really only happen in the emsdk environment where
EM_CONFIG dictates the config location (not just using the default).
This change is needed as precursor to making `--embedded` the default
(in this case the config doesn't live in `$HOME/.emscripten`).