Commit Graph
1423 Commits
Author SHA1 Message Date
Martin Storsjö 5da3d4b11b build-llvm: Bump to LLVM 22.1.0 RC 3 2026-02-10 10:07:25 +02:00
Martin Storsjö a68d8c0421 build-mingw-w64: Bump to the latest version as of Feb 10th 2026-02-10 10:07:07 +02:00
Martin Storsjö 498cc00a1d build-llvm: Bump to LLVM 22.1.0 RC 2 2026-01-27 13:33:36 +02:00
Martin Storsjö d1b94a9da6 build-mingw-w64: Bump to the latest version as of Jan 27th 2026-01-27 13:33:14 +02:00
Martin Storsjö bfb0715614 build-mingw-w64, build-busybox: Bump to a newer version
This version of mingw-w64 includes the function "mkdtemp", which
breaks building the previously pinned version of busybox-w32 on i686.

Update both projects in sync, so that builds with newer nightly
versions of mingw-w64 also succeed.
2026-01-19 23:24:28 +02:00
Martin Storsjö 1ea8bbae4e build-busybox: Don't error out if reinstalling into an existing directory 2026-01-19 13:24:59 +02:00
Martin Storsjö f25f2fb3aa build-python: Update to Python 3.13.11 2026-01-19 00:00:37 +02:00
Martin Storsjö 1032736a4c build-llvm: Bump to LLVM 22.1.0 RC 1
Some notable changes since LLVM 21.x related to mingw:

- Handle an uncommon error code in libcxx's std::filesystem,
  avoiding spurious test failures if running the libcxx test suite
  (noted at least occasionally on Github Actions)
- Reinstate x86 stack probe functions in compiler-rt, that we earlier
  beleived weren't used - but turned out to be used by GCC in i386
  mode
- Fix interpretation of a few corner case aarch64 SEH unwind opcodes
- Support for FAT LTO (compile with -ffat-lto-objects, link with
  -Wl,--fat-lto-objects)
- llvm-objcopy: Support the -p option for COFF targets
- llvm-readobj: A new option --coff-pseudoreloc for dumping information
  and symbols for mingw runtime pseudo relocations
- Lots of various fixes for the cygwin target
- Improve linking a custom CRT with binutils ld (by passing the custom
  CRT -l option at the same place as the original default -lmsvcrt)
- Make lld use the right mingw specific DLL entry point implicitly,
  improving some Rust use cases
- Fix running the libcxx tests with optimization for mingw targets,
  allowing more test coverage of the code generation paths
2026-01-16 13:09:06 +02:00
Martin Storsjö f06d2218d6 build-mingw-w64: Bump to the current version as of Jan 16th 2026-01-16 12:48:50 +02:00
Martin Storsjö f5335a4479 github: Run test-toolchain using busybox rather than msys2 2026-01-08 11:34:24 +02:00
Martin Storsjö 8220db557f run-tests: Use mingw32-make in busybox
This is the make tool we'd expect to use in such a setup.
2026-01-08 11:34:24 +02:00
Martin Storsjö 98a14ed36f test: Support mingw32-make running with a proper sh.exe 2026-01-08 11:34:24 +02:00
Martin Storsjö 90633bc87b run-tests: Add busybox specific logic for figuring out what architectures we can execute 2026-01-08 11:34:24 +02:00
Martin Storsjö e2a64961c6 release.sh: Enable WITH_BUSYBOX 2026-01-08 11:34:24 +02:00
Martin Storsjö 17864b5274 github: Build busybox in the windows toolchains 2026-01-08 11:34:24 +02:00
Martin Storsjö 64363c14db build-busybox: Disable make, copy mingw32-make.exe as make.exe
The built-in make is a POSIX make tool, which doesn't support
GNU make features.

As we do have GNU make, insert that as "make.exe" in the busybox
directory. Don't do that in the main llvm-mingw bin directory,
which can be used with other environments (e.g. msys2), where the
native make is to be preferred.
2026-01-08 11:34:00 +02:00
Martin Storsjö 1c87f45543 dockerfile: Add an option for building busybox 2026-01-08 11:32:12 +02:00
Martin Storsjö e4bee5bfa4 build-cross-tools: Add an option for building busybox 2026-01-08 11:32:12 +02:00
Martin Storsjö 15659f926b build-busybox: Disable CONFIG_FEATURE_FAIL_IF_UTF8_MANIFEST_UNSUPPORTED
This allows running the built busybox on older versions of
Windows that don't support the utf8 manifest. (The utf8 manifest
is supported since Windows 10 update 1903.)
2026-01-08 11:32:12 +02:00
Martin Storsjö 49aa05c5bc build-busybox: Disable building the AR applet
When building with mingw32-make, it prefers executing commands
through "sh.exe" if it is available.

When busybox sh.exe executes "ar", it prefers executing its own
internal tool over a potential external tool found in $PATH.

(This can be avoided by setting 'export BB_OVERRIDE_APPLETS="ar"',
but as this build of busybox is expected to be used with llvm-mingw,
disable the built-in "ar" tool outright.)
2026-01-08 11:32:12 +02:00
Martin Storsjö 8fb8fb4b05 build-busybox: Add a script for building busybox for Windows 2026-01-08 11:32:12 +02:00
Martin Storsjö 4a02966e4b build-make: Install the license file 2026-01-08 11:31:52 +02:00
Martin Storsjö 0b6cd54c4f build-mingw-w64-tools: Add a .txt suffix on the COPYING files 2026-01-08 11:31:38 +02:00
Martin Storsjö 9e00ce96c7 build-python: Install the license files for libffi and python 2026-01-08 11:26:44 +02:00
Martin Storsjö 83a3ca8e09 build-llvm: Disable LLVM_ENABLE_BINDINGS
According to https://github.com/mstorsjo/llvm-mingw/issues/533,
if OCaml support is detected and the LLVM OCaml bindings are built,
they are attempted to be installed in a path that require root access.
2025-12-26 00:35:35 +02:00
Martin Storsjö 6465b7f2ca github: Cache the gnu make tarball in the msvcrt build too
This applies the changes from b0bbde0073
to the msvcrt toolchain build as well.
2025-12-17 13:48:30 +02:00
Martin Storsjö 88f330fefc build-llvm: Bump to LLVM 21.1.8 2025-12-16 15:15:59 +02:00
Martin Storsjö ecabce6cc3 build-mingw-w64: Bump to the latest version as of Dec 16th 2025-12-16 15:15:28 +02:00
Martin Storsjö 322c941069 run-tests: Use "uname" instead of "uname -s"
"-s" is the default option if none is specified.

This improves consistency with other uses of "uname" in the
scripts.
2025-12-16 11:50:36 +02:00
Martin Storsjö 309cdd5690 run-tests: Improve a comment 2025-12-16 11:50:23 +02:00
Martin Storsjö 1ce1cf7c3d build-llvm: Allow overriding the llvm repo url through LLVM_REPOSITORY
This matches the existing LLVM_VERSION env variable.
2025-12-08 14:50:42 +02:00
Martin Storsjö b0bbde0073 github: Cache the gnu make tarball
This avoids breaking the build if the gnu download server is
unavailable.
2025-12-02 13:56:12 +02:00
Martin Storsjö 06e91d01b0 github: Fix passing arguments to lit for the openmp tests
The previous parameter wasn't used.
2025-12-02 13:38:47 +02:00
Martin Storsjö 1c915916c7 build-llvm: Bump to LLVM 21.1.7 2025-12-02 11:29:17 +02:00
Martin Storsjö 3b2ce1d0d0 build-mingw-w64: Bump to the latest version as of Dec 2nd 2025-12-02 11:28:35 +02:00
Martin Storsjö 259cd18db3 build-llvm: Bump to LLVM 21.1.6 2025-11-18 14:40:09 +02:00
Martin Storsjö ac41e524f3 build-mingw-w64: Bump to the latest version as of Nov 18th 2025-11-18 14:39:53 +02:00
Mateusz Mikuła 9e39b82907 install-wrappers: Add config file symlinks for triples with vendor "pc" 2025-11-18 14:39:16 +02:00
Martin Storsjö 466fbcb68f build-llvm: Bump to LLVM 21.1.5 2025-11-04 11:47:32 +02:00
Martin Storsjö 18964a2b0b build-mingw-w64: Bump to the latest version as of Nov 4th 2025-11-04 11:47:09 +02:00
Martin Storsjö 09aac5c121 strip-llvm: Extend patterns to remove "offload-arch" and "yaml2macho-core" 2025-10-25 21:56:24 +03:00
Martin Storsjö e6cbbe9a35 test: Add a test for catching pointers by reference
This test should make sure that
https://github.com/mstorsjo/llvm-mingw/issues/522 doesn't
regress again.
2025-10-21 22:20:19 +03:00
Martin Storsjö 035a464964 build-llvm: Bump to LLVM 21.1.4
This version fixes catching pointer data types by reference in C++.

This version also fixes throwing C++ exceptions on aarch64 with
a debugger attached to the process.

Finally, this version fixes delayimport calling of C++ methods that
return structs on aarch64.
2025-10-21 11:30:59 +03:00
Martin Storsjö 84abc5e88a build-mingw-w64: Bump to the latest version as of Oct 21st 2025-10-21 11:30:11 +03:00
Norbert Lange b482faa3c1 fix: repair check if existing clang supports CFG
An existing clang might support Control flow guard, but does
so only for Windows targets.
2025-10-18 23:25:30 +03:00
Martin Storsjö 6f078940a3 build-llvm: Bump to LLVM 21.1.3 2025-10-07 22:33:31 +03:00
Martin Storsjö ec3b6109a3 build-mingw-w64: Bump to the latest version as of Oct 7th 2025-10-07 22:33:13 +03:00
Martin Storsjö 796122a107 build-llvm: Bump to LLVM 21.1.2 2025-09-24 09:42:54 +03:00
Martin Storsjö 2de90b4f70 build-mingw-w64: Bump to the latest version as of Sep 24th 2025-09-24 09:42:38 +03:00
Martin Storsjö 3766326dbb github: Stop specifying CMAKE_CXX_COMPILER_TARGET
The preinstalled CMake on the ARM64 runners now should be a native
ARM64 CMake, which allows autodetecting CMAKE_CXX_COMPILER_TARGET
correctly.
2025-09-23 14:00:00 +03:00