v01d commented on issue #1764: URL: https://github.com/apache/incubator-nuttx/issues/1764#issuecomment-691392838
The same change in `apps` is a bit more challenging since the build system is wired in such a way that each app "contributes" to the libapps.a sitting in the top-level `apps` dir. The problem is that if remov libapps.a on every build, if I start from a previous build where all apps .o are already there, the library is not recreated since there's no rule tying the .o's to the .a. I see there's also a bit convoluted logic to deal with this and parallel builds using a dummy `.built` file and `flock` over the `.a`. I think it would be simpler to split the building of apps and linking into the `.a` in two separate stages, where the linking is done all at once. As this can't be parallelized anyway there's no reason to accumulate `.o` files in the `.a` while building each app. Ideally we could build each app to its own `.a` but from what I read it is not that easy to then build one large `.a` from them (it requires extracting objects or other tricks: https://stackoverflow.com/questions/3821916/how-to-merge-two-ar-static-libraries-into-one) ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org