On 05/07/2010 02:05 AM, Jim Meyering wrote: >> There's a way out. >> >> - maintain a textual representation of these structs and their members >> (including type names, but not sizes) and make pdwtags a requirement >> for running "make syntax-check", which would perform the verification. >> I.e., keep a copy of the output of pdwtags, but without the comments. > > FYI, here's code to generate the latter: > > pdwtags src/libvirt_driver_remote_la-remote_protocol.o \ > |perl -0777 -n \ > -e 'foreach my $p (split m!\n\n/\* \d+ \*/\n!)' \ > -e ' { if ($p =~ /^struct remote_/) {' \ > -e ' $p =~ s!\t*/\*.*?\*/!!sg;' \ > -e ' $p =~ s!\s+\n!\n!sg;' \ > -e ' print "$p\n" } }' \ > > remote-protocol-structs > > IMHO, it would be sufficient to enable a check comparing > this output to a version-controlled reference file, and > making it part of "make check". I like it! > > Of course, this would add a dependency on pdwtags/dwarves, > but it would be fine/easy to skip the check on non-Linux systems. The same as we do for cppi - make it an optional 'make syntax-check', so that those who have dwarves installed run it, and those who don't get a warning that they should consider installing dwarves. > > Any objection to requiring the dwarves package for development on Linux? No objection to an optional dependency from me. -- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list