On 07/05/2017 11:32 AM, Andrea Bolognani wrote: > On Tue, 2017-07-04 at 16:22 +0100, Daniel P. Berrange wrote: >> When autogen.sh finishes it helpfully prints >> >> "Now type 'make' to compile libvirt." >> >> which is fine if on a host with GNU make, but on *BSD running >> 'make' will end in tears. We should tell users to run 'gmake' >> on these platforms. If 'gmake' doesn't exist then we should >> report an error too >> >> "GNU make is required to build libvirt" >> >> Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx> >> --- >> + >> +# Make sure we can find GNU make and tell the user >> +# the right command to run >> +make -v | grep "GNU Make" 1>/dev/null 2>&1 In fact, gnulib's bootstrap script is already able to enforce prerequisites, look for buildreq= in bootstrap.conf. But I don't know if it is smart enough to make it easy to state that a project depends on GNU make (not all projects have that dependency, but we do) - so maybe it's worth hoisting the detection of an adequate (GNU) make into gnulib's bootstrap script. > > This doesn't catch stderr for the make invocation, and > FreeBSD's make doesn't support the -v flag so you'll > end up with a bunch of spurious output. You can use > > make -v 2>&1 | grep -q "GNU Make" Yes, that is indeed important, if you like scraping help output. But it may be better to test some other GNU-only functionality instead of just scraping output (features, not versions, is always better when it comes to probing for sufficient support) - the question is whether that can be done in an equally compact manner. Is it worth cc'ing the gnulib list for thoughts on incorporating the notion of "this project requires GNU make" into the $buildreq handling of bootstrap? -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list