I would prefer to follow this approach to support deprecated features
(for few more releases providing the opportunity for the application
to change) between different versions of ODP rather than having
--enable-deprecated. This feature will allow for structure definitions
also to differ.

On 10 November 2017 at 04:22, Maxim Uvarov <maxim.uva...@linaro.org> wrote:
> I see that dpdk started to support abi versions in following ways:
>
> DPDK_2.0 {
>         global:
>
>         rte_jobstats_context_finish;
>         rte_jobstats_context_init;
> .....
>         rte_jobstats_set_update_period_function;
>         rte_jobstats_start;
>
>         local: *;
> };
>
> DPDK_16.04 {
>         global:
>
>         rte_jobstats_abort;
>
> } DPDK_2.0;
>
> ./dpdk/lib/librte_jobstats/Makefile:EXPORT_MAP := rte_jobstats_version.map
> ./dpdk/mk/rte.lib.mk:CPU_LDFLAGS += --version-script=$(SRCDIR)/$(EXPORT_MAP)
>
> I.e. they describe in .map file which functions to expert and what ABI/API
> level they are.
> We can use something the same. But I'm not big fun of manually writing such
> files. And maybe maintain different ABI versions in one source is not a
> good idea. But we can try to generate .map and filter out all not "odp_"
> functions, then specify this .map to linked.
>
> Maxim.

Reply via email to