From fa807b737b4b6b3004cccafc0dfdfdd66fcdce2d Mon Sep 17 00:00:00 2001 From: wuzhenqing Date: Mon, 4 May 2026 11:15:50 +0000 Subject: feat(ascendc): add Huawei Ascend C toolchain support Add toolchain, language, rules, and compiler modules for the bisheng compiler driver from CANN (Compute Architecture for Neural Networks) toolkit. Supports .asc (Ascend C kernel) and .aicpu (AI-CPU operator) source kinds with binary/static/shared target types. - Toolchain: SDK auto-detection via ASCEND_HOME_PATH env or --sdk - Compiler: bisheng module inherits from clang, adds add_sourceflags for explicit sourcekind overrides - Rules: ascendc.env (default C++17), npuarchs (--npu-arch), build - Language: check_main detection, add_ascnpuarchs API - Tests: unit tests for check_main, project tests for libs/mixed Fixes #7506 --- xmake/platforms/linux/xmake.lua | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'xmake/platforms/linux/xmake.lua') diff --git a/xmake/platforms/linux/xmake.lua b/xmake/platforms/linux/xmake.lua index b411dc4d3..c4d09880e 100644 --- a/xmake/platforms/linux/xmake.lua +++ b/xmake/platforms/linux/xmake.lua @@ -36,7 +36,8 @@ platform("linux") -- -- TODO Perhaps we should handle it better, or remove the cross toolchain. set_toolchains("envs", "gcc", "clang", - "cross", "yasm", "nasm", "fasm", "cuda", "go", "rust", "swift", "gfortran", "zig", "fpc", "nim", "dotnet") + "cross", "yasm", "nasm", "fasm", "cuda", "ascendc", "go", "rust", "swift", + "gfortran", "zig", "fpc", "nim", "dotnet") set_menu { config = @@ -63,5 +64,3 @@ platform("linux") , {nil, "vcpkg", "kv", "auto", "The Vcpkg Directory" } } } - - -- cgit v1.3.1