Skip to content

Commit 56914c5

Browse files
committed
[LLVM] Bump to llvm 19.1.6
* Update windows sdk to 26100 * Use built-in cmake * Add libxml2 Signed-off-by: Shen-Ta Hsieh <[email protected]>
1 parent 0f8709e commit 56914c5

File tree

2 files changed

+76
-48
lines changed

2 files changed

+76
-48
lines changed

.github/workflows/build.yml

+36-23
Original file line numberDiff line numberDiff line change
@@ -25,56 +25,69 @@ jobs:
2525
- name: Install dependency
2626
uses: crazy-max/ghaction-chocolatey@v1
2727
with:
28-
args: install cmake ninja vswhere 7zip.install
28+
args: install --no-progress ninja vswhere 7zip.install
2929
- name: Upgrade dependency
3030
uses: crazy-max/ghaction-chocolatey@v1
3131
with:
32-
args: upgrade llvm
32+
args: upgrade --no-progress llvm
3333

3434
- uses: GuillaumeFalourd/setup-windows10-sdk-action@v2
3535
with:
36-
sdk-version: 22621
36+
sdk-version: 26100
3737

38-
- name: Checkout by pushing tags
39-
run: git clone --branch llvmorg-17.0.6 --depth 1 https://github.com/llvm/llvm-project.git
38+
- name: Checkout libxml2
39+
run: git clone --quiet --branch v2.13.5 --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git
40+
41+
- name: Build libxml2
42+
run: |
43+
$vsPath = (vswhere -latest -property installationPath)
44+
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
45+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
46+
$Env:CC = "clang-cl"
47+
$Env:CXX = "clang-cl"
48+
$cmake_sys_ver = "10.0.26100.0"
49+
$prefix = "$pwd\prefix"
50+
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLIBXML2_WITH_ICONV=OFF libxml2
51+
cmake --build build --target install
52+
Remove-Item -Recurse build
53+
54+
- name: Checkout llvm
55+
run: git clone --quiet --branch llvmorg-19.1.6 --depth 1 https://github.com/llvm/llvm-project.git
4056

4157
- name: Build llvm stage 1
4258
run: |
4359
$vsPath = (vswhere -latest -property installationPath)
4460
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
45-
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.22621.0"
61+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
4662
$Env:CC = "clang-cl"
4763
$Env:CXX = "clang-cl"
48-
$cmake_sys_ver = "10.0.22621.0"
49-
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCPACK_GENERATOR=ZIP "-DCMAKE_INSTALL_PREFIX=$pwd\\prefix" -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF llvm-project\\llvm
50-
cmake --build build --target package
51-
Expand-Archive -Path build/*.zip -DestinationPath "$pwd"
64+
$cmake_sys_ver = "10.0.26100.0"
65+
$prefix = "$pwd\prefix"
66+
cmake -Bbuild -GNinja -DCMAKE_SYSTEM_VERSION=$cmake_sys_ver -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF -DLLVM_ENABLE_LIBXML2=FORCE_ON -DLIBXML2_INCLUDE_DIR:PATH="$prefix\include\libxml2" -DLIBXML2_LIBRARY:FILEPATH="$prefix\lib\libxml2.lib" llvm-project\llvm
67+
cmake --build build --target install
5268
Remove-Item -Recurse -Force build
5369
5470
- name: Build llvm stage 2
5571
run: |
5672
$vsPath = (vswhere -latest -property installationPath)
5773
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
58-
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.22621.0"
59-
$Env:CC = "$pwd\\LLVM-17.0.6-win64\\bin\\clang-cl.exe"
60-
$Env:CXX = "$pwd\\LLVM-17.0.6-win64\\bin\\clang-cl.exe"
61-
$cmake_sys_ver = "10.0.22621.0"
62-
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCPACK_GENERATOR=ZIP "-DCMAKE_INSTALL_PREFIX=$pwd\\prefix" -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF llvm-project\\llvm
63-
cmake --build build --target package
74+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
75+
$prefix = "$pwd\prefix"
76+
$Env:CC = "$prefix\bin\clang-cl.exe"
77+
$Env:CXX = "$prefix\bin\clang-cl.exe"
78+
$cmake_sys_ver = "10.0.26100.0"
79+
cmake -Bbuild -GNinja -DCMAKE_SYSTEM_VERSION=$cmake_sys_ver -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF -DLLVM_ENABLE_LIBXML2=FORCE_ON -DLIBXML2_INCLUDE_DIR:PATH="$prefix\include\libxml2" -DLIBXML2_LIBRARY:FILEPATH="$prefix\lib\libxml2.lib" llvm-project\llvm
80+
cmake --build build --target install
6481
6582
- name: Repack zip package
6683
run: |
67-
$name = (Get-Item build/LLVM-*.zip).Name
68-
$basename = (Get-Item build/LLVM-*.zip).BaseName
69-
Remove-Item -Recurse -Force "$basename"
70-
Expand-Archive -Path "build/$name" -DestinationPath "$pwd"
71-
Remove-Item "build/$name"
72-
7z a -mx=9 -tzip -mtm=off -mtc=off -mta=off "build/$name" "$basename"
84+
Rename-Item prefix LLVM-19.1.6-win64
85+
7z a -mx=9 -tzip -mtm=off -mtc=off -mta=off LLVM-19.1.6-win64-${{ matrix.rtlib }}.zip LLVM-19.1.6-win64
7386
7487
- name: Upload Artifact
7588
uses: actions/upload-artifact@v4
7689
with:
7790
name: llvm-${{ matrix.rtlib }}
78-
path: build/*.zip
91+
path: LLVM-*.zip
7992
retention-days: 14
8093
compression-level: 0

.github/workflows/release.yml

+40-25
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ jobs:
2222
env:
2323
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2424
with:
25-
tag_name: llvmorg-17.0.6
26-
release_name: llvmorg-17.0.6
25+
tag_name: llvmorg-19.1.6
26+
release_name: llvmorg-19.1.6
2727
draft: true
2828
prerelease: true
2929

@@ -38,55 +38,70 @@ jobs:
3838
- name: Install dependency
3939
uses: crazy-max/ghaction-chocolatey@v1
4040
with:
41-
args: install cmake ninja vswhere 7zip.install
41+
args: install --no-progress ninja vswhere 7zip.install
4242
- name: Upgrade dependency
4343
uses: crazy-max/ghaction-chocolatey@v1
4444
with:
45-
args: upgrade llvm
45+
args: upgrade --no-progress llvm
4646

4747
- uses: GuillaumeFalourd/setup-windows10-sdk-action@v2
4848
with:
49-
sdk-version: 22621
49+
sdk-version: 26100
5050

51-
- name: Checkout by pushing tags
51+
- name: Checkout libxml2
52+
run: git clone --quiet --branch v2.13.5 --depth 1 https://gitlab.gnome.org/GNOME/libxml2.git
53+
54+
- name: Build libxml2
55+
run: |
56+
$vsPath = (vswhere -latest -property installationPath)
57+
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
58+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
59+
$Env:CC = "clang-cl"
60+
$Env:CXX = "clang-cl"
61+
$cmake_sys_ver = "10.0.26100.0"
62+
$prefix = "$pwd\prefix"
63+
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLIBXML2_WITH_ICONV=OFF libxml2
64+
cmake --build build --target install
65+
Remove-Item -Recurse build
66+
67+
- name: Checkout llvm
5268
if: ${{ github.event_name == 'push' }}
53-
run: git clone --branch llvmorg-17.0.6 --depth 1 https://github.com/llvm/llvm-project.git
69+
run: git clone --quiet --branch llvmorg-19.1.6 --depth 1 https://github.com/llvm/llvm-project.git
5470

5571
- name: Build llvm stage 1
5672
run: |
5773
$vsPath = (vswhere -latest -property installationPath)
5874
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
59-
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.22621.0"
75+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
6076
$Env:CC = "clang-cl"
6177
$Env:CXX = "clang-cl"
62-
$cmake_sys_ver = "10.0.22621.0"
63-
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCPACK_GENERATOR=ZIP "-DCMAKE_INSTALL_PREFIX=$pwd\\prefix" -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF llvm-project\\llvm
64-
cmake --build build --target package
65-
Expand-Archive -Path build/*.zip -DestinationPath "$pwd"
78+
$cmake_sys_ver = "10.0.26100.0"
79+
$prefix = "$pwd\prefix"
80+
cmake -Bbuild -GNinja -DCMAKE_SYSTEM_VERSION=$cmake_sys_ver -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF -DLLVM_ENABLE_LIBXML2=FORCE_ON -DLIBXML2_INCLUDE_DIR:PATH="$prefix\include\libxml2" -DLIBXML2_LIBRARY:FILEPATH="$prefix\lib\libxml2.lib" llvm-project\llvm
81+
cmake --build build --target install
6682
Remove-Item -Recurse -Force build
6783
6884
- name: Build llvm stage 2
6985
run: |
7086
$vsPath = (vswhere -latest -property installationPath)
7187
Import-Module (Join-Path $vsPath "Common7\Tools\Microsoft.VisualStudio.DevShell.dll")
72-
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.22621.0"
73-
$Env:CC = "$pwd\\LLVM-17.0.6-win64\\bin\\clang-cl.exe"
74-
$Env:CXX = "$pwd\\LLVM-17.0.6-win64\\bin\\clang-cl.exe"
75-
$cmake_sys_ver = "10.0.22621.0"
76-
cmake -Bbuild -GNinja "-DCMAKE_SYSTEM_VERSION=$cmake_sys_ver" -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCPACK_GENERATOR=ZIP "-DCMAKE_INSTALL_PREFIX=$pwd\\prefix" -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF llvm-project\\llvm
77-
cmake --build build --target package
88+
Enter-VsDevShell -VsInstallPath $vsPath -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64 -winsdk=10.0.26100.0"
89+
$prefix = "$pwd\prefix"
90+
$Env:CC = "$prefix\bin\clang-cl.exe"
91+
$Env:CXX = "$prefix\bin\clang-cl.exe"
92+
$cmake_sys_ver = "10.0.26100.0"
93+
cmake -Bbuild -GNinja -DCMAKE_SYSTEM_VERSION=$cmake_sys_ver -DCMAKE_MSVC_RUNTIME_LIBRARY=${{ matrix.rtlib }} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=$prefix -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="lld;clang;clang-tools-extra" -DLLVM_ENABLE_DIA_SDK=OFF -DLLVM_ENABLE_LIBXML2=FORCE_ON -DLIBXML2_INCLUDE_DIR:PATH="$prefix\include\libxml2" -DLIBXML2_LIBRARY:FILEPATH="$prefix\lib\libxml2.lib" llvm-project\llvm
94+
cmake --build build --target install
7895
7996
- name: Repack zip package
8097
run: |
81-
$name = (Get-Item build/LLVM-*.zip).Name
82-
$basename = (Get-Item build/LLVM-*.zip).BaseName
83-
Remove-Item -Recurse -Force "$basename"
84-
Expand-Archive -Path "build/$name" -DestinationPath "$pwd"
85-
Remove-Item "build/$name"
86-
7z a -mx=9 -tzip -mtm=off -mtc=off -mta=off "build/$name" "$basename"
98+
Rename-Item prefix LLVM-19.1.6-win64
99+
7z a -mx=9 -tzip -mtm=off -mtc=off -mta=off LLVM-19.1.6-win64-${{ matrix.rtlib }}.zip LLVM-19.1.6-win64
87100
88101
- name: Upload LLVM zip package
89102
env:
90103
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
91104
run: |
92-
gh release upload LLVM-17.0.6-win64-${{ matrix.rtlib }}.zip build/*.zip --clobber
105+
$name = (Get-Item LLVM-*.zip).Name
106+
$basename = (Get-Item LLVM-*.zip).BaseName
107+
gh release upload $basename-${{ matrix.rtlib }}.zip $name --clobber

0 commit comments

Comments
 (0)