On Mon, 2013-10-21 at 04:05 +0100, Ken Moffat wrote: > With GNU Make 4.0 on x86_64-unknown-linux-gnu I am unable to build > qemu 1.6.{0,1} because it fails with > AR libfdt/libfdt.a > ar: two different operation options specified > Makefile:234: recipe for target 'libfdt/libfdt.a' failed > > If I try to build it with make V=1 the output shows it has > ARFLAGS="" > > It builds if I export ARFLAGS="rv". If I have understood > the reply on the qemu-devel list correctly, qemu deliberately passes > empty ARFLAGS and relies on the following in 'info make' : > `ARFLAGS' > Flags to give the archive-maintaining program; default `rv'.
There must be something else going on in your makefile. The built-in value for ARFLAGS is still present; you can see it set: $ make -p -f /dev/null | grep ARFLAGS make: *** No targets. Stop. ARFLAGS = rv $(AR) $(ARFLAGS) $@ $< Something in your makefile is overriding this value. Perhaps you are setting MAKEFLAGS to add the -R flag (which disables built-in variables)? Or, you're overriding it somehow. If you run: $ make -p -n and search the output for ARFLAGS, the comment before should tell you where that variable is being assigned. _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make