On 2020-04-09 03:43, Sebastian Huber wrote:
On 08/04/2020 19:34, Jonathan Brandmeyer wrote:
Instead of treating weak references as a single level of indirection,
I think you have to treat them as a single overridable interface. In
a dynamically-linked application, we might try to perform an override
using the LD_PRELOAD feature. But in a statically-linked application
we have to do it differently. The overriding archive must be named in
full, and it must be named as an object to be linked instead of a
library to be searched. Furthermore, an interface can have only one
override that ends up in the linked application.
Yes, you can only have one strong implementation, otherwise you get
multiple definition errors.
I have only ever considered weak references as an overridable interface
within a user's application and not layered within RTEMS itself. I am
not sure about automatic indirection within an archive.
In the case of different heap allocators why not have confdefs.h select
the one we want and manage the indirection with a const table of pointers?
Chris
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel