On 10/08/2017 16:06, Christian Mauderer wrote: > Am 10.08.2017 um 07:55 schrieb Chris Johns: >> On 10/08/2017 15:34, Christian Mauderer wrote: >>> Am 10.08.2017 um 01:08 schrieb Chris Johns: >>>> On 10/08/2017 02:29, Sichen Zhao wrote: >>>>> From: Christian Mauderer <christian.maude...@embedded-brains.de> >>> There was no real reason. I just chose an arbitrary name. >>> 'build-include' is fine for me too. I would avoid just 'include' because >>> it's a very generic name. If it is added somewhere else, that might lead >>> to a conflict. >> >> Ah yes, 'build-include' is fine. >> >>>>> + start_dir = bld.path.find_dir(headers[0]) >>>>> + for header in start_dir.ant_glob("**/" + headers[1]): >>>> >>>> Do we always want to copy all the files? >>>> >>> >>> What do you mean by "all the files"? As far as I understood, only the >>> files that are changed should be copied by waf. >>> >>> Or do you mean the ant_glob? In that case: I modeled that after the >>> install target of the headers. >> >> Should this be an ant_glob or a list? I am wondering about needing to copy a >> selected number of files from a group a glob would catch. If this is not >> happening that is fine, it can be added if the situation arises. >> > > Oh, I think I start to understand what you mean. Like already said, this > works around the problem that the headers are not installed when the > sources are built. So it should definitely should copy the same files > like the install part that also uses that array.
Agreed. > It is possible to add a glob which catches only a single file (even > better if we move the "**" into builder.py). You might have noted that > Sichen had to add a lot of such lines for openssl. It would be nice to > have some cleaner method of writing that but I haven't found one yet. Yes I had noticed it is a large package. Is the number of files in the libbsd.py module the concern? There is a point of view that says explicit listing of files is better because you do not accidentally pick up files you should not where glob'ing a tree in builder.py or libbsd.py could do that. The include lists in builder.py was something I knew would come back and bite me. There was only so much I could do at the time and this fell of the end. I thought the list might grow but could not see a real use case. I can fix this once the patch is merged. > Maybe you have an idea? Not at the moment. Lets get this work in and then I can take a look. It will be simpler and also clearer to see what is happening. I could look at making libbsd.py into libbsd/__init__.py with a file per module and the top level just sees the imports. I still see no need for us to have module build control, we always build all modules. >>>> If a new field is not added can you please update builder.py with this >>>> rule so >>>> we know what to do when adding headers to builder.headerPaths()? >>> >>> You mean some comment that describes that behavior? I can add that also >>> I don't really think that it is necessary. It's just a workaround so >>> that we can build the binaries without having to install the headers >>> before the build. >> >> It took me a while to see what was happening. The table in builder.py is a >> long >> way from here so even a note would help. > > OK. I'll add a comment that shortly describes what happens with the list > of header files. > Thanks. Chris _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel