Add Windows support and clean up toolchain #10

已合并
harraiken 2025-07-10 12:37:42 +02:00 将 39 次代码提交从 multiplatform合并至 master
所有者

What Changed?

General

  • Eliminated custom wrappers for LLVM/Clang and windres

CMake

  • Removed XTchain-branding patches

Build script

  • Renamed build-linux.sh to build.sh — one script now handles both full and minimal builds
  • Added support for building tools for both Windows and Linux.
  • Runtime cleanup
  • Removed mingw-w64 and associated runtime libraries — Windows runtime is not needed for ExectOS/toolchain.

Windows support

  • Added PowerShell scripts that mirror existing Bash functionality.

Pipeline update

  • CI/CD now automatically builds both minimal and full variants.

Build Variants

  1. Minimal: builds integrated tools (bin2c, exetool, xtcspecc) and + Wine tools (widl, wrc, wmc)
  2. Full: includes everything from minimal, plus LLVM/Clang, CMake, and Ninja
## What Changed? ### General - Eliminated custom wrappers for LLVM/Clang and windres ### CMake - Removed XTchain-branding patches ### Build script - Renamed build-linux.sh to build.sh — one script now handles both full and minimal builds - Added support for building tools for both Windows and Linux. - Runtime cleanup - Removed mingw-w64 and associated runtime libraries — Windows runtime is not needed for ExectOS/toolchain. ### Windows support - Added PowerShell scripts that mirror existing Bash functionality. ### Pipeline update - CI/CD now automatically builds both minimal and full variants. ## Build Variants 1. Minimal: builds integrated tools (bin2c, exetool, xtcspecc) and + Wine tools (widl, wrc, wmc) 2. Full: includes everything from minimal, plus LLVM/Clang, CMake, and Ninja
harraiken2025-07-09 13:23:19 +02:00 推送了 33 个提交
Move script
一些检查失败了
Builds / XTChain (push) Has been cancelled
b96a800424
Rewrite build script
一些检查失败了
Builds / XTChain (push) Has been cancelled
dfd0058a75
Update readme
一些检查失败了
Builds / XTChain (push) Has been cancelled
5ab6d382c1
Remove mingw32
一些检查失败了
Builds / XTChain (push) Failing after 1m4s
f290b7ad1c
Update pipeline
一些检查失败了
Builds / XTChain (push) Failing after 22s
e23ad59586
Build all targets
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m59s
Builds / XTChain (linux) (push) Failing after 8m53s
8c31eb6767
Fix wine tools build
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m25s
Builds / XTChain (windows) (push) Failing after -59m27s
73933eb246
Fix ninja build
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m50s
Builds / XTChain (linux) (push) Successful in 7m34s
9c476578a7
Update xtclib
所有检测均成功
Builds / XTChain (linux) (push) Successful in 23s
Builds / XTChain (windows) (push) Successful in 23s
83321f9f59
Delete clang wrapper
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m49s
Builds / XTChain (linux) (push) Successful in 16s
00fe356bea
Delete dlltool wrapper
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m51s
Builds / XTChain (windows) (push) Successful in 15s
8866b4893f
Delete ld wrapper
一些检查失败了
Builds / XTChain (linux) (push) Has been cancelled
Builds / XTChain (windows) (push) Has been cancelled
68c4b1ab87
Delete objtool wrapper
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m47s
Builds / XTChain (linux) (push) Successful in 15s
b8b5562cc4
Enable minimal build
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m46s
Builds / XTChain (linux) (push) Successful in 16s
bc85522143
Save XT Toolchain version
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m47s
Builds / XTChain (windows) (push) Failing after -59m48s
aae661d396
Fix xtchain tools build
所有检测均成功
Builds / XTChain (linux) (push) Successful in 22s
Builds / XTChain (windows) (push) Successful in 22s
0b5819ad61
Update cmake and ninja
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m50s
Builds / XTChain (windows) (push) Successful in 15s
f928d21d4c
Fixes
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m50s
Builds / XTChain (linux) (push) Successful in 18s
27ef533511
Fix build
一些检查失败了
Builds / XTChain (linux) (push) Successful in 16s
Builds / XTChain (windows) (push) Failing after -59m49s
5af8f058bb
Cleanup
一些检查失败了
Builds / XTChain (linux) (push) Successful in 16s
Builds / XTChain (windows) (push) Failing after -59m49s
243c010b20
Minimal build enabled
一些检查失败了
Builds / XTChain (linux) (push) Failing after 23s
Builds / XTChain (windows) (push) Failing after 23s
153cfa0181
Produce archive
一些检查失败了
Builds / XTChain (linux) (push) Failing after 24s
Builds / XTChain (windows) (push) Failing after 23s
e691c95aee
Post build
一些检查失败了
Builds / XTChain (linux) (push) Failing after 24s
Builds / XTChain (windows) (push) Failing after 24s
5898a2a484
Delete windres
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m50s
Builds / XTChain (linux) (push) Failing after 15s
18c725042a
Cleanup
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m50s
Builds / XTChain (linux) (push) Failing after 17s
ce388b4ee4
Delete old patch
一些检查失败了
Builds / XTChain (windows) (push) Has been cancelled
Builds / XTChain (linux) (push) Has been cancelled
83f5fbd730
Delete old patch
一些检查失败了
Builds / XTChain (windows) (push) Failing after -59m52s
Builds / XTChain (linux) (push) Failing after 19s
c1286555da
Add xtclib.ps1
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m51s
Builds / XTChain (windows) (push) Failing after 17s
3d81be54d8
Add xtchain.ps1
一些检查失败了
Builds / XTChain (linux) (push) Failing after 24s
Builds / XTChain (windows) (push) Failing after 23s
e4941dea87
Parallel build
一些检查失败了
Builds / XTChain (linux) (push) Failing after -59m51s
Builds / XTChain (windows) (push) Failing after 18s
e2aa006f8d
Enable minimal build
一些检查失败了
Builds / XTchain (full, linux) (push) Failing after 23s
Builds / XTchain (full, windows) (push) Failing after 21s
Builds / XTchain (minimal, linux) (push) Failing after 22s
Builds / XTchain (minimal, windows) (push) Failing after 22s
9d93103940
Distinguish build type in the archive name
所有检测均成功
Builds / XTchain (full, linux) (push) Successful in 2m25s
Builds / XTchain (full, windows) (push) Successful in 2m23s
Builds / XTchain (minimal, linux) (push) Successful in 2m10s
Builds / XTchain (minimal, windows) (push) Successful in 2m6s
eb90b2892a
Uncomment commands
一些检查失败了
Builds / XTchain (full, linux) (push) Has started running
Builds / XTchain (full, windows) (push) Has started running
Builds / XTchain (minimal, linux) (push) Has been cancelled
Builds / XTchain (minimal, windows) (push) Has been cancelled
dc7ad21703
harraiken2025-07-09 13:52:00 +02:00 推送了 1 个提交
Revert eb90b2892a
一些检查失败了
Builds / XTchain (full, linux) (push) Has started running
Builds / XTchain (full, windows) (push) Has started running
Builds / XTchain (minimal, linux) (push) Has been cancelled
Builds / XTchain (minimal, windows) (push) Has been cancelled
6177658452
harraiken2025-07-09 13:53:41 +02:00 推送了 1 个提交
Update readme
所有检测均成功
Builds / XTchain (full, linux) (push) Successful in 1h32m19s
Builds / XTchain (full, windows) (push) Successful in 1h32m47s
Builds / XTchain (minimal, windows) (push) Successful in 2m18s
Builds / XTchain (minimal, linux) (push) Successful in 2m49s
e5dc251860
harraiken2025-07-09 17:39:41 +02:00 推送了 1 个提交
Show windres version and path
一些检查失败了
Builds / XTchain (full, linux) (push) Has started running
Builds / XTchain (full, windows) (push) Has started running
Builds / XTchain (minimal, linux) (push) Has been cancelled
Builds / XTchain (minimal, windows) (push) Has been cancelled
e82352d3dd
harraiken2025-07-09 17:40:59 +02:00 推送了 1 个提交
Show windres version and path
所有检测均成功
Builds / XTchain (full, linux) (push) Successful in 1h33m8s
Builds / XTchain (full, windows) (push) Successful in 1h33m33s
Builds / XTchain (minimal, linux) (push) Successful in 2m36s
Builds / XTchain (minimal, windows) (push) Successful in 2m8s
d8d25de0d0
首次贡献者

A better prompt that resembles the original one. Git support is "partial".

# Invoke shell with fancy prompt
function global:prompt {
    $toolchain = " XT Toolchain "
    $cwd = (Get-Location).Path
    $git = ""

    if (Get-Command git -ErrorAction SilentlyContinue) {
        try {
            $branch = git rev-parse --abbrev-ref HEAD 2>$null
            if ($branch -and $branch -ne 'HEAD') {
                $git = " $branch"
            }
        } catch {}
    }

    # Define segments only — no standalone chevron objects
    $segments = @(
        @{ Text = $toolchain; Bg = "Blue"; Fg = "White" },
        @{ Text = " $cwd ";     Bg = "DarkCyan";     Fg = "White" }
    )

    # if ($git) {
    #     $segments += @{ Text = " $git "; Bg = "Green"; Fg = "White" }
    # } else {
    #     $segments += @{ Text = "  No Git "; Bg = "Red"; Fg = "White" }
    # }

    $chevron = ""

    # Print segments
    for ($i = 0; $i -lt $segments.Count; $i++) {
        $seg = $segments[$i]
        $nextBg = if ($i + 1 -lt $segments.Count) { $segments[$i + 1].Bg } else { "Default" }

        Write-Host $seg.Text -NoNewLine -ForegroundColor $seg.Fg -BackgroundColor $seg.Bg

        if ($nextBg -ne "Default") {
            Write-Host $chevron -NoNewLine -ForegroundColor $seg.Bg -BackgroundColor $nextBg
        } else {
            Write-Host $chevron -NoNewLine -ForegroundColor $seg.Bg
        }
    }

    return "`n❯ "
}

imagen.png
imagen.png

A better prompt that resembles the original one. Git support is "partial". ```ps1 # Invoke shell with fancy prompt function global:prompt { $toolchain = " XT Toolchain " $cwd = (Get-Location).Path $git = "" if (Get-Command git -ErrorAction SilentlyContinue) { try { $branch = git rev-parse --abbrev-ref HEAD 2>$null if ($branch -and $branch -ne 'HEAD') { $git = " $branch" } } catch {} } # Define segments only — no standalone chevron objects $segments = @( @{ Text = $toolchain; Bg = "Blue"; Fg = "White" }, @{ Text = " $cwd "; Bg = "DarkCyan"; Fg = "White" } ) # if ($git) { # $segments += @{ Text = " $git "; Bg = "Green"; Fg = "White" } # } else { # $segments += @{ Text = "  No Git "; Bg = "Red"; Fg = "White" } # } $chevron = "" # Print segments for ($i = 0; $i -lt $segments.Count; $i++) { $seg = $segments[$i] $nextBg = if ($i + 1 -lt $segments.Count) { $segments[$i + 1].Bg } else { "Default" } Write-Host $seg.Text -NoNewLine -ForegroundColor $seg.Fg -BackgroundColor $seg.Bg if ($nextBg -ne "Default") { Write-Host $chevron -NoNewLine -ForegroundColor $seg.Bg -BackgroundColor $nextBg } else { Write-Host $chevron -NoNewLine -ForegroundColor $seg.Bg } } return "`n❯ " } ``` ![imagen.png](/attachments/512ebbc2-207c-4b72-8ae7-e9d60918b491) ![imagen.png](/attachments/9643aae7-7a7a-4c83-bcb2-0416470611bf)
harraiken2025-07-09 22:56:52 +02:00 推送了 1 个提交
Update PS1 prompt, thanks to perikiyoxd
所有检测均成功
Builds / XTchain (full, linux) (push) Successful in 1h30m39s
Builds / XTchain (full, windows) (push) Successful in 1h31m10s
Builds / XTchain (minimal, linux) (push) Successful in 2m44s
Builds / XTchain (minimal, windows) (push) Successful in 2m13s
6463d50cd3
作者
所有者

Thank you for your help in creating the new prompt. Your work was really helpful. I simplified it a bit, but your idea really made it look much better.

Thank you for your help in creating the new prompt. Your work was really helpful. I simplified it a bit, but your idea really made it look much better.
harraiken2025-07-09 23:12:36 +02:00 请求 Developers 评审
harraiken2025-07-09 23:13:41 +02:00 添加了标签
ENHANCEMENT
IDEA
REFACTORING
harraiken2025-07-09 23:13:54 +02:00 指派给自己
harraiken2025-07-10 10:36:46 +02:00 推送了 1 个提交
Change versioning convention
所有检测均成功
Builds / XTchain (full, linux) (push) Successful in 1h31m14s
Builds / XTchain (full, windows) (push) Successful in 1h31m42s
Builds / XTchain (minimal, windows) (push) Successful in 2m9s
Builds / XTchain (minimal, linux) (push) Successful in 2m40s
bbea77d58a
harraiken 取消对 Developers 的评审请求 2025-07-10 10:37:40 +02:00
harraiken 已合并提交 97491fb72amaster 2025-07-10 12:37:42 +02:00
harraiken2025-07-10 12:37:43 +02:00 删除了分支 multiplatform
登录 并参与到对话中。
没有提供说明。