On Tue, Mar 25, 2014 at 7:01 AM, Assaf Gordon <[email protected]> wrote: > Hello, > > > On 03/22/2014 08:21 PM, Jim Meyering wrote: >> >> On Sat, Mar 22, 2014 at 10:36 AM, Assaf Gordon <[email protected]> wrote: >>> >>> One more critical difference (in building on FreeBSD-10 vs. common >>> linux): >>> >>> The following contrived Makefile, works on Linux (with either GNU make or >>> bmake), but fails on FreeBSD-10: > > >> Hi Gordon, >> That makes it look like the FreeBSD bmake invokes each line >> using a shell with the equivalent of "set -e" in effect. That is the >> trouble. Do they document if/how they set the SHELL environment >> variable? You can probably cause GNU make to misbehave in >> the same manner by setting SHELL to something like "/bin/sh -e". > > > Based on feedback from FreeBSD people: > http://lists.freebsd.org/pipermail/freebsd-questions/2014-March/256962.html > http://lists.freebsd.org/pipermail/freebsd-questions/2014-March/256943.html > > It would seem 'make' compatibility was never a goal. > > Their advice is to use 'gmake' when building 'autotools' projects. > > To put things in perspective, > most 'autotools' project would still compile fine with FreeBSD make, it's > just those few obscure cases mentioned in this thread that fail.
Hi Gordon, Thanks for the info. It would be great to add something to automake-generated Makefiles that would alert users to this risk -- or that would halt the build right away, suggesting to use gmake instead. If you feel like pursuing it, and find that there is some POSIX-make-compatible construct we can emit into a Makefile that will cause bmake to do one of those two things, I can help get that into automake.
