Message ID | 20240828-rust-pl011-v9-6-35579191f17c@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add Rust build support, ARM PL011 device impl | expand |
Manos Pitsidianakis <manos.pitsidianakis@linaro.org> writes: > Rust crates, introduced from the next commit onwards, use the glib > allocator API and need to know whether g_aligned_alloc etc are > available. > > This commit adds a define in config_host_data that depends on glib > version >= 2.72. > > Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> > --- > meson.build | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/meson.build b/meson.build > index 05446acbc684a7521ecc9b3f80b98e2cec1a60cf..7f05466d128776ad8dbf403179734e6831b023c0 100644 > --- a/meson.build > +++ b/meson.build > @@ -979,6 +979,9 @@ glib = declare_dependency(dependencies: [glib_pc, gmodule], > # TODO: remove this check and the corresponding workaround (qtree) when > # the minimum supported glib is >= 2.75.3 > glib_has_gslice = glib.version().version_compare('<2.75.3') > +# Check whether glib has the aligned_alloc family of functions. > +# <https://docs.gtk.org/glib/func.aligned_alloc.html> > +glib_has_aligned_alloc = glib.version().version_compare('>=2.72.0') Minor suggestion: you could update the comment for the main glib probe: # When bumping glib minimum version, please check also whether to increase # the _WIN32_WINNT setting in osdep.h according to the value from # glib. You should also check if any of the glib.version() checks # bellow can also be removed. Anyway: Reviewed-by: Alex Bennée <alex.bennee@linaro.org> > > # override glib dep to include the above refinements > meson.override_dependency('glib-2.0', glib) > @@ -2508,6 +2511,7 @@ config_host_data.set('CONFIG_TIMERFD', cc.has_function('timerfd_create')) > config_host_data.set('HAVE_COPY_FILE_RANGE', cc.has_function('copy_file_range')) > config_host_data.set('HAVE_GETIFADDRS', cc.has_function('getifaddrs')) > config_host_data.set('HAVE_GLIB_WITH_SLICE_ALLOCATOR', glib_has_gslice) > +config_host_data.set('HAVE_GLIB_WITH_ALIGNED_ALLOC', glib_has_aligned_alloc) > config_host_data.set('HAVE_OPENPTY', cc.has_function('openpty', dependencies: util)) > config_host_data.set('HAVE_STRCHRNUL', cc.has_function('strchrnul')) > config_host_data.set('HAVE_SYSTEM_FUNCTION', cc.has_function('system', prefix: '#include <stdlib.h>'))
diff --git a/meson.build b/meson.build index 05446acbc684a7521ecc9b3f80b98e2cec1a60cf..7f05466d128776ad8dbf403179734e6831b023c0 100644 --- a/meson.build +++ b/meson.build @@ -979,6 +979,9 @@ glib = declare_dependency(dependencies: [glib_pc, gmodule], # TODO: remove this check and the corresponding workaround (qtree) when # the minimum supported glib is >= 2.75.3 glib_has_gslice = glib.version().version_compare('<2.75.3') +# Check whether glib has the aligned_alloc family of functions. +# <https://docs.gtk.org/glib/func.aligned_alloc.html> +glib_has_aligned_alloc = glib.version().version_compare('>=2.72.0') # override glib dep to include the above refinements meson.override_dependency('glib-2.0', glib) @@ -2508,6 +2511,7 @@ config_host_data.set('CONFIG_TIMERFD', cc.has_function('timerfd_create')) config_host_data.set('HAVE_COPY_FILE_RANGE', cc.has_function('copy_file_range')) config_host_data.set('HAVE_GETIFADDRS', cc.has_function('getifaddrs')) config_host_data.set('HAVE_GLIB_WITH_SLICE_ALLOCATOR', glib_has_gslice) +config_host_data.set('HAVE_GLIB_WITH_ALIGNED_ALLOC', glib_has_aligned_alloc) config_host_data.set('HAVE_OPENPTY', cc.has_function('openpty', dependencies: util)) config_host_data.set('HAVE_STRCHRNUL', cc.has_function('strchrnul')) config_host_data.set('HAVE_SYSTEM_FUNCTION', cc.has_function('system', prefix: '#include <stdlib.h>'))
Rust crates, introduced from the next commit onwards, use the glib allocator API and need to know whether g_aligned_alloc etc are available. This commit adds a define in config_host_data that depends on glib version >= 2.72. Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> --- meson.build | 4 ++++ 1 file changed, 4 insertions(+)