Other Parts Discussed in Thread: PROCESSOR-SDK-C667X
Tool/software: Code Composer Studio
Packaging is a good stuff, and thanks to XDCtools for bringing packaging to C. But I am confused in some way when I'm learning the RTSC and trying to develop a new package.
Confused Point 1:
As far as I know, a RTSC product like XDCtools itself is also both a repository and a package in XDC's view, because it has package.xdc and package folder in its root, meanwhile there are many packages located in the `packages` directory. Also XDCtools is a RTSC product which can be searched by, added to CCS projects.
To me, the view of package/repo from XDC is different from the view of package from other programing language, like Rust or Go. Adding a product is more like adding a package to me, but actually I am adding a XDC Repository.
- Q1: Does a RTSC product have to be a XDC Repo?
- Q2: Is there any advantage that a XDC Repo is also a package?
Confused Point 2:
Git submodule is a good way to import or merge different souces into one code base with history tracking. But when I try to use this feature when I tried creating a XDC Repository, I see some obstacles.
For example, I have the following design in mind:
- SharedPkg0
- manged by Git.
- of which codes are to be imported by different XDC Repo
- xdc package name: team.feat0
- relative path: ${pkgroot}/team/feat0
- Repo0
- mangaed by Git.
- which will import SharedPkg0
- already shipped one package named: team.feat1; path: ${reporoot}/team/feat1
In the design listed above, if I want to import SharedPkg0 directly into Repo0 using Git Submodule, I will fail, because the folder team already exists. If I create another folder to store submodule, then I'll break the convention that the path and package name must be consistent.
- Q3: Any good way to solve this issue? Or how should I change my design?
Q4: Generically, is there any recommend way to take advantages of both XDCtools and Git?
Q5: The RTSC document hasn't been updated for a very long time, and it's not complete. So I am still a little worry about the RTSC and XDC lifecycle and make me think whether should I put some efforts into XDC packaging. Meantime I can find the lastest CCS is shipped with a Node.js executable, does this mean TI will use Node.js and V8 Engine as the core of, maybe next generation of XDCtools? Maybe in future CCS will adopt a NPM package as a new package form?