feat(build): build.py 支持 --onlyapp(只编译库与应用,跳过内核)
只改应用/库时可省去内核编译时间:--onlyapp 时跳过 BuildKernel,其余(BuildApps / BuildBootloader / BuildDisk / RunQemu)照常。与 --onlyrun 不冲突(--onlyrun 优先级更高, 完全跳过构建)。依旧可与 --noclean / --noapp / --kernel-only 组合。
This commit is contained in:
1 parent
d8ca5e256e
commit
e6aabf5cf2
1 file changed
+6
-1
@@ -12,6 +12,8 @@ bootloader = '--bootloader' in sys.argv
|
||||
# --onlyrun:跳过全部编译/打包步骤,只用现有 disk.img 反复启动 QEMU 复现问题。
|
||||
# 典型用法:python build.py --onlyrun(连跑多次,观察偶发写坏是否复现并留下 [FATAL])
|
||||
only_run = '--onlyrun' in sys.argv
|
||||
# --onlyapp:只编译库与应用(跳过内核),用于只改应用/库时的快速迭代。
|
||||
only_app = '--onlyapp' in sys.argv
|
||||
|
||||
|
||||
def BuildKernel():
|
||||
@@ -175,7 +177,10 @@ def RunQemu():
|
||||
if only_run:
|
||||
print("[build] --onlyrun: 跳过编译/打包,直接用现有 disk.img 启动 QEMU")
|
||||
else:
|
||||
BuildKernel()
|
||||
if only_app:
|
||||
print("[build] --onlyapp: 只编译库与应用,跳过内核")
|
||||
else:
|
||||
BuildKernel()
|
||||
BuildApps()
|
||||
BuildBootloader()
|
||||
BuildDisk()
|
||||
|
||||
Reference in new issue
Block a user