Michal Prívozník wrote:
On 1/31/26 11:43, Roman Bogorodskiy wrote:
According to 9fa3a8ab6fd82ad2f5a14b490696085061418718, macOS insists on passing 3 arguments for xdrproc_t.
Passing 3 arguments was a good common ground, but since recently[1] FreeBSD only accepts 2 arguments.
Add a meson.build check whether 3 arguments are accepted, and add macros which passes either 2 or 3 arguments to xdrproc_t based on the result of this check.
1: https://cgit.freebsd.org/src/commit/?id=ac5a19ec6989675c8ec6c3ca245dba243d1a...
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com> --- meson.build | 19 +++++++++++++++++++ scripts/rpcgen/tests/test_demo.c | 12 +++++++++--- src/rpc/virnetmessage.c | 10 ++++++++-- 3 files changed, 36 insertions(+), 5 deletions(-)
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Michal
Looks like this broke aarch64-macos-14. I think it also needs this: --- a/meson.build +++ b/meson.build @@ -896,6 +896,7 @@ endif if xdr_dep.found() xdrproc_3arg_code = ''' + #include <rpc/types.h> #include <rpc/xdr.h> bool_t test_filter(XDR *xdr, void *data, unsigned int opaque_flags) { I wonder though if it's possible to somehow trigger aarch64-macos-14 on feature branches because I don't seem to see that in my pipelines. Roman