On Wed, Feb 08, 2023 at 01:43:38PM -0800, Tyler Retzlaff wrote: > Introduce atomics abstraction that permits optional use of standard C11 > atomics when meson is provided the new enable_stdatomics=true option. > > Signed-off-by: Tyler Retzlaff <roret...@linux.microsoft.com> > --- > config/meson.build | 11 ++++ > lib/eal/arm/include/rte_atomic_32.h | 6 ++- > lib/eal/arm/include/rte_atomic_64.h | 6 ++- > lib/eal/include/generic/rte_atomic.h | 96 > +++++++++++++++++++++++++++++++++- > lib/eal/loongarch/include/rte_atomic.h | 6 ++- > lib/eal/ppc/include/rte_atomic.h | 6 ++- > lib/eal/riscv/include/rte_atomic.h | 6 ++- > lib/eal/x86/include/rte_atomic.h | 8 ++- > meson_options.txt | 2 + > 9 files changed, 139 insertions(+), 8 deletions(-) > > diff --git a/config/meson.build b/config/meson.build > index 26f3168..25dd628 100644 > --- a/config/meson.build > +++ b/config/meson.build > @@ -255,6 +255,17 @@ endif > # add -include rte_config to cflags > add_project_arguments('-include', 'rte_config.h', language: 'c') > > +stdc_atomics_enabled = get_option('enable_stdatomics') > +dpdk_conf.set('RTE_STDC_ATOMICS', stdc_atomics_enabled) > + > +if stdc_atomics_enabled > +if cc.get_id() == 'gcc' or cc.get_id() == 'clang' > + add_project_arguments('-std=gnu11', language: 'c')
Is there a reason for using gnu11 on gcc and clang, rather than limiting ourselves to proper c11 support? /Bruce