Bug 1915571 - Move mac and windows clang stage 2 build to cross-compiles. r=firefox-build-system-reviewers,sergesanspaille

By doing so, we don't really need a stage 1 clang for mac and windows
(with the downside that the final PGOed clang becomes the
clang-toolchain artifact on those platforms), and cross-compiling stage
2 is much faster as a cross-compile, leaving only stage 3 to be native.

While here, for the one build type that still does stage 2 and 3 in one
task, we actually prefer taking the llvm-profdata from stage 1, as it
doesn't contain profile instrumentation (it should actually have been
this way since the beginning).

Differential Revision: https://phabricator.services.mozilla.com/D220654
This commit is contained in:
Mike Hommey
2024-10-04 20:26:33 +00:00
parent a7fe8cd3ce
commit ac439e0399
7 changed files with 157 additions and 72 deletions

View File

@@ -799,12 +799,16 @@ def main():
assertions, assertions,
target, target,
targets, targets,
is_final_stage=(stages == 2), is_final_stage=(stages == 2 and not pgo),
profile="gen" if pgo else None, profile="gen" if pgo else None,
) )
if stages >= 3 and skip_stages < 3: if stages >= 3 and skip_stages < 3:
stage3_dir = build_dir + "/stage3" stage3_dir = build_dir + "/stage3"
if pgo:
profiles_dir = build_dir + "/profiles"
mkdir_p(profiles_dir)
os.environ["LLVM_PROFILE_FILE"] = profiles_dir + "/%m.profraw"
stage3_inst_dir = stage3_dir + "/" + package_name stage3_inst_dir = stage3_dir + "/" + package_name
final_stage_dir = stage3_dir final_stage_dir = stage3_dir
if skip_stages < 2: if skip_stages < 2:
@@ -826,14 +830,16 @@ def main():
assertions, assertions,
target, target,
targets, targets,
(stages == 3), is_final_stage=(stages == 3 and not pgo),
) )
if pgo: if pgo:
llvm_profdata = stage2_inst_dir + "/bin/llvm-profdata%s" % exe_ext del os.environ["LLVM_PROFILE_FILE"]
if skip_stages < 1:
llvm_profdata = stage1_inst_dir + "/bin/llvm-profdata%s" % exe_ext
else:
llvm_profdata = get_tool(config, "llvm-profdata")
merge_cmd = [llvm_profdata, "merge", "-o", "merged.profdata"] merge_cmd = [llvm_profdata, "merge", "-o", "merged.profdata"]
profraw_files = glob.glob( profraw_files = glob.glob(os.path.join(profiles_dir, "*.profraw"))
os.path.join(stage2_dir, "build", "profiles", "*.profraw")
)
run_in(stage3_dir, merge_cmd + profraw_files) run_in(stage3_dir, merge_cmd + profraw_files)
if stages == 3: if stages == 3:
mkdir_p(upload_dir) mkdir_p(upload_dir)
@@ -869,7 +875,7 @@ def main():
assertions, assertions,
target, target,
targets, targets,
(stages == 4), is_final_stage=(stages == 4),
profile=profile, profile=profile,
) )

View File

@@ -10,6 +10,7 @@
"revert-llvmorg-16-init-11301-g163bb6d64e5f_clang_18.patch", "revert-llvmorg-16-init-11301-g163bb6d64e5f_clang_18.patch",
"revert-llvmorg-15-init-13446-g7524fe962e47.patch", "revert-llvmorg-15-init-13446-g7524fe962e47.patch",
"llvmorg-19-init-7654-gc23135c5488f.patch", "llvmorg-19-init-7654-gc23135c5488f.patch",
"llvmorg-20-init-4204-g5013cf682cf0.patch",
"llvmorg-20-init-7208-g631bcbe9de13.patch", "llvmorg-20-init-7208-g631bcbe9de13.patch",
"win64-ret-null-on-commitment-limit_clang_14.patch", "win64-ret-null-on-commitment-limit_clang_14.patch",
"arm64e-hack.patch", "arm64e-hack.patch",

View File

@@ -0,0 +1,70 @@
From fea05619dccb54174b6cc3d4f3cef8c2d4edfe9d Mon Sep 17 00:00:00 2001
From: Mike Hommey <mh@glandium.org>
Date: Sat, 31 Aug 2024 08:10:22 +0900
Subject: [PATCH] [cmake] Add symbolic links for MSVC libraries (#106710)
When cross-compiling a Windows clang with `-DLLVM_BUILD_INSTRUMENTED`,
the profiling compiler-rt is linked to binaries, as one would expect,
but the profiling compiler-rt contains objects with `/DEFAULTLIB:LIBCMT`
and `/DEFAULTLIB:OLDNAMES` directives, which makes the build expect
`LIBCMT.lib` and `OLDNAMES.lib`, but they are nowhere to be found
because they are in lowercase. While the WinMsvc.cmake helper recreates
symbolic links to work around such case sensitivity issues for the
Windows SDK libs, it doesn't do so for the MSVC libs, which we add here.
---
llvm/cmake/platforms/WinMsvc.cmake | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/llvm/cmake/platforms/WinMsvc.cmake b/llvm/cmake/platforms/WinMsvc.cmake
index 77c3ab3d8fc1..fc07498498bf 100644
--- a/llvm/cmake/platforms/WinMsvc.cmake
+++ b/llvm/cmake/platforms/WinMsvc.cmake
@@ -95,6 +95,7 @@ list(APPEND CMAKE_TRY_COMPILE_PLATFORM_VARIABLES
LLVM_WINSYSROOT
MSVC_VER
WINSDK_VER
+ msvc_lib_symlinks_dir
winsdk_lib_symlinks_dir
winsdk_vfs_overlay_path
)
@@ -156,6 +157,24 @@ function(generate_winsdk_lib_symlinks winsdk_um_lib_dir output_dir)
endforeach()
endfunction()
+function(generate_msvc_lib_symlinks msvc_lib_dir output_dir)
+ execute_process(COMMAND "${CMAKE_COMMAND}" -E make_directory "${output_dir}")
+ file(GLOB libraries RELATIVE "${msvc_lib_dir}" "${msvc_lib_dir}/*.lib")
+ foreach(library ${libraries})
+ get_filename_component(name_wle "${library}" NAME_WLE)
+ get_filename_component(ext "${library}" LAST_EXT)
+ string(TOLOWER "${ext}" lowercase_ext)
+ string(TOUPPER "${name_wle}" all_uppercase_symlink_name_wle)
+ set(uppercase_symlink_name "${all_uppercase_symlink_name_wle}${lowercase_ext}")
+ if(NOT library STREQUAL uppercase_symlink_name)
+ execute_process(COMMAND "${CMAKE_COMMAND}"
+ -E create_symlink
+ "${msvc_lib_dir}/${library}"
+ "${output_dir}/${uppercase_symlink_name}")
+ endif()
+ endforeach()
+endfunction()
+
function(get_highest_version the_dir the_ver)
file(GLOB entries LIST_DIRECTORIES true RELATIVE "${the_dir}" "${the_dir}/[0-9.]*")
foreach(entry ${entries})
@@ -293,6 +312,12 @@ if(case_sensitive_filesystem)
endif()
list(APPEND LINK_FLAGS
-libpath:"${winsdk_lib_symlinks_dir}")
+ if(NOT msvc_lib_symlinks_dir)
+ set(msvc_lib_symlinks_dir "${CMAKE_BINARY_DIR}/msvc_lib_symlinks")
+ generate_msvc_lib_symlinks("${MSVC_LIB}/${WINSDK_ARCH}" "${msvc_lib_symlinks_dir}")
+ endif()
+ list(APPEND LINK_FLAGS
+ -libpath:"${msvc_lib_symlinks_dir}")
endif()
string(REPLACE ";" " " LINK_FLAGS "${LINK_FLAGS}")
--
2.45.2.2.g32a9d489d5

View File

@@ -0,0 +1,6 @@
{
"skip_stages": "1",
"stages": "3",
"pgo": true,
"llvm-profdata": "{MOZ_FETCHES_DIR}/clang/bin/llvm-profdata"
}

View File

@@ -1,5 +1,5 @@
{ {
"skip_stages": "1", "skip_stages": "1",
"stages": "3", "stages": "2",
"pgo": true "pgo": true
} }

View File

@@ -0,0 +1,6 @@
{
"skip_stages": "2",
"stages": "3",
"pgo": true,
"llvm-profdata": "{MOZ_FETCHES_DIR}/clang/bin/llvm-profdata"
}

View File

@@ -200,11 +200,11 @@ linux64-clang-18-profile:
arguments: arguments:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-2-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-2-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -275,10 +275,10 @@ linux64-clang-18:
- win64-compiler-rt-18 - win64-compiler-rt-18
- win64-aarch64-compiler-rt-18 - win64-aarch64-compiler-rt-18
macosx64-clang-18-stage1: macosx64-clang-18-stage2:
description: "Clang 18 toolchain build" description: "Clang 18 toolchain build"
treeherder: treeherder:
symbol: TM(clang-18-stage1) symbol: TM(clang-18-stage2)
run: run:
using: toolchain-script using: toolchain-script
script: build-clang.sh script: build-clang.sh
@@ -286,18 +286,19 @@ macosx64-clang-18-stage1:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
- clang-18 - clang-18
toolchain: toolchain:
- linux64-clang-18-stage1 - linux64-clang-18-stage1
- macosx64-x64-compiler-rt-18
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-clang-18-profile: macosx64-clang-18-profile:
@@ -314,12 +315,12 @@ macosx64-clang-18-profile:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -327,8 +328,7 @@ macosx64-clang-18-profile:
- macosx64-cmake - macosx64-cmake
- macosx64-ninja - macosx64-ninja
toolchain: toolchain:
- macosx64-clang-18-stage1 - macosx64-clang-18-stage2
- macosx64-x64-compiler-rt-18
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-clang-18-raw: macosx64-clang-18-raw:
@@ -399,10 +399,10 @@ macosx64-clang-18:
- win64-compiler-rt-18 - win64-compiler-rt-18
- win64-aarch64-compiler-rt-18 - win64-aarch64-compiler-rt-18
macosx64-aarch64-clang-18-stage1: macosx64-aarch64-clang-18-stage2:
description: "Clang 18 toolchain build" description: "Clang 18 toolchain build"
treeherder: treeherder:
symbol: TMA64(clang-18-stage1) symbol: TMA64(clang-18-stage2)
run: run:
using: toolchain-script using: toolchain-script
script: build-clang.sh script: build-clang.sh
@@ -410,18 +410,19 @@ macosx64-aarch64-clang-18-stage1:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
- clang-18 - clang-18
toolchain: toolchain:
- linux64-clang-18-stage1 - linux64-clang-18-stage1
- macosx64-aarch64-compiler-rt-18
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-aarch64-clang-18-profile: macosx64-aarch64-clang-18-profile:
@@ -438,12 +439,12 @@ macosx64-aarch64-clang-18-profile:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -451,8 +452,7 @@ macosx64-aarch64-clang-18-profile:
- macosx64-cmake - macosx64-cmake
- macosx64-ninja - macosx64-ninja
toolchain: toolchain:
- macosx64-aarch64-clang-18-stage1 - macosx64-aarch64-clang-18-stage2
- macosx64-aarch64-compiler-rt-18
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-aarch64-clang-18-raw: macosx64-aarch64-clang-18-raw:
@@ -521,26 +521,22 @@ macosx64-aarch64-clang-18:
- win64-compiler-rt-18 - win64-compiler-rt-18
- win64-aarch64-compiler-rt-18 - win64-aarch64-compiler-rt-18
win64-clang-18-stage1: win64-clang-18-stage2:
description: "Clang-cl 18 toolchain build stage 1" description: "Clang-cl 18 toolchain build"
treeherder: treeherder:
symbol: TW64(clang-18-stage1) symbol: TW64(clang-18-stage2)
run: run:
script: build-clang.sh script: build-clang.sh
arguments: arguments:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-alias:
by-project:
toolchains: null
default: win64-clang-toolchain
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
@@ -548,6 +544,7 @@ win64-clang-18-stage1:
toolchain: toolchain:
- linux64-clang-18-stage1 - linux64-clang-18-stage1
- vs-toolchain - vs-toolchain
- win64-compiler-rt-18
- win64-libxml2 - win64-libxml2
win64-clang-18-profile: win64-clang-18-profile:
@@ -563,21 +560,20 @@ win64-clang-18-profile:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-18.json' - 'build/build-clang/clang-18.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
- clang-18 - clang-18
- win64-ninja - win64-ninja
toolchain: toolchain:
- win64-clang-18-stage1 - win64-clang-18-stage2
- win64-cmake - win64-cmake
- win64-compiler-rt-18
- vs-toolchain - vs-toolchain
- win64-libxml2 - win64-libxml2
@@ -624,7 +620,9 @@ win64-clang-18:
toolchain-alias: toolchain-alias:
by-project: by-project:
toolchains: null toolchains: null
default: win64-clang default:
- win64-clang
- win64-clang-toolchain
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
toolchain: toolchain:
@@ -810,11 +808,11 @@ linux64-clang-trunk-profile:
arguments: arguments:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-2-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-2-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -887,12 +885,12 @@ linux64-clang-trunk:
- win64-compiler-rt-trunk - win64-compiler-rt-trunk
- win64-aarch64-compiler-rt-trunk - win64-aarch64-compiler-rt-trunk
macosx64-clang-trunk-stage1: macosx64-clang-trunk-stage2:
description: "Clang trunk toolchain build" description: "Clang trunk toolchain build"
attributes: attributes:
cached_task: false cached_task: false
treeherder: treeherder:
symbol: TM(clang-trunk-stage1) symbol: TM(clang-trunk-stage2)
run: run:
using: toolchain-script using: toolchain-script
script: build-clang.sh script: build-clang.sh
@@ -900,18 +898,19 @@ macosx64-clang-trunk-stage1:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
- clang-trunk - clang-trunk
toolchain: toolchain:
- linux64-clang-trunk-stage1 - linux64-clang-trunk-stage1
- macosx64-x64-compiler-rt-trunk
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-clang-trunk-profile: macosx64-clang-trunk-profile:
@@ -930,12 +929,12 @@ macosx64-clang-trunk-profile:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64.json' - 'build/build-clang/macosx64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -943,8 +942,7 @@ macosx64-clang-trunk-profile:
- macosx64-cmake - macosx64-cmake
- macosx64-ninja - macosx64-ninja
toolchain: toolchain:
- macosx64-clang-trunk-stage1 - macosx64-clang-trunk-stage2
- macosx64-x64-compiler-rt-trunk
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-clang-trunk-raw: macosx64-clang-trunk-raw:
@@ -1017,12 +1015,12 @@ macosx64-clang-trunk:
- win64-compiler-rt-trunk - win64-compiler-rt-trunk
- win64-aarch64-compiler-rt-trunk - win64-aarch64-compiler-rt-trunk
macosx64-aarch64-clang-trunk-stage1: macosx64-aarch64-clang-trunk-stage2:
description: "Clang trunk toolchain build" description: "Clang trunk toolchain build"
attributes: attributes:
cached_task: false cached_task: false
treeherder: treeherder:
symbol: TMA64(clang-trunk-stage1) symbol: TMA64(clang-trunk-stage2)
run: run:
using: toolchain-script using: toolchain-script
script: build-clang.sh script: build-clang.sh
@@ -1030,18 +1028,19 @@ macosx64-aarch64-clang-trunk-stage1:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
- clang-trunk - clang-trunk
toolchain: toolchain:
- linux64-clang-trunk-stage1 - linux64-clang-trunk-stage1
- macosx64-aarch64-compiler-rt-trunk
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-aarch64-clang-trunk-profile: macosx64-aarch64-clang-trunk-profile:
@@ -1060,12 +1059,12 @@ macosx64-aarch64-clang-trunk-profile:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-artifact.json' - 'build/build-clang/use-clang-artifact.json'
- 'build/build-clang/macosx64-aarch64.json' - 'build/build-clang/macosx64-aarch64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
@@ -1073,8 +1072,7 @@ macosx64-aarch64-clang-trunk-profile:
- macosx64-cmake - macosx64-cmake
- macosx64-ninja - macosx64-ninja
toolchain: toolchain:
- macosx64-aarch64-clang-trunk-stage1 - macosx64-aarch64-clang-trunk-stage2
- macosx64-aarch64-compiler-rt-trunk
- macosx64-sdk-toolchain - macosx64-sdk-toolchain
macosx64-aarch64-clang-trunk-raw: macosx64-aarch64-clang-trunk-raw:
@@ -1145,28 +1143,24 @@ macosx64-aarch64-clang-trunk:
- win64-compiler-rt-trunk - win64-compiler-rt-trunk
- win64-aarch64-compiler-rt-trunk - win64-aarch64-compiler-rt-trunk
win64-clang-trunk-stage1: win64-clang-trunk-stage2:
description: "Clang-cl trunk toolchain build stage 1" description: "Clang-cl trunk toolchain build"
attributes: attributes:
cached_task: false cached_task: false
treeherder: treeherder:
symbol: TW64(clang-trunk-stage1) symbol: TW64(clang-trunk-stage2)
run: run:
script: build-clang.sh script: build-clang.sh
arguments: arguments:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/stage-1.json' - 'build/build-clang/stage-2-pgo.json'
toolchain-alias:
by-project:
toolchains: win64-clang-toolchain
default: null
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches:
fetch: fetch:
@@ -1174,6 +1168,7 @@ win64-clang-trunk-stage1:
toolchain: toolchain:
- linux64-clang-trunk-stage1 - linux64-clang-trunk-stage1
- vs-toolchain - vs-toolchain
- win64-compiler-rt-trunk
- win64-libxml2 - win64-libxml2
win64-clang-trunk-profile: win64-clang-trunk-profile:
@@ -1191,21 +1186,20 @@ win64-clang-trunk-profile:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
resources: resources:
- 'build/build-clang/use-clang-cl-artifact.json' - 'build/build-clang/use-clang-cl-artifact.json'
- 'build/build-clang/win64.json' - 'build/build-clang/win64.json'
- 'build/build-clang/clang-trunk.json' - 'build/build-clang/clang-trunk.json'
- 'build/build-clang/profile.json' - 'build/build-clang/stage-3-pgo.json'
toolchain-artifact: public/build/merged.profdata toolchain-artifact: public/build/merged.profdata
fetches: fetches:
fetch: fetch:
- clang-trunk - clang-trunk
- win64-ninja - win64-ninja
toolchain: toolchain:
- win64-clang-trunk-stage1 - win64-clang-trunk-stage2
- win64-cmake - win64-cmake
- win64-compiler-rt-trunk
- vs-toolchain - vs-toolchain
- win64-libxml2 - win64-libxml2
@@ -1251,7 +1245,9 @@ win64-clang-trunk:
script: repack-clang.sh script: repack-clang.sh
toolchain-alias: toolchain-alias:
by-project: by-project:
toolchains: win64-clang toolchains:
- win64-clang
- win64-clang-toolchain
default: null default: null
toolchain-artifact: public/build/clang.tar.zst toolchain-artifact: public/build/clang.tar.zst
fetches: fetches: