XT Toolchain
Go to file
Rafal Kupiec 04edfa61dd
continuous-integration/drone/push Build is failing Details
Update CMake to v3.19.2 and add version suffix string.
2020-12-17 23:23:34 +01:00
patches Update CMake to v3.19.2 and add version suffix string. 2020-12-17 23:23:34 +01:00
scripts Set target to i386. 2020-08-26 17:01:25 +02:00
tools This toolchain is based on LLVM and we do not need GCC support in SPEC compiler. 2020-09-10 21:28:37 +02:00
.build.yml Add pipeline 2020-11-12 22:03:40 +01:00
COPYING.md Update license. 2020-08-17 17:38:43 +02:00
README.md Add NASM to the list of used software. 2020-10-05 23:09:12 +02:00
build-linux.sh Update CMake to v3.19.2 and add version suffix string. 2020-12-17 23:23:34 +01:00

README.md

XT Toolchain

This is a LLVM/Clang/LLD based mingw-w64 toolchain. It currently supports C and C++, and provides a variety of tools including IDL, message and resource compilers. The XT Toolchain is also the official build environment for compiling XT software, including the FerretOS. Currently, it is targeted at Linux host only, however it should be possible to build it in MSYS2 as well.

Benefits of a LLVM based MinGW toolchain are:

  • Single toolchain targeting all architectures (i686, x86_64, armv7 and aarch64),
  • Support for generating debug info in PDB format,
  • Support for targeting ARM/AARCH64 architectures and ability to produce Windows ARM binaries.

This software includes:

  • CMake
  • LLVM
  • Make
  • Mingw-w64
  • NASM
  • Ninja
  • Wine

This software is based on LLVM MinGW Toolchain.

Licensing

The XTchain project includes the scripts for building and assembling a toolchain as well as wrappers for LLVM tools and environmental shell. These are licensed under the GPLv3 license. It covers only mentioned components that are provided by XTchain directly. For more information on that, refer to the COPYING.md file. The final pre-built toolchain is covered by the licenses of the individual, external projects. The full list of software incorporated into this toolchain is available in the README.md file.