Commit Graph

730 Commits

Author SHA1 Message Date
Sam Clegg
f03f1dc579 2.0.17 (#786) 2021-04-10 17:41:55 -07:00
Piotr Paczkowski (trzeci.eu)
2e7eaf7233 Correct README.md about building arguments of docker image. Fixes #748 (#777) 2021-03-28 08:25:23 -07:00
Sam Clegg
6162e2e783 2.0.16 (#773) 2021-03-25 19:00:07 -07:00
Tim Talashok
459f7c14f6 Update bazel readme (#774)
* Update bazel/README.md

* Add deps instantiation to readme

* Add bazelrc explanations to readme

* Note the preferred way of using bazel emsdk
2021-03-25 13:00:30 -04:00
Tim Talashok
c1589b5564 Use emsdk as external bazel dependency (#766)
* 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
2021-03-24 16:50:44 -07:00
Alon Zakai
fdda8524ce Simplify the notation for installing by hash to just emsdk install HASH (#767)
Previously this had to be

emsdk install sdk-releases-upstream-HASH

The only thing preventing using just the hash was that there was no
default for the backend, so defaulting to upstream fixes this. And then
we can do

emsdk install HASH
2021-03-22 14:07:34 -07:00
Jia Yuan Lo
b85548d0dd List "Release" as the default build option (#770)
This was set back in commit cea44f475a

Fixes #760
2021-03-22 11:36:54 -07:00
walkingeyerobot
848260ed58 Bazel add html support (#765)
* allow the bazel toolchain to output html files

* allow for cc_binary rule names to end in .js

* fix python name

* continue to call emcc instead of em++ for now

* small cleanup

Co-authored-by: Mitch Foley <mitchfoley@chromium.org>
2021-03-21 20:08:54 -04:00
juj
ac98ca3882 Rename EMCC_CCACHE to _EMCC_CCACHE. (#762) 2021-03-17 17:26:19 +02:00
juj
0fe3d48f22 Update to python 3.9.2 on Windows as well. Mark old Python and Node packages. (#758) 2021-03-16 09:43:02 +02:00
juj
9c65611d96 Ccache (#711)
* Add support for ccache.

* Simplify ccache activation.

* Fix macOS ccache build

* Make ccache executable

* Add Ninja build support. Change ccache name to git.

* Fix merge conflict
2021-03-15 09:15:26 +02:00
Alexander Köplinger
1ee4a9c5be Fix GitHub repo url in emsdk_manifest.json (#757)
It was still using the old repo location which was moved to the emscripten-core organization.
2021-03-14 10:43:16 -07:00
Tim Talashok
1a3878716f Remove absl from wasm_binary (#756)
* Remove absl from wasm_binary

* Formatting fixes

* Blank line, too

* Reorder imports
2021-03-12 13:28:55 -08:00
juj
96d7ee1c5e Fix support for Apple M1 (#753)
* Fix support for Apple M1. Node.js will still run via Rosetta 2 emulation since they do not yet have M1 support, but Python, LLVM, Emscripten and Binaryen will be native.

* Update M1 python version and URL

* Remove .gitignore additions

* Move python first in the manifest (#441)

* Use macosx-version-min when building python

* Update Intel macOS python package name
2021-03-12 17:29:56 +02:00
juj
772d397a55 Fix search of VCTargetsPath for VS2019 build. (#698) 2021-03-11 14:09:48 +02:00
Sam Clegg
9a70fe3688 Rename sdk-upstream-master SDK to sdk-upstream-main (#754)
Now that all the components (binaryen, emscripten and llvm) use `main`
as the branch name is makes sense to give the SDK this name.

Keep backwards compat with the old name but issue a warning when its
used.
2021-03-10 21:54:29 -08:00
Mark Callow
cf2e3371cd Base on Ubuntu Focal. (#747) 2021-03-10 18:07:02 -08:00
Sam Clegg
329423fea2 Remove "fastcomp-master" SDKs from emsdk_manifest.json (#752)
It makes not sense to install fastcomp with the current main
branch of binaryen and emscripten so remove these SDK options.
2021-03-10 11:11:28 -08:00
Sam Clegg
d342821195 Skip npm step if node_modules already exists (#640)
See https://github.com/WebAssembly/waterfall/pull/670
2021-03-09 16:56:27 -08:00
Sam Clegg
1fe80678a9 Missing update from #746 (#751) 2021-03-09 11:13:09 -08:00
Sam Clegg
67dc4b4989 Switch emscripten branch from master to main (#750) 2021-03-08 15:52:14 -08:00
Sam Clegg
73183b5c30 Fix race between install tot and active tot (#749)
Since #732 we lookup tot release dynamically, but we don't
necessarily want to do this for the `activate` command otherwise
`install` followed by `activate` a can fail if a new build was
produced inbetween.
2021-03-08 14:26:03 -08:00
Sam Clegg
226b548c31 Rename binaryen-master to binaryen-main (#746)
This matches the branch name that was already updated/renamed.
2021-03-08 08:33:25 -08:00
Sam Clegg
7d155f8424 Move tests to "test" directory. NFC. (#745) 2021-03-08 08:03:07 -08:00
Sam Clegg
f0ee795014 Remove special version check for vs-tool. NFC. (#740)
As of #505 all tools write a check a version file so we don't need to
special case vs-tool anymore.
2021-03-08 08:02:38 -08:00
Sam Clegg
7cba2e0a92 2.0.15 (#743) 2021-03-05 23:18:22 -08:00
Sam Clegg
6e2873c834 Feedback from #741. NFC. (#742) 2021-03-05 13:32:33 -08:00
Sam Clegg
9d639b383a Fix for construct_env and list with tot build installed (#741) 2021-03-05 12:51:04 -08:00
Sam Clegg
8915c20b06 Always print debug info to stderr (#739) 2021-03-05 09:44:19 -08:00
Sam Clegg
9d00a82b6a Remove update-tags phase (#738)
Its not really very useful to cache the tot release in a local text
file.  Instead just fetch the revsion each time `install tot` is run.

This avoids folks accidentally installing "old" tot releases.

Also, make the output a little less chatty when looking up tot version.
2021-03-05 09:19:42 -08:00
Sam Clegg
53eacf405d Allow the install of any emscripten-releases build (#732)
This is done by detecting the 40 character git sha in the SDK version
and creating a new set of tools based on this SHA.  This works for any
command that uses expand_sdk_name (i.e. install activate and update) but
it wont show up in the output of `list`.

For example:

./emsdk install sdk-releases-upstream-b0cfdb236483b6828ee2e3f263fd94f011ed1863-64bit

Or just:

./emsdk install releases-upstream-b0cfdb236483b6828ee2e3f263fd94f011ed1863
2021-03-01 17:32:03 -08:00
Sam Clegg
e08c153093 Refactor test.py to use python unittest. NFC. (#735) 2021-03-01 10:04:19 -08:00
Sam Clegg
0a841562df Avoid post-install when nothing is installed (#736)
This avoids re-running the post-install scripts when commands such as
`./emsdk install latest` a re-run.  This re-running of npm ci can be
significant slowdown especially during testing and developerment.

Becuase of the refactoring this change change also means we exit ealier
when a given tool fails to install.  In general we want to error out as
early as possible on the first failure so as not to bury it.
2021-03-01 09:32:07 -08:00
Sam Clegg
f788ca9208 Remove unneeded try/catch (#733) 2021-02-26 11:12:04 -08:00
Sam Clegg
c1883c7407 Cleanup sys.argv handling. NFC. (#734) 2021-02-26 08:52:07 -08:00
Sam Clegg
fcf1bbe974 Limit expansion of %releases-tag% for fastcomp (#731)
Without this, all releases are made available as fastcomp
versions.

Also, sort the releases to that the most recent come last.
This fixes the `emsdk list` display which only displays
the two most recent versions.
2021-02-26 08:49:08 -08:00
Sam Clegg
a79eadf893 Fix crash attempting to install fastcmp SDK by hash (#730)
Using the full SDK name was causing a crash here because the
version is not of the form 1.2.3.  e.g:

sdk-releases-upstream-3b8cff670e9233a6623563add831647e8689a86b-64bit
2021-02-26 08:48:00 -08:00
Sam Clegg
f9af08a28f Remove unused run_emcc function. NFC. (#713)
Also, make handling of activated_path consistent.  We don't support
multiple activated paths so we can simplify the handling in some
places.
2021-02-25 16:35:38 -08:00
Sam Clegg
102e02252b Move error reporting when git is not found during update-tags (#728)
update-tags is called from two places `update-tags` itself and also
as as part of `update`.   Silently ignoring the absence of git should
only happen in the later case.   If the user explicitly ask for
update-tags we should hard fail as normal.
2021-02-25 16:34:56 -08:00
Jia Yuan Lo
63b6cd2a4e Allow system npm in "emsdk install emscripten" (#723)
"emsdk install emscripten-master-64bit" is currently dependent on
whether emscripten node is installed or not.

This change allow using system-provided node / npm command to proceed
the installation. Also clarify the error message.
2021-02-23 11:18:28 -08:00
Sam Clegg
ef638b3860 Rename llvm-git-master -> llvm-git-main (#718)
To match the branch rename that happened in #693.
2021-02-17 19:11:07 -08:00
Sam Clegg
57ebbbdabc Avoid adding our java or python to the PATH (#706)
For Java we use the value in the config file so it doesn't need to be in
the PATH.

For python, all our tools should launch via scripts that check for
EMSDK_PYTHON so having python in the PATH for emsdk users should not be
needed.

The motivation for this is that we don't want to clobber any existing
python or java versions that users might already have in their PATH.

This is the easy part of #705.
2021-02-15 13:46:54 -08:00
Sam Clegg
2b720e5473 2.0.14 (#710) 2021-02-14 11:46:10 -08:00
Sam Clegg
9e96410d7f Update node version to 14.15.5 (latest TLS release) (#708)
See https://github.com/WebAssembly/binaryen/issues/3551
2021-02-12 16:47:20 -08:00
Sam Clegg
8b32b7def8 Cleanup handling of old prebuild SDK tags (#697)
- Remove empty llvm-tags-32bit.txt
- Remove code that executes if llvm-tags-64bit.txt is missing (it
  can't be since its checked in these days).
- Cleanup load_file_index_list

I verfied manually that llvm_precompiled_tags* list are identical
before and after this change.
2021-02-08 15:01:14 -08:00
walkingeyerobot
ba7fad312b make hello world simd a bit cleaner (#701) 2021-02-08 15:34:32 -05:00
Sébastien Jalliffier Verne
45cd9dfc0f Fix: wrong clang path in Bazel toolchain (#699) (#700) 2021-02-07 11:51:36 -08:00
Sam Clegg
cfdcf1315b Release 2.0.13 and update bazel toolchain (#694)
This change comes with fairly major change to the bazel toolchain.

- Use pre-built cache that comes with emsdk
- Mark cache as readonly using FROZEN_CACHE
- Pass `--sysroot` to match upstream emscripten change
2021-01-29 18:25:41 -08:00
Sam Clegg
2c086de21e Remove redundant testing/downloading (#695)
We have mac linux and windows bots that run this script
on each of those platforms.  This script already runs
`install latest` so there is no need to re-download these
three different archives on each platform.
2021-01-29 16:25:24 -08:00
Matthew McRaven
02edc9765b Set LLVM's git branch to main in manifest. (#693)
LLVM renamed their default branch to main from master.
This breaks builds of the SDK from the sources.

This commit retargets LLVM builds to use the git branch main when appropriate.
The version name "master" remains the same to maintain compatibility with existing build scripts

Fixes #692.
2021-01-28 17:49:46 -08:00