tinygo/builder
Nia Waldvogel e594dbc133 builder: refactor job runner and use a shared semaphore across build jobs
Switching to a shared semaphore allows multi-build operations (compiler tests, package tests, etc.) to use the expected degree of parallelism efficiently.

While refactoring the job runner, the time complexity was also reduced from O(n^2) to O(n+m) (where n is the number of jobs, and m is the number of dependencies).
2021-12-30 12:03:12 -05:00
..
ar.go all: add support for windows/amd64 2021-11-16 11:08:30 +01:00
build.go builder: refactor job runner and use a shared semaphore across build jobs 2021-12-30 12:03:12 -05:00
builder_test.go targets: change LLVM features to match vanilla Clang 2021-11-20 02:48:23 +01:00
buildid.go builder: use build ID as cache key 2021-12-28 18:29:05 -05:00
builtins.go builder: build static binaries using musl on Linux 2021-11-04 17:15:38 +01:00
cc.go builder: use flock to avoid double-compiles 2021-12-23 08:28:08 +01:00
cc1as.cpp
cc1as.h
cc_test.go
clang.cpp
commands.go main: implement tinygo lldb subcommand 2021-10-05 06:26:21 +02:00
config.go main: test other architectures by specifying a different GOARCH 2021-10-04 18:22:55 +02:00
elfpatch.go rp2040: patch elf to checksum 2nd stage boot 2021-06-17 12:10:04 +02:00
env.go
error.go
esp.go
jobs.go builder: refactor job runner and use a shared semaphore across build jobs 2021-12-30 12:03:12 -05:00
library.go builder: refactor job runner and use a shared semaphore across build jobs 2021-12-30 12:03:12 -05:00
lld.cpp all: add support for windows/amd64 2021-11-16 11:08:30 +01:00
mingw-w64.go all: add support for windows/amd64 2021-11-16 11:08:30 +01:00
musl.go builder: build static binaries using musl on Linux 2021-11-04 17:15:38 +01:00
nrfutil.go
objcopy.go
picolibc.go builder: build static binaries using musl on Linux 2021-11-04 17:15:38 +01:00
sizes.go builder: fix off-by-one in size calculation 2021-11-19 12:14:32 +01:00
tools-builtin.go all: add support for windows/amd64 2021-11-16 11:08:30 +01:00
tools-external.go builder: run tools (clang, ...) as separate processes 2020-04-03 12:41:44 +02:00
tools.go main: implement tinygo lldb subcommand 2021-10-05 06:26:21 +02:00
uf2.go