tools: --version on every Emb tool, from src/driver/version.h
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
Read src/driver/version.h first and follow its comment requiring one shared version string. Then inspect the listed tool option loops and each tool’s Makefile rule; the issue allows implementing a few tools per pull request. Done means the covered tools print their name and EMBCC_VERSION with exit code 0, and a test reads the version from the header and checks every tool.
由索引模型根据 Issue 内容生成。
描述
Context. embcc --version prints EmbCC 0.0.1-beta (...). None of the other tools has --version:
$ ./embld --version
embld: unknown option '--version'
$ ./embsim --version
embsim: embsim: unknown option '--version'
The same holds for embsvd, embmap, embpack, embrt, embread and embflash. embtrace and embar print their usage instead, and embdbg prints an old banner (EmbDBG v0 — EmbLinkOS debug-info reader). A bug report should be able to say which version of each tool was used.
Where.
src/driver/version.h:EMBCC_VERSION, the one version string. Read its comment: the string must stay defined in one place only.- Each tool's option loop:
tools/embld/embld.c,tools/embsim/main.c,tools/embsvd/embsvd.c,tools/embmap/embmap.c,tools/embpack/embpack.c,tools/embrt/embrt.c,tools/embread/embread.c,tools/embflash/embflash.c,tools/embtrace/,tools/embar/,tools/embdbg/. - The
Makefilerule for each tool. Check that the tool's build can seesrc/driver/version.h, and add it to the rule's prerequisites so a version bump rebuilds the tool.
Steps.
- Give each tool
--version, printingNAME (EmbCC 0.0.1-beta)fromEMBCC_VERSION, and exiting 0. - Add one test, for example
tests/golden/tool-versions.sh. It runs every tool with--versionand checks that each printsEMBCC_VERSION, read fromversion.hso the test does not restate it. - It is fine to do a few tools per pull request; say which ones in the PR.
Done when every tool in the README's tools table answers --version with the same version as embcc, the test checks them all, and make check passes.
Before you start: the contributor's guide has the rules. A new test counts only after it has failed against the code before your change, and a commit subject reads area: summary. Questions are welcome in the comments or in Discussions.
- 主要语言
- C
- 星标
- 1
- 派生
- 2
- 平均合并
- 20 小时 55 分钟
- 30 天内合并 PR
- 73
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
EmbLinkOs/EmbCC 的其他 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
documentation good first issue
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
enhancement good first issue
难度 2/5 1-3 小时 新手友好度 88/100
维护者通常 1 天内回复
-
enhancement good first issue
难度 2/5 1-3 小时 新手友好度 83/100
维护者通常 1 天内回复
-
enhancement
难度 4/5 3-5 天 新手友好度 50/100
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
area: test kind: bug preview-effort: small priority: low
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
libsdl-org/SDL#16684 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
-
Issue-Bug Needs-Triage
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 2 天内回复