On Thu, Nov 30, 2023 at 05:17:09AM -0500, Andrea Bolognani wrote: > On Thu, Nov 30, 2023 at 09:24:15AM +0000, Daniel P. Berrangé wrote: > > macOS XDR library is an oddball using xdr_u_int64_t instead of > > xdr_uint64_t which everyone else has. > > > > The code generator already does the right thing, but the test > > program previously generated with the Linux rpcgen program > > does not compile on macOS due to this. > > > > Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> > > --- > > scripts/rpcgen/tests/demo.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/scripts/rpcgen/tests/demo.c b/scripts/rpcgen/tests/demo.c > > index 182ed448f0..56a50239dc 100644 > > --- a/scripts/rpcgen/tests/demo.c > > +++ b/scripts/rpcgen/tests/demo.c > > @@ -1,4 +1,8 @@ > > > > +#ifdef __APPLE__ > > +# define xdr_uint64_t xdr_u_int64_t > > +#endif > > This makes the compilation error go away, but I'm not convinced it's > the right fix. > > IIUC demo.{c,h} are generated from demo.x, so wouldn't this be > overwritten the next time we regenerate them? No, the demo.{c,h} are reference implementations from the original rpcgen, which we'll never change. The demo.x is processed by our own RPC generator code, and then we check that both the original demo.c, and our own generated version produce the same data on the wire. > Also both Linux and macOS have xdr_u_int64_t, and we already seem to > use the u_ variant for other things (u_short, u_int), so couldn't we > just use xdr_u_int64_t everywhere and avoid the conditional? IIRC, that would then break Windows With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| _______________________________________________ Devel mailing list -- devel@xxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxx