Add Windows support and clean up toolchain (#10)

Reviewed-on: xt-sys/xtchain#10
Co-authored-by: Aiken Harris <harraiken@noreply.codingworkshop.git>
Co-committed-by: Aiken Harris <harraiken@noreply.codingworkshop.git>
This commit is contained in:
2025-07-10 12:37:41 +02:00
zatwierdzone przez CodingWorkshop Signing Team
rodzic ef1065278b
commit 97491fb72a
16 zmienionych plików z 793 dodań i 3446 usunięć

Wyświetl plik

@@ -22,31 +22,28 @@
---
## 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 XT OS. Currently, it is
targeted at Linux host only, however it should be possible to build it in MSYS2 as well.
The XT Toolchain is a build environment based on LLVM/Clang/LLD. It currently supports C and C++, and includes
a variety of auxiliary tools such as IDL, message, and resource compilers. The XT Toolchain is the official
build system for compiling XT software, including the XT OS. It is currently available for Linux and Windows
host systems.
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.
Key Benefits of using an LLVM-based Toolchain:
* Unified toolchain for multiple target architectures: i686, x86_64, armv7, and aarch64
* Support for generating debug information in PDB format
* Ability to target ARM/AArch64 architectures and produce ARM binaries
This software includes:
This toolchain includes the following software:
* CMake
* GNU Assembler
* LLVM
* Make
* Mingw-w64
* Ninja
* Wine
This software is based on [LLVM MinGW Toolchain](https://github.com/mstorsjo/llvm-mingw).
**Note:** This toolchain is based on the [LLVM MinGW Toolchain](https://github.com/mstorsjo/llvm-mingw).
## 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.
The XTchain project includes scripts for building and assembling the toolchain, as well as the environment
shell. These components are licensed under the GNU GPLv3 license. This license applies only to the parts
provided directly by XTchain. For detailed information, please refer to the COPYING.md file.
The final pre-built toolchain is subject to the licenses of the individual third-party projects it includes.
A complete list of the external software used in this toolchain can be found in the README.md file.