以寻常豫言书构建之目标、所依与诸步,本库并行调度之,据输入跳过已最新者。语言仓之构建目标书于 应用/豫构/仓库目标。豫,豫构召本库而行之:于仓根行 node 豫言操作系统/宿主/节点/宿主.cjs yy豫构.wasm 自举|测试|打包|清理|全部,或以 … yy豫构.wasm 目标 名… 行任一目标。他仓则书一构建程序(可执行之包,如云仓之“云仓构建”),列其诸目标而召 构建程序主函数。仓中不复留 shell 之本。
用法
寻观「标准库」之书。
寻观「构建编排」之书。
「目标们」乃「列」于「构建目标」也。
「目标们」者
「列」【
(「目标」
于『甲』 「:名:」
于『构建 yy甲.wasm』 「:注(--列出 时显之):」
于(「罄」授以「字符串」) 「:所依目标之名:」
于(「列」【(「命令步」于『./yy豫构.wasm』于(「列」【『文件』,『甲。豫』,『--输出』,『yy甲.wasm』】))】)
于(「列」【(「文件输入」于『甲。豫』)】)
于(「列」【『yy甲.wasm』】))
】
也。
「构建程序主函数」于「目标们」。
构建程序之命令行:程序 [目标…] [-j 并发] [--强制] [--不连带] [--列出]。不举目标则行名“全部”者;--强制 不用缓存;--不连带 但行所举之目标(所举之间所依仍守其序);--列出 书诸目标及其注。
目标与步
「目标」于 名 于 注 于 所依 于 诸步 于 输入 于 输出。同目标之步相继而行;异目标所依既成则并行,其上限依 -j(默以在线处理器之数)。一步败则止派新步,以非零之码终。
诸步:
命令步 程序 参数们:行外令,参数原样相传,不经 shell。目录内命令步 目录 程序 参数们:于所定之目行之(启时迁目录,启毕即还)。限时命令步 秒数 程序 参数们:有timeout令则限时,逾时即止。函数 注 函数体:于构建程序中径行一豫言之术;其注入缓存之键。写文件步 径 文本之。复制文件步、相同步(逐字相校)、建目录步、删除步:常令之简书。独占 组名 步:同组之步依目标之拓扑序逐一而行,不并发。共一编译缓存之豫构(及内复调豫构之试)必入同组,以守“同缓存同时唯一构建”。
缓存
输入为 文件输入 径 或 目录输入 目录 后缀们 所除片段们(遍而入之,略点起首之名与 _v0 之目;后缀空则皆取)。输入输出俱非空者可缓存:键合诸步之述、诸输入之径与修改之时(整秒)、诸输出之径,书于 .yybuild/构建编排/<目标名>.印。键不变而输出俱在,则报“已最新”而略之;所依之目标重造,其出之时变,下游之键随改。无输入或无输出者,每次皆行。
约束
- 本库唯依标准库与构建基础(用其调度器);外令以标准库之异步子进程启之。
- 标准库无设环境变量之术:须环境变量,则以
env 名=值 程序 …为令。 - 修改之时唯精于秒;同秒之内先后改输入或视为未变,须时用
--强制。