Fwd: Identify 3rd party source in spec?
Sebastian Huber
sebastian.huber at embedded-brains.de
Fri Nov 4 14:58:50 UTC 2022
On 04/11/2022 15:38, Gedare Bloom wrote:
> On Fri, Nov 4, 2022 at 2:59 AM Sebastian Huber
> <sebastian.huber at embedded-brains.de> wrote:
>> On 31/10/2022 20:01, Gedare Bloom wrote:
>>> I would like to float the idea of managing 3rd party source tracking
>>> through the build system spec files. I believe this would be the most
>>> efficient way to maintain this information, and we can leverage the
>>> existing build system code for tasks such as automatic format checks,
>>> generating lists of third-party code, etc.
>>>
>>> This will require refactoring some spec files to pull 3rd party code
>>> out to a separate .yml file that gets linked. Once that is done, then
>>> we could add another attribute for this tracking purpose. I would like
>>> to keep it simple as a boolean, maybe just "third-party: true/false"
>>> Attached is an example patch showing how this might work for the
>>> dtc/libfdt code as a build objects item type 'obj', and for zlib
>>> library as a build library item type 'lib' with some proof-of-concept
>>> code for generating a listing of third party source files.
>> In the future we could expand this third-party attribute to a dictionary
>> to provide more detailed information about the third-party sources, for
>> example the upstream Git repository, the import commit, path translation
>> mappings, post and pre import actions. This could be used to
>> automatically generate updates from upstream changes.
>>
> Nice. I don't see an explicit "dictionary" type for attributes, but I
> do see that dict-like behavior could be achieved using a 'list' of
> attributes nested below an attribute. I have the time allocated that i
> could try to learn how to do this with a simple example, for example
> to add a "upstream" and an "import-commit" field. Then, the
> third-party indicator will change from
> third-party: false ->
> third-party: []
> third-party: true ->
> third-party:
> - upstream: URL
> - import-commit: git-sha
> I would guess. Would this kind of structure "just work" in the current
> support of spec/build or will it require some integration with
> rtems-central? Or, am I following the wrong ideas,
third-party: null
would indicate that this object/library doesn't have an upstream project.
If there is an upstream project, then we could describe this through
additional attributes, for example:
third-party:
type: git
commit: abc
repository: def
file-map:
- replace regex 1
- replace regex 2
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list