> -----Original Message-----
> From: lng-odp [mailto:lng-odp-boun...@lists.linaro.org] On Behalf Of Mike
> Holmes
> Sent: Wednesday, February 01, 2017 3:14 PM
> To: lng-odp@lists.linaro.org
> Subject: [lng-odp] [PATCH 0/5] Add ABI compatibility to helper lib
> 
> Reusing the mechanism used for the ODP API, allow the helpers to build in
> ABI
> mode where they optionally do not use static inline in the header file.


Helpers themselves can be inline code.

There are no issues if helpers are built with the same ODP configuration 
(ABI_COMPAT) and CC flags as the rest of the application. If you handle helper 
code as part of application code (as it should be), helper code will be 
ABI_COMPAT when the application using it is ABI_COMPAT itself.

Simplest solution would be to include helpers into application makefile instead 
of building a helper lib. If helper lib is a must, then the second simplest 
solution is to build that with the implementation lib. Helper lib is ABI_COMPAT 
when implementation lib is ABI_COMPAT, and an ABI_COMPAT application must 
include both of those ABI combat libs. There should be only one copy of helper 
source code, implementation will not modify it but just build it.

Similarly to application files, helper files should not need to know if it's 
built against ABI_COMPAT or not. There should not be "#if ABI_COMPAT" in any of 
the helper files. ABI spec should be visible only on implementation side - 
which headers (types/values/inlines) are included through ODP API files.

-Petri

Reply via email to