From: Neil Horman Date: Mon, 22 Jan 2018 01:48:04 +0000 (-0500) Subject: compat: add experimental tag macro X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=7d540a3e735dd4d3e5b57d281f079ecbf0a8f9fc;p=dpdk.git compat: add experimental tag macro The __rte_experimental macro tags a given exported function as being part of the EXPERIMENTAL api. Use of this tag will cause any caller of the function (that isn't removed by dead code elimination) to emit a warning that the user is making use of an API whos stabilty isn't guaranteed. It also places the function in the .text.experimental section, which is used to validate the tag against the corresponding library version map Signed-off-by: Neil Horman --- diff --git a/lib/librte_compat/rte_compat.h b/lib/librte_compat/rte_compat.h index 41e8032ba1..d6e79f3fce 100644 --- a/lib/librte_compat/rte_compat.h +++ b/lib/librte_compat/rte_compat.h @@ -101,5 +101,17 @@ */ #endif +#ifndef ALLOW_EXPERIMENTAL_API + +#define __rte_experimental \ +__attribute__((deprecated("Symbol is not yet part of stable ABI"), \ +section(".text.experimental"))) + +#else + +#define __rte_experimental \ +__attribute__((section(".text.experimental"))) + +#endif #endif /* _RTE_COMPAT_H_ */