Skip to content

Latest commit

 

History

History
118 lines (89 loc) · 4.99 KB

README.rst

File metadata and controls

118 lines (89 loc) · 4.99 KB

LLVM packages for Windows

Releases

Date LLVM Clang Remarks
2024-06-19 LLVM 18.1.8 Clang 18.1.8 The latest official LLVM release
2023-11-28 LLVM 17.0.6 Clang 17.0.6  
2023-06-14 LLVM 16.0.6 Clang 16.0.6 The latest LLVM that still can be compiled with MSVC 16 2019
2023-01-12 LLVM 15.0.7 Clang 15.0.7 Starting with this release, LLVM requires the external cmake folder
2022-06-25 LLVM 14.0.6 Clang 14.0.6  
2022-02-02 LLVM 13.0.1 Clang 13.0.1 The latest LLVM that still can be compiled with MSVC 15 2017
2021-07-08 LLVM 12.0.1 Clang 12.0.1  
2021-02-25 LLVM 11.1.0 Clang 11.1.0  
2020-08-06 LLVM 10.0.1 Clang 10.0.1  
2019-12-20 LLVM 9.0.1 Clang 9.0.1  
2019-07-19 LLVM 8.0.1 Clang 8.0.1 The latest LLVM that still can be compiled with MSVC 14 2015
2019-05-10 LLVM 7.1.0 Clang 7.1.0 The ABI compatibility with GCC fix for LLVM 7
2016-12-23 LLVM 3.9.1 Clang 3.9.1 The latest LLVM that still can be compiled with MSVC 12 2013
2014-06-19 LLVM 3.4.2 Clang 3.4.2 The latest LLVM that still can be compiled with MSVC 10 2010
  LLVM x.x.x Clang x.x.x Create a new issue to request a particular LLVM version

Abstract

LLVM is huge, and it's getting bigger with each and every release. Building it together with a project that depends on it (e.g., a programming language) during a CI build stage is not a good option -- building LLVM alone takes hours!

So why not use pre-built packages from the official LLVM download page? Unfortunately, the official Windows binaries only include the LLVM-C.dll, Clang, and some tools -- there are no LLVM headers, C++ libraries, and many essential LLVM tools such as lli.

The llvm-package-windows project builds all major versions of the LLVM and Clang libraries on GitHub Actions for the following matrix:

  • Configuration:
    • Debug
    • Release
  • Target CPU:
    • IA32 (a.k.a. x86)
    • AMD64 (a.k.a. x86_64)
  • C/C++ Runtime:
    • LIBCMT (static)
    • MSVCRT (dynamic)

The resulting LLVM binary packages are uploaded as GitHub Release artifacts. Compiler developers can now thoroughly test their LLVM-dependent projects on GitHub CI or AppVeyor CI simply by downloading and unpacking an archive with the required LLVM prebuilt libraries and tools during the CI installation stage.

Sample

  • Jancy uses llvm-package-windows for CI testing on a range of configurations and LLVM versions. See build logs for more details.