Opened 15 years ago
Closed 15 years ago
#16 closed enhancement (fixed)
interface header file management tool
Reported by: | Owned by: | Nicolas Pouillon | |
---|---|---|---|
Priority: | minor | Component: | soclib-cc |
Keywords: | Cc: |
Description
soclib-cc is great at managing the compilation of the hardware part of a platform, but not software components. Header files describing hardware/software interface of a specific component (vci_tty, vci_dma, etc.) should be handle in the same modular way as hardware component.
The current patch add a new utility to help building include search path from component metadatas.
Attachments (5)
Change History (14)
Changed 15 years ago by
Attachment: | soclib_soft.patch added |
---|
comment:1 Changed 15 years ago by
Owner: | changed from somebody to Nicolas Pouillon |
---|---|
Status: | new → assigned |
comment:2 Changed 15 years ago by
Component: | component1 → soclib-cc |
---|
Changed 15 years ago by
Attachment: | soclib_soft_2.diff added |
---|
comment:3 Changed 15 years ago by
I'm wondering at all:
Why not integrate this in soclib-cc-main.py ? It already does all the hard work...
comment:4 follow-up: 5 Changed 15 years ago by
We could even use the platform_desc file to list the involved modules...
comment:5 Changed 15 years ago by
Replying to nipo:
We could even use the platform_desc file to list the involved modules...
yes, this feature should definitely be integrated into soclib-cc and could use platform_desc as input as even DSX can now generate platform descriptions.
Changed 15 years ago by
Attachment: | soclib-cc-cflags.patch added |
---|
comment:6 Changed 15 years ago by
I attached a patch for soclib-cc which implements the ideas from our comments
Changed 15 years ago by
Attachment: | iteration2.diff added |
---|
comment:7 Changed 15 years ago by
- I prefer print is done in the upper level: I much prefer to have a return value (so that libs and such can also use it).
- x.startswith('abc') is better than x[:3] == 'abc'
- I prefer not to include paths to all headers, just interface files. We dont need C++ headers
How about attachment:iteration2.diff
comment:8 Changed 15 years ago by
Separating normal from interface headers is a good idea. 'interface_files' set should be added to 'header_files' set to keep the current behavior of soclib-cc.
comment:9 Changed 15 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Existing software uses soclib/interface_file_name.h everywhere and this is good: is avoids collisions from legacy software. Nevertheless, this means we have to add a soclib/ directory in the path of all interface files.
Committed in [1085] with the soclib/ directory constraint in [1093]. Soclib-cc now checks for soclib/ in interface file paths
I quite like it, we could finally remove the headers/ hack !
A few remarks though:
SOCLIB
environment variable is not required to be set. The only thing we can count on issoclib-cc --getpath
.soclib-soft
is not explicit enough, it should be replaced bysoclib-module-flags
or like...Here is an updated patch.
Are you okay with it ?