CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
98 lines
2.3 KiB
Python
Executable File
98 lines
2.3 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# Copyright Advanced Micro Devices, Inc.
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
#
|
|
# TheRock Project building system pre-build diagnosis script
|
|
#
|
|
# This script doesn't raise/throw back warnings/errors.
|
|
# If running this script has errors, please report it as a new issue.
|
|
#
|
|
|
|
|
|
import sys, time
|
|
|
|
sys.dont_write_bytecode = True
|
|
|
|
from hack.env_check.utils import RepoInfo, cstring
|
|
from hack.env_check.device import SystemInfo
|
|
from hack.env_check.check_tools import *
|
|
from hack.env_check import check_therock
|
|
|
|
|
|
def main():
|
|
therock_detect_start = time.perf_counter()
|
|
device = SystemInfo()
|
|
RepoInfo.__logo__(monospace=True)
|
|
build_type = cstring(check_therock.build_project, "hint")
|
|
|
|
device.summary
|
|
|
|
print("")
|
|
print(device.section_bar(f"Start detect compoments on: {build_type}"))
|
|
print("")
|
|
|
|
check_list = [
|
|
check
|
|
for check in [
|
|
CheckOS(device_info=device),
|
|
CheckCPU(device_info=device),
|
|
CheckDisk(device_info=device),
|
|
Check_Max_PATH_LIMIT(device_info=device) if device.is_windows else None,
|
|
CheckGit(),
|
|
CheckCMake(),
|
|
CheckCCache(required=False),
|
|
CheckNinja(),
|
|
CheckGFortran(),
|
|
CheckPython(is_global_env_ok=True),
|
|
CheckUV(required=False),
|
|
]
|
|
if check is not None
|
|
]
|
|
|
|
win_only_list = [
|
|
CheckVS20XX(),
|
|
CheckMSVC(),
|
|
CheckATL(),
|
|
CheckML64(),
|
|
CheckLIB(),
|
|
CheckLINK(),
|
|
CheckRC(),
|
|
]
|
|
|
|
linux_only_list = [
|
|
CheckGCC(),
|
|
CheckGXX(),
|
|
CheckGCC_AS(),
|
|
CheckGCC_AR(),
|
|
CheckLD(),
|
|
]
|
|
|
|
if device.is_windows:
|
|
check_list += win_only_list
|
|
if device.is_linux:
|
|
check_list += linux_only_list
|
|
|
|
diag_check = check_therock.test_list(check_list).summary
|
|
|
|
print("")
|
|
print(device.section_bar(diag_check))
|
|
print("\n")
|
|
|
|
device.python_list
|
|
|
|
therock_detect_terminate = time.perf_counter()
|
|
therock_detect_time = float(therock_detect_terminate - therock_detect_start)
|
|
therock_detect_runtime = cstring(f"{therock_detect_time:.2f}", "hint")
|
|
|
|
print("\n")
|
|
print(
|
|
device.section_bar(
|
|
f" TheRock build pre-diagnosis script completed in {therock_detect_runtime} seconds "
|
|
)
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|