Martin Storsjö
a861db9f43
github: Build LLDB for Linux too
...
Disable Python, to make the LLDB executables more portable,
so they don't rely on whatever version might have been installed on
the GitHub Actions runner.
2023-08-01 10:05:54 +03:00
Martin Storsjö
8b01a132c5
github: Build lldb on macos, but only disable python
2023-08-01 10:01:45 +03:00
Martin Storsjö
fec22cf2dd
github: Update comments regarding tests and the pinned llvm version
2023-07-29 23:47:33 +03:00
Martin Storsjö
4fbff5e912
github: Rename the upload-artifacts.yml workflow
...
It can make the whole release, not only upload artifacts.
2023-06-03 19:53:04 +03:00
Martin Storsjö
64b27a1c56
github: Add a manual workflow for building and pushing docker images
2023-06-01 19:54:57 +03:00
Martin Storsjö
1d7cf51b96
github: Add a manual workflow for building extra msvcrt binaries
...
They can optionally be uploaded to a release.
2023-06-01 19:54:57 +03:00
Martin Storsjö
41c45dafd8
github: Generalize the linux-cross-windows job for other CRTs
2023-06-01 19:54:57 +03:00
Martin Storsjö
5cc5132bff
github: Name the windows artifacts windows-ucrt-<arch>-toolchain
2023-06-01 19:54:57 +03:00
Martin Storsjö
1b9fb522f5
github: Rename the macos-toolchain artifact to macos-ucrt-toolchain
2023-06-01 19:54:00 +03:00
Martin Storsjö
1e982132d5
github: Rename the linux-aarch64-toolchain artifact to linux-ucrt-aarch64-toolchain
2023-06-01 11:25:03 +03:00
Martin Storsjö
6a296622e0
github: Rename the linux-toolchain artifact to linux-ucrt-x86_64-toolchain
2023-06-01 11:25:03 +03:00
Martin Storsjö
a7ff217a5b
github: Allow creating a tag and release programmatically
...
This verifies that the chosen tag name matches what was set as
TAG in the workflow that artifacts are pulled from.
2023-06-01 11:24:37 +03:00
Martin Storsjö
87ab2cb43d
github: Expose the job properties (TAG and versions) in an artifact too
...
While we use the job outputs since 18bd3665ac ,
having the info available in an artifact makes it easier to
fetch this in later separate workflows.
2023-06-01 11:23:41 +03:00
Martin Storsjö
bf2e255b5f
github: Allow specifying either a commit or a branch for fetching artifacts
2023-06-01 11:23:04 +03:00
Martin Storsjö
f03d94dbdc
github: Update a comment
2023-06-01 11:20:55 +03:00
Martin Storsjö
37ec895756
github: Distinguish between push and scheduled pipelines when fetching artifacts
2023-05-31 11:11:38 +03:00
Martin Storsjö
fc5d2c9b21
github: Run on pull requests too
2023-05-23 11:22:57 +03:00
Martin Storsjö
995d3ac516
github: Run all the compiler-rt tests, on both i686 and x86_64
...
These tests should now all pass on both architectures; the
check-asan tests for the static CRT are skipped automatically,
the failures in check-interception have been fixed by compiling
the tests with the --large-address-aware flag, and the
check-asan-dynamic tests on i686 have been fixed - all by
Alvin Wong.
2023-05-05 08:27:15 +03:00
Martin Storsjö
a8629002bf
github: Do rudimentary testing of the cross-built aarch64 toolchain with qemu
...
Verify that it can compile the tests in llvm-mingw's testsuite;
this should serve as a smoke test to see that the toolchain is
correctly assembled.
2023-04-28 10:04:39 +03:00
Martin Storsjö
46215b2510
build-python: Bump to Python 3.10.11
2023-04-27 10:50:36 +03:00
Martin Storsjö
1fb5681e58
github: Add a job for cross compiling the toolchain for linux on aarch64
2023-04-27 10:47:51 +03:00
Martin Storsjö
1ab52ba4a3
github: Generalize the patterns for moving artifacts that are to be uploaded
...
Exclude the artifacts from the asserts build, if available.
2023-04-27 10:47:15 +03:00
Martin Storsjö
525489a018
github: Rename the linux-cross job to linux-cross-windows
2023-04-26 19:18:24 +03:00
Martin Storsjö
c49af4399a
github: Skip dependencies (libxml2, terminfo) in linux builds that have little value in our context
...
The fewer dynamic library dependencies we have, the easier it is
to run the binaries on other linux distributions than the one it
was built on.
In the docker based releases, these libraries haven't been installed
and thus haven't been used so far.
The docker based releases haven't linked against zlib though, but
keep linking against that, since that should have a quite stable
ABI and not cause much binary compatibility issues.
2023-04-26 10:01:42 +03:00
Martin Storsjö
12434469b9
github: Add a separate manual workflow for uploading artifacts to a release
2023-04-25 09:59:28 +03:00
Martin Storsjö
586a9acf02
github: Upload all artifacts from scheduled builds to the "nightly" release
2023-04-25 09:59:28 +03:00
Martin Storsjö
48276b7f42
github: Remove the unnecessary arch suffix on the intermediate install directory in the linux-cross jobs
...
The packaged directory gets renamed to include a suffix in the end
anyway.
2023-04-25 09:59:28 +03:00
Martin Storsjö
7a5dfaf469
github: Run the non-asserts linux build on 20.04
...
This should make the produced artifact more widely compatible.
Releases built with release.sh with the dockerfile are currently
based on Ubuntu 18.04 though, and are more shielded from potential
extra libraries that are found during the build.
2023-04-25 09:59:28 +03:00
Martin Storsjö
8abf794331
github: Produce artifacts with names that match the actual releases
2023-04-25 09:59:28 +03:00
Martin Storsjö
085653b6c8
github: Rename the "get-versions" step to "prepare"
2023-04-25 09:59:28 +03:00
Martin Storsjö
8d1d6f9947
github: Set the versions to build in scheduled builds via the GHA "env" field
...
For non scheduled builds, those env variables are just left empty.
This is much neater than using the "versions" file, and uses much
fewer lines of code.
We still probably want to bundle a file labelling what versions
it contains in the built packages though; give that file a
.txt suffix.
2023-04-25 09:58:25 +03:00
Martin Storsjö
18bd3665ac
github: Use job outputs instead of a "versions" artifact/file
...
This is more idiomatic, requires fewer lines of code and doesn't
require passing an actual file along (unless we want to).
2023-04-24 11:36:22 +03:00
Martin Storsjö
f0b14f9e20
github: Sync the cpython-mingw branch used with build-python.sh
2023-04-22 23:18:55 +03:00
Martin Storsjö
afedda2cbd
github: Remove a redundant "update: false" for setup-msys2
...
"update: false" is the default, and we don't specify it elsewhere.
2023-04-22 01:28:26 +03:00
Martin Storsjö
0b3fc13a42
github: Add a job for running compiler-rt tests
2023-04-20 10:40:35 +03:00
Martin Storsjö
5d778657c2
github: Include libcxxabi and libunwind tests in the test-libcxx job too
...
These test suites now pass in the latest git main.
This target isn't run automatically anywhere, but in case the
target is enabled to run the tests, include the libcxxabi and libunwind
test suites too.
2023-04-20 10:36:19 +03:00
Martin Storsjö
0ab70b67d8
github: Remove ignores for failing ffmpeg tests
...
These no longer fail; they were fixed in ffmpeg in commit
76b33704b628248d77ed61cbef9ecd9430a4b6c5 in July 2022; we currently
test a pinned 6.0 release, where this fix is included.
2023-04-19 23:18:17 +03:00
Martin Storsjö
b495c39a6d
github: Use less specific filenames in the ffmpeg test jobs
...
This reduces the differences if using a proper release tarball
instead of an artifact from an earlier step (if testing parts of
the workflow by modifying it).
2023-04-19 23:18:17 +03:00
Martin Storsjö
5264f99ade
github: Stop setting PYTHON_EXECUTABLE in the openmp test job
...
This shouldn't be necessary any longer since commit
40079637569f999015eaf3f7e137a63b2c8ade92 in llvm-project (in
December 2022).
2023-04-11 11:06:43 +03:00
Martin Storsjö
8189893403
github: Update a comment about the openmp test job
...
We're now on 16.x, and the tests do pass, but we still skip running
these tests on regular pushes - we only do them for the scheduled
nightly builds.
2023-04-11 11:06:43 +03:00
Martin Storsjö
c1d6c39d33
Revert "github: Disable building lldb-mi in the scheduled cross builds"
...
This reverts commit 1b216b6fdf .
It's now compatible with current llvm versions.
2023-04-11 00:08:38 +03:00
Martin Storsjö
9e612d76f9
github: Stop setting LIBCXX_TARGET_INFO for the libcxx test setup
...
This variable is no longer needed/used.
2023-03-10 20:05:47 +02:00
Martin Storsjö
04ec21bea7
github: Run tests with the ffmpeg 6.0 release instead of 5.1.2
2023-03-09 13:54:10 +02:00
Martin Storsjö
22790a89f4
github: Don't run builds for tags, only pushes to branches
...
There's no need to rerun all the builds when pushing a tag.
2023-02-10 23:56:30 +02:00
Martin Storsjö
c49460aa86
github: Add setup for running libcxx's tests on the built toolchain
...
Keep this disabled by default (since it takes a fair amount of time
and has good test coverage upstream), but including it in disabled
form so that it's easy to enable temporarily for testing occasionally.
Libcxx does test the mingw configuration in their own CI (with an older
pinned release of the compiler), so this is mostly redundant, and
primarily relevant for testing that the very latest compiler (and
python setup) works for the tests.
2023-01-29 01:13:39 +02:00
Alvin Wong
ce554e93c5
Revert "Enable CFGuard for scheduled builds which uses latest llvm and mingw-w64"
...
This reverts commit e76e935c7d .
This is no longer necessary, since the default currently is to
enable CFGuard.
2023-01-29 01:09:17 +02:00
Martin Storsjö
6a37ec900b
github: Test building and running the OpenMP tests on Windows
...
These tests should pass with the latest version from git (but
don't pass with the current pinned 15.0.0 version).
2022-11-29 22:40:47 +02:00
Martin Storsjö
01597c1d72
github: Include the version file in the cross-built toolchains too
2022-11-14 00:26:44 +02:00
Martin Storsjö
a5a6488198
github: Test a known-good version of ffmpeg
...
The latest version in git might have some tests failing occasionally
(like it does currently).
2022-11-07 23:10:21 +02:00
Martin Storsjö
e16ba0772f
run-tests: Split out building and running of tests into a Makefile
...
This allows building and running the tests in parallel.
2022-10-29 23:22:56 +03:00