| Summary: | library packages sometimes have unnecessary dependency on xdc.runtime | ||
|---|---|---|---|
| Product: | [Technology] RTSC | Reporter: | Dave Russo <d-russo> |
| Component: | Tools | Assignee: | Dave Russo <d-russo> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | target: 3.20.02, 3.16.05 | ||
fixed by eliminating "required to use" dependencies generated in package/package.cfg.dep from the compatibility checks. These dependencies are created to identify scripts _in the current package_ that need to be added to the package's release. fix appears in
xdc-v43 (3.20.x)
xdc-w03 (3.21.x)
adn will appear in
xdc-u20 (3.16.x)
closing "ancient" resolved bugs |
Some packages get a bogus requirement on xdc.runtime because they require ti.sdo.ce.video2 (for example) which in turn requires xdc.runtime. At the time the references are computed (xdc release), the tools "know" that 1. we only depend on meta-only files from xdc.runtime, and 2. these dependencies are only "required" when you _use_ this package; i.e., these files are not required to build the package so it is impossible to have any "hard" references to content in the xdc.runtime package But the tools fail to differentiate between the references required to build verses required to use. A workaround is to simply exclude all affected packages from the compatibility checks. This can be done by adding the following to your config script: environment["xdc.cfg.check.exclude"] = "\.ce$"; We can fix the tools to properly differentiate "require to use" verses "required to build"; only the "required to build" references should be checked for compatibility. But this distinction is no longer possible _after_ a package has been released. So, to avoid the workaround above, the .ce packages need to be re-built with some new release of xdctools.