summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorHa Thach <[email protected]>2024-12-18 16:07:21 +0700
committerGitHub <[email protected]>2024-12-18 16:07:21 +0700
commit7c1afa837a28c7bd5210f57eda4afba4e171cad4 (patch)
treed595d977ab0819b18587c8f74a88a0fa200def98 /tools
parentb1eae1e5e41dacfb70688ae8aeb950b7b68b8046 (diff)
parent22a6777c2ddcdd1a3c2241d639d7d771131696d3 (diff)
Merge pull request #2865 from HiFiPhile/rt1170
RT1170 enhancements
Diffstat (limited to 'tools')
-rwxr-xr-xtools/build.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/tools/build.py b/tools/build.py
index bbc98e9c4..633d2b582 100755
--- a/tools/build.py
+++ b/tools/build.py
@@ -110,12 +110,13 @@ def cmake_board(board, toolchain, build_flags_on):
f'-DTOOLCHAIN={toolchain} {build_flags}')
if rcmd.returncode == 0:
cmd = f"cmake --build {build_dir}"
- # Due to IAR capability, limit parallel build to 4 (medium+) or 6 (large) docker
- if toolchain == 'iar' and os.getenv('CIRCLECI'):
- if 'large' in os.getenv('CIRCLE_JOB'):
- cmd += ' --parallel 6'
- else:
- cmd += ' --parallel 4'
+ # circleci docker return $nproc as 36 core, limit parallel according to resource class. Required for IAR, also prevent crashed/killed by docker
+ if os.getenv('CIRCLECI'):
+ resource_class = { 'small': 1, 'medium': 2, 'medium+': 3, 'large': 4 }
+ for rc in resource_class:
+ if rc in os.getenv('CIRCLE_JOB'):
+ cmd += f' --parallel {resource_class[rc]}'
+ break
rcmd = run_cmd(cmd)
ret[0 if rcmd.returncode == 0 else 1] += 1