[FEATURE] Add integration with external programs/projects the right way
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 30/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- c, cmake
调研方向
首先阅读现有的 apps/external 集成,以及它所要求的 Kconfig、Make.defs、Makefile 和 CMakeLists.txt 文件,然后将它们与 Zephyr 的模块文档和链接的示例项目进行比较。完成的标准是:为外部 NuttX 仓库形成有文档记录且达成共识的约定,并提供一条可用的集成路径,而不要求每个项目都重复 NuttX 构建文件。
由索引模型根据 Issue 内容生成。
描述
Is your feature request related to a problem? Please describe.
Currently there is possible to add external applications on nuttx-apps creating an "external/" directory inside apps/ [1]. However it expects that the added project has the right files inside it (Kconfig, Make.defs, Makefile, CMakelist.txt, etc).
Others RTOSes like zephyr has a similar solution (although they used a confuse name "Module" and that is a bad name since for a kernel a module means dynamic loadable component). Also in their case they expects a directory called "zephyr" inside the target project. Some examples:
https://github.com/open-quantum-safe/liboqs
https://github.com/civetweb/civetweb/tree/master/zephyr
https://github.com/lvgl/lvgl/tree/master/zephyr
This is more than a better solution, this is their way to spread their naming/awareness around all other projects in the Internet and avoids the process of creating a download script in their repository, as we do for LVGL and others.
There is a complete (and verbose) documentation about it here: https://docs.zephyrproject.org/latest/develop/modules.html
1 - It is a hidden feature, there is no Documentation about it: https://nuttx.apache.org/docs/latest/search.html?q=external&check_keywords=yes&area=default
Describe the solution you'd like
We could follow the same approach, creating a "nuttx" or "NuttX" repository inside other projects simplify the integration process.
Describe alternatives you've considered
No response
Verification
- I have verified before submitting the report.
- 主要语言
- C
- 星标
- 4.1k
- 派生
- 1.8k
- 平均合并
- 1 天 5 小时
- 30 天内合并 PR
- 841
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
apache/nuttx 的其他 Issue
-
Arch: all Arch: arm Area: Build system OS: Linux Type: Bug
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
Arch: all OS: Linux Type: Bug
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
Type: Enhancement
难度 4/5 3-5 天 新手友好度 22/100
维护者通常 1 天内回复
-
Arch: simulator Arch: xtensa Area: Kernel OS: Mac Type: Bug
难度 4/5 3-5 天 新手友好度 48/100
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 73/100
ChupathingyCE/chupathingyce#1020 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
-
enhancement good first issue
难度 1/5 1 小时以内 新手友好度 91/100
-
C:dataplane
难度 2/5 1-3 小时 新手友好度 76/100
yanet-platform/yanet2#3395 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 75/100
openvehicles/Open-Vehicle-Monitoring-System-3#1575 ·
维护者通常 4 天内回复