Skip to content

Commit bcb534c

Browse files
committed
Merge branch 'llvm18'
Upgrades the LLVM, Clang, and LLD dependencies to LLVM 18.x Related to #16270
2 parents d9b00ee + 74f5295 commit bcb534c

File tree

1,107 files changed

+109698
-113835
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,107 files changed

+109698
-113835
lines changed

.github/workflows/ci.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
push:
55
branches:
66
- master
7+
- llvm18
78
concurrency:
89
# Cancels pending runs when a PR gets updated.
910
group: ${{ github.head_ref || github.run_id }}-${{ github.actor }}

CMakeLists.txt

Lines changed: 55 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,9 @@ else()
140140
set(ZIG_SYSTEM_LIBCXX "stdc++" CACHE STRING "system libcxx name for build.zig")
141141
endif()
142142

143-
find_package(llvm 17)
144-
find_package(clang 17)
145-
find_package(lld 17)
143+
find_package(llvm 18)
144+
find_package(clang 18)
145+
find_package(lld 18)
146146

147147
if(ZIG_STATIC_ZLIB)
148148
if (MSVC)
@@ -526,42 +526,54 @@ set(ZIG_STAGE2_SOURCES
526526
"${CMAKE_SOURCE_DIR}/lib/std/zig/system/x86.zig"
527527
"${CMAKE_SOURCE_DIR}/lib/std/zig/tokenizer.zig"
528528
"${CMAKE_SOURCE_DIR}/src/Air.zig"
529+
"${CMAKE_SOURCE_DIR}/src/Builtin.zig"
529530
"${CMAKE_SOURCE_DIR}/src/Compilation.zig"
530531
"${CMAKE_SOURCE_DIR}/src/Compilation/Config.zig"
532+
"${CMAKE_SOURCE_DIR}/src/DarwinPosixSpawn.zig"
533+
"${CMAKE_SOURCE_DIR}/src/InternPool.zig"
531534
"${CMAKE_SOURCE_DIR}/src/Liveness.zig"
535+
"${CMAKE_SOURCE_DIR}/src/Liveness/Verify.zig"
532536
"${CMAKE_SOURCE_DIR}/src/Module.zig"
533537
"${CMAKE_SOURCE_DIR}/src/Package.zig"
534538
"${CMAKE_SOURCE_DIR}/src/Package/Fetch.zig"
539+
"${CMAKE_SOURCE_DIR}/src/Package/Fetch/git.zig"
540+
"${CMAKE_SOURCE_DIR}/src/Package/Manifest.zig"
541+
"${CMAKE_SOURCE_DIR}/src/Package/Module.zig"
535542
"${CMAKE_SOURCE_DIR}/src/RangeSet.zig"
536543
"${CMAKE_SOURCE_DIR}/src/Sema.zig"
544+
"${CMAKE_SOURCE_DIR}/src/Sema/bitcast.zig"
545+
"${CMAKE_SOURCE_DIR}/src/Sema/comptime_ptr_access.zig"
537546
"${CMAKE_SOURCE_DIR}/src/Value.zig"
538547
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/CodeGen.zig"
539548
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/Emit.zig"
540549
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/Mir.zig"
541-
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/bits.zig"
542550
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/abi.zig"
551+
"${CMAKE_SOURCE_DIR}/src/arch/aarch64/bits.zig"
543552
"${CMAKE_SOURCE_DIR}/src/arch/arm/CodeGen.zig"
544553
"${CMAKE_SOURCE_DIR}/src/arch/arm/Emit.zig"
545554
"${CMAKE_SOURCE_DIR}/src/arch/arm/Mir.zig"
546-
"${CMAKE_SOURCE_DIR}/src/arch/arm/bits.zig"
547555
"${CMAKE_SOURCE_DIR}/src/arch/arm/abi.zig"
556+
"${CMAKE_SOURCE_DIR}/src/arch/arm/bits.zig"
548557
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/CodeGen.zig"
549558
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/Emit.zig"
550559
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/Mir.zig"
551-
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/bits.zig"
552560
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/abi.zig"
561+
"${CMAKE_SOURCE_DIR}/src/arch/riscv64/bits.zig"
553562
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/CodeGen.zig"
554563
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/Emit.zig"
555564
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/Mir.zig"
556-
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/bits.zig"
557565
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/abi.zig"
566+
"${CMAKE_SOURCE_DIR}/src/arch/sparc64/bits.zig"
558567
"${CMAKE_SOURCE_DIR}/src/arch/wasm/CodeGen.zig"
559568
"${CMAKE_SOURCE_DIR}/src/arch/wasm/Emit.zig"
560569
"${CMAKE_SOURCE_DIR}/src/arch/wasm/Mir.zig"
570+
"${CMAKE_SOURCE_DIR}/src/arch/wasm/abi.zig"
571+
"${CMAKE_SOURCE_DIR}/src/arch/x86/bits.zig"
561572
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/CodeGen.zig"
562573
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/Disassembler.zig"
563574
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/Emit.zig"
564575
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/Encoding.zig"
576+
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/Lower.zig"
565577
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/Mir.zig"
566578
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/abi.zig"
567579
"${CMAKE_SOURCE_DIR}/src/arch/x86_64/bits.zig"
@@ -574,7 +586,17 @@ set(ZIG_STAGE2_SOURCES
574586
"${CMAKE_SOURCE_DIR}/src/codegen/c.zig"
575587
"${CMAKE_SOURCE_DIR}/src/codegen/c/Type.zig"
576588
"${CMAKE_SOURCE_DIR}/src/codegen/llvm.zig"
589+
"${CMAKE_SOURCE_DIR}/src/codegen/llvm/BitcodeReader.zig"
590+
"${CMAKE_SOURCE_DIR}/src/codegen/llvm/Builder.zig"
577591
"${CMAKE_SOURCE_DIR}/src/codegen/llvm/bindings.zig"
592+
"${CMAKE_SOURCE_DIR}/src/codegen/llvm/bitcode_writer.zig"
593+
"${CMAKE_SOURCE_DIR}/src/codegen/llvm/ir.zig"
594+
"${CMAKE_SOURCE_DIR}/src/codegen/spirv.zig"
595+
"${CMAKE_SOURCE_DIR}/src/codegen/spirv/Assembler.zig"
596+
"${CMAKE_SOURCE_DIR}/src/codegen/spirv/Module.zig"
597+
"${CMAKE_SOURCE_DIR}/src/codegen/spirv/Section.zig"
598+
"${CMAKE_SOURCE_DIR}/src/codegen/spirv/spec.zig"
599+
"${CMAKE_SOURCE_DIR}/src/crash_report.zig"
578600
"${CMAKE_SOURCE_DIR}/src/glibc.zig"
579601
"${CMAKE_SOURCE_DIR}/src/introspect.zig"
580602
"${CMAKE_SOURCE_DIR}/src/libcxx.zig"
@@ -586,7 +608,9 @@ set(ZIG_STAGE2_SOURCES
586608
"${CMAKE_SOURCE_DIR}/src/link/Coff/Atom.zig"
587609
"${CMAKE_SOURCE_DIR}/src/link/Coff/ImportTable.zig"
588610
"${CMAKE_SOURCE_DIR}/src/link/Coff/Object.zig"
611+
"${CMAKE_SOURCE_DIR}/src/link/Coff/Relocation.zig"
589612
"${CMAKE_SOURCE_DIR}/src/link/Coff/lld.zig"
613+
"${CMAKE_SOURCE_DIR}/src/link/Dwarf.zig"
590614
"${CMAKE_SOURCE_DIR}/src/link/Elf.zig"
591615
"${CMAKE_SOURCE_DIR}/src/link/Elf/Archive.zig"
592616
"${CMAKE_SOURCE_DIR}/src/link/Elf/Atom.zig"
@@ -599,6 +623,7 @@ set(ZIG_STAGE2_SOURCES
599623
"${CMAKE_SOURCE_DIR}/src/link/Elf/eh_frame.zig"
600624
"${CMAKE_SOURCE_DIR}/src/link/Elf/file.zig"
601625
"${CMAKE_SOURCE_DIR}/src/link/Elf/gc.zig"
626+
"${CMAKE_SOURCE_DIR}/src/link/Elf/merge_section.zig"
602627
"${CMAKE_SOURCE_DIR}/src/link/Elf/relocatable.zig"
603628
"${CMAKE_SOURCE_DIR}/src/link/Elf/relocation.zig"
604629
"${CMAKE_SOURCE_DIR}/src/link/Elf/synthetic_sections.zig"
@@ -617,9 +642,9 @@ set(ZIG_STAGE2_SOURCES
617642
"${CMAKE_SOURCE_DIR}/src/link/MachO/UnwindInfo.zig"
618643
"${CMAKE_SOURCE_DIR}/src/link/MachO/ZigObject.zig"
619644
"${CMAKE_SOURCE_DIR}/src/link/MachO/dead_strip.zig"
620-
"${CMAKE_SOURCE_DIR}/src/link/MachO/dyld_info/bind.zig"
621645
"${CMAKE_SOURCE_DIR}/src/link/MachO/dyld_info/Rebase.zig"
622646
"${CMAKE_SOURCE_DIR}/src/link/MachO/dyld_info/Trie.zig"
647+
"${CMAKE_SOURCE_DIR}/src/link/MachO/dyld_info/bind.zig"
623648
"${CMAKE_SOURCE_DIR}/src/link/MachO/eh_frame.zig"
624649
"${CMAKE_SOURCE_DIR}/src/link/MachO/fat.zig"
625650
"${CMAKE_SOURCE_DIR}/src/link/MachO/file.zig"
@@ -629,15 +654,32 @@ set(ZIG_STAGE2_SOURCES
629654
"${CMAKE_SOURCE_DIR}/src/link/MachO/synthetic.zig"
630655
"${CMAKE_SOURCE_DIR}/src/link/MachO/thunks.zig"
631656
"${CMAKE_SOURCE_DIR}/src/link/MachO/uuid.zig"
657+
"${CMAKE_SOURCE_DIR}/src/link/NvPtx.zig"
632658
"${CMAKE_SOURCE_DIR}/src/link/Plan9.zig"
633659
"${CMAKE_SOURCE_DIR}/src/link/Plan9/aout.zig"
634-
"${CMAKE_SOURCE_DIR}/src/link/Wasm.zig"
635-
"${CMAKE_SOURCE_DIR}/src/link/msdos-stub.bin"
660+
"${CMAKE_SOURCE_DIR}/src/link/SpirV.zig"
661+
"${CMAKE_SOURCE_DIR}/src/link/SpirV/BinaryModule.zig"
662+
"${CMAKE_SOURCE_DIR}/src/link/SpirV/deduplicate.zig"
663+
"${CMAKE_SOURCE_DIR}/src/link/SpirV/lower_invocation_globals.zig"
664+
"${CMAKE_SOURCE_DIR}/src/link/SpirV/prune_unused.zig"
636665
"${CMAKE_SOURCE_DIR}/src/link/StringTable.zig"
666+
"${CMAKE_SOURCE_DIR}/src/link/Wasm.zig"
667+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/Archive.zig"
668+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/Atom.zig"
669+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/Object.zig"
670+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/Symbol.zig"
671+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/ZigObject.zig"
672+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/file.zig"
673+
"${CMAKE_SOURCE_DIR}/src/link/Wasm/types.zig"
674+
"${CMAKE_SOURCE_DIR}/src/link/aarch64.zig"
675+
"${CMAKE_SOURCE_DIR}/src/link/riscv.zig"
676+
"${CMAKE_SOURCE_DIR}/src/link/table_section.zig"
637677
"${CMAKE_SOURCE_DIR}/src/link/tapi.zig"
638678
"${CMAKE_SOURCE_DIR}/src/link/tapi/Tokenizer.zig"
639679
"${CMAKE_SOURCE_DIR}/src/link/tapi/parse.zig"
680+
"${CMAKE_SOURCE_DIR}/src/link/tapi/parse/test.zig"
640681
"${CMAKE_SOURCE_DIR}/src/link/tapi/yaml.zig"
682+
"${CMAKE_SOURCE_DIR}/src/link/tapi/yaml/test.zig"
641683
"${CMAKE_SOURCE_DIR}/src/main.zig"
642684
"${CMAKE_SOURCE_DIR}/src/mingw.zig"
643685
"${CMAKE_SOURCE_DIR}/src/musl.zig"
@@ -685,7 +727,7 @@ if(MSVC)
685727
set(EXE_LDFLAGS "${EXE_LDFLAGS} /debug:fastlink")
686728
endif()
687729
else()
688-
set(EXE_CXX_FLAGS "-std=c++17 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D_GNU_SOURCE -fvisibility-inlines-hidden -fno-exceptions -fno-rtti -Werror=type-limits -Wno-missing-braces -Wno-comment")
730+
set(EXE_CXX_FLAGS "-std=c++17 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D_GNU_SOURCE -fvisibility-inlines-hidden -fno-exceptions -fno-rtti -Wno-type-limits -Wno-missing-braces -Wno-comment")
689731
set(EXE_LDFLAGS " ")
690732
if(MINGW)
691733
set(EXE_CXX_FLAGS "${EXE_CXX_FLAGS} -Wno-format")
@@ -866,9 +908,9 @@ target_include_directories(zig2 PUBLIC "${CMAKE_SOURCE_DIR}/stage1")
866908
target_link_libraries(zig2 LINK_PUBLIC zigcpp)
867909

868910
if(MSVC)
869-
target_link_libraries(zig2 LINK_PUBLIC ntdll.lib)
911+
target_link_libraries(zig2 LINK_PUBLIC ntdll.lib ws2_32.lib)
870912
elseif(MINGW)
871-
target_link_libraries(zig2 LINK_PUBLIC ntdll)
913+
target_link_libraries(zig2 LINK_PUBLIC ntdll ws2_32)
872914
endif()
873915

874916
if(NOT MSVC)

build.zig

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,9 @@ pub fn build(b: *std.Build) !void {
334334
}
335335
if (target.result.os.tag == .windows) {
336336
inline for (.{ exe, check_case_exe }) |artifact| {
337+
// LLVM depends on networking as of version 18.
338+
artifact.linkSystemLibrary("ws2_32");
339+
337340
artifact.linkSystemLibrary("version");
338341
artifact.linkSystemLibrary("uuid");
339342
artifact.linkSystemLibrary("ole32");
@@ -650,7 +653,7 @@ const exe_cflags = [_][]const u8{
650653
"-fvisibility-inlines-hidden",
651654
"-fno-exceptions",
652655
"-fno-rtti",
653-
"-Werror=type-limits",
656+
"-Wno-type-limits",
654657
"-Wno-missing-braces",
655658
"-Wno-comment",
656659
};
@@ -1039,6 +1042,7 @@ const clang_libs = [_][]const u8{
10391042
"clangAST",
10401043
"clangParse",
10411044
"clangSema",
1045+
"clangAPINotes",
10421046
"clangBasic",
10431047
"clangEdit",
10441048
"clangLex",
@@ -1068,6 +1072,7 @@ const llvm_libs = [_][]const u8{
10681072
"LLVMXRay",
10691073
"LLVMLibDriver",
10701074
"LLVMDlltoolDriver",
1075+
"LLVMTextAPIBinaryReader",
10711076
"LLVMCoverage",
10721077
"LLVMLineEditor",
10731078
"LLVMXCoreDisassembler",
@@ -1169,6 +1174,7 @@ const llvm_libs = [_][]const u8{
11691174
"LLVMAArch64Desc",
11701175
"LLVMAArch64Utils",
11711176
"LLVMAArch64Info",
1177+
"LLVMOrcDebugging",
11721178
"LLVMOrcJIT",
11731179
"LLVMWindowsDriver",
11741180
"LLVMMCJIT",
@@ -1188,17 +1194,21 @@ const llvm_libs = [_][]const u8{
11881194
"LLVMMCDisassembler",
11891195
"LLVMLTO",
11901196
"LLVMPasses",
1197+
"LLVMHipStdPar",
11911198
"LLVMCFGuard",
11921199
"LLVMCoroutines",
11931200
"LLVMipo",
11941201
"LLVMVectorize",
11951202
"LLVMLinker",
11961203
"LLVMInstrumentation",
11971204
"LLVMFrontendOpenMP",
1205+
"LLVMFrontendOffloading",
11981206
"LLVMFrontendOpenACC",
11991207
"LLVMFrontendHLSL",
1208+
"LLVMFrontendDriver",
12001209
"LLVMExtensions",
12011210
"LLVMDWARFLinkerParallel",
1211+
"LLVMDWARFLinkerClassic",
12021212
"LLVMDWARFLinker",
12031213
"LLVMGlobalISel",
12041214
"LLVMMIRParser",

ci/aarch64-linux-debug.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -e
88
ARCH="$(uname -m)"
99
TARGET="$ARCH-linux-musl"
1010
MCPU="baseline"
11-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.203+d3bc1cfc4"
11+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1212
PREFIX="$HOME/deps/$CACHE_BASENAME"
1313
ZIG="$PREFIX/bin/zig"
1414

ci/aarch64-linux-release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -e
88
ARCH="$(uname -m)"
99
TARGET="$ARCH-linux-musl"
1010
MCPU="baseline"
11-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.203+d3bc1cfc4"
11+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1212
PREFIX="$HOME/deps/$CACHE_BASENAME"
1313
ZIG="$PREFIX/bin/zig"
1414

ci/aarch64-macos-debug.sh

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,16 @@ set -e
99
ZIGDIR="$PWD"
1010
TARGET="$ARCH-macos-none"
1111
MCPU="baseline"
12-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.467+0345d7866"
12+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1313
PREFIX="$HOME/$CACHE_BASENAME"
1414
ZIG="$PREFIX/bin/zig"
1515

16+
if [ ! -d "$PREFIX" ]; then
17+
cd $HOME
18+
curl -L -O "https://ziglang.org/deps/$CACHE_BASENAME.tar.xz"
19+
tar xf "$CACHE_BASENAME.tar.xz"
20+
fi
21+
1622
cd $ZIGDIR
1723

1824
# Make the `zig version` number consistent.

ci/aarch64-macos-release.sh

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,16 @@ set -e
99
ZIGDIR="$PWD"
1010
TARGET="$ARCH-macos-none"
1111
MCPU="baseline"
12-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.467+0345d7866"
12+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1313
PREFIX="$HOME/$CACHE_BASENAME"
1414
ZIG="$PREFIX/bin/zig"
1515

16+
if [ ! -d "$PREFIX" ]; then
17+
cd $HOME
18+
curl -L -O "https://ziglang.org/deps/$CACHE_BASENAME.tar.xz"
19+
tar xf "$CACHE_BASENAME.tar.xz"
20+
fi
21+
1622
cd $ZIGDIR
1723

1824
# Make the `zig version` number consistent.

ci/aarch64-windows.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
$TARGET = "$($Env:ARCH)-windows-gnu"
2-
$ZIG_LLVM_CLANG_LLD_NAME = "zig+llvm+lld+clang-$TARGET-0.12.0-dev.2087+e9a18010b"
2+
$ZIG_LLVM_CLANG_LLD_NAME = "zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
33
$MCPU = "baseline"
44
$ZIG_LLVM_CLANG_LLD_URL = "https://ziglang.org/deps/$ZIG_LLVM_CLANG_LLD_NAME.zip"
55
$PREFIX_PATH = "$(Get-Location)\..\$ZIG_LLVM_CLANG_LLD_NAME"

ci/x86_64-linux-debug.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -e
88
ARCH="$(uname -m)"
99
TARGET="$ARCH-linux-musl"
1010
MCPU="baseline"
11-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.203+d3bc1cfc4"
11+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1212
PREFIX="$HOME/deps/$CACHE_BASENAME"
1313
ZIG="$PREFIX/bin/zig"
1414

ci/x86_64-linux-release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -e
88
ARCH="$(uname -m)"
99
TARGET="$ARCH-linux-musl"
1010
MCPU="baseline"
11-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.203+d3bc1cfc4"
11+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1212
PREFIX="$HOME/deps/$CACHE_BASENAME"
1313
ZIG="$PREFIX/bin/zig"
1414

ci/x86_64-macos-release.sh

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,17 @@ set -e
66
ZIGDIR="$PWD"
77
TARGET="$ARCH-macos-none"
88
MCPU="baseline"
9-
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.12.0-dev.467+0345d7866"
9+
CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
1010
PREFIX="$HOME/$CACHE_BASENAME"
1111
JOBS="-j3"
12-
13-
rm -rf $PREFIX
14-
cd $HOME
15-
16-
curl -L -O "https://ziglang.org/deps/$CACHE_BASENAME.tar.xz"
17-
tar xf "$CACHE_BASENAME.tar.xz"
18-
1912
ZIG="$PREFIX/bin/zig"
2013

14+
if [ ! -d "$PREFIX" ]; then
15+
cd $HOME
16+
curl -L -O "https://ziglang.org/deps/$CACHE_BASENAME.tar.xz"
17+
tar xf "$CACHE_BASENAME.tar.xz"
18+
fi
19+
2120
cd $ZIGDIR
2221

2322
# Make the `zig version` number consistent.

ci/x86_64-windows-debug.ps1

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,20 @@
11
$TARGET = "$($Env:ARCH)-windows-gnu"
2-
$ZIG_LLVM_CLANG_LLD_NAME = "zig+llvm+lld+clang-$TARGET-0.12.0-dev.2073+402fe565a"
2+
$ZIG_LLVM_CLANG_LLD_NAME = "zig+llvm+lld+clang-$TARGET-0.13.0-dev.130+98a30acad"
33
$MCPU = "baseline"
4+
$ZIG_LLVM_CLANG_LLD_URL = "https://ziglang.org/deps/$ZIG_LLVM_CLANG_LLD_NAME.zip"
45
$PREFIX_PATH = "$($Env:USERPROFILE)\$ZIG_LLVM_CLANG_LLD_NAME"
56
$ZIG = "$PREFIX_PATH\bin\zig.exe"
67
$ZIG_LIB_DIR = "$(Get-Location)\lib"
78

9+
if (!(Test-Path "$PREFIX_PATH.zip")) {
10+
Write-Output "Downloading $ZIG_LLVM_CLANG_LLD_URL"
11+
Invoke-WebRequest -Uri "$ZIG_LLVM_CLANG_LLD_URL" -OutFile "$PREFIX_PATH.zip"
12+
13+
Write-Output "Extracting..."
14+
Add-Type -AssemblyName System.IO.Compression.FileSystem ;
15+
[System.IO.Compression.ZipFile]::ExtractToDirectory("$PREFIX_PATH.zip", "$PREFIX_PATH\..")
16+
}
17+
818
function CheckLastExitCode {
919
if (!$?) {
1020
exit 1
@@ -25,6 +35,12 @@ Remove-Item -Path 'build-debug' -Recurse -Force -ErrorAction Ignore
2535
New-Item -Path 'build-debug' -ItemType Directory
2636
Set-Location -Path 'build-debug'
2737

38+
# Override the cache directories because they won't actually help other CI runs
39+
# which will be testing alternate versions of zig, and ultimately would just
40+
# fill up space on the hard drive for no reason.
41+
$Env:ZIG_GLOBAL_CACHE_DIR="$(Get-Location)\zig-global-cache"
42+
$Env:ZIG_LOCAL_CACHE_DIR="$(Get-Location)\zig-local-cache"
43+
2844
# CMake gives a syntax error when file paths with backward slashes are used.
2945
# Here, we use forward slashes only to work around this.
3046
& cmake .. `

0 commit comments

Comments
 (0)