From e6aabf5cf25abc56d43763b5e45b8654ca5d6176 Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Wed, 14 Oct 2026 15:34:40 +0800 Subject: [PATCH] =?UTF-8?q?feat(build):=20build.py=20=E6=94=AF=E6=8C=81=20?= =?UTF-8?q?--onlyapp=EF=BC=88=E5=8F=AA=E7=BC=96=E8=AF=91=E5=BA=93=E4=B8=8E?= =?UTF-8?q?=E5=BA=94=E7=94=A8=EF=BC=8C=E8=B7=B3=E8=BF=87=E5=86=85=E6=A0=B8?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 只改应用/库时可省去内核编译时间:--onlyapp 时跳过 BuildKernel,其余(BuildApps / BuildBootloader / BuildDisk / RunQemu)照常。与 --onlyrun 不冲突(--onlyrun 优先级更高, 完全跳过构建)。依旧可与 --noclean / --noapp / --kernel-only 组合。 --- build.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/build.py b/build.py index 63f4c15..89089c8 100644 --- a/build.py +++ b/build.py @@ -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()