Ping! thanks -- PMM
On 21 October 2013 21:03, Peter Maydell <peter.mayd...@linaro.org> wrote: > Our rules.mak adds '-rR' to MAKEFLAGS to indicate that we will be > explicitly specifying everything and not relying on any default > variables or rules. However we were accidentally relying on the > default ARFLAGS ("rv"). This went unnoticed because of a bug in > GNU Make 3.82 and earlier which meant that adding -rR to MAKEFLAGS > only affected submakes, not the currently running instance. > Explicitly set ARFLAGS in config-host.mak, in the same way we > handle CFLAGS and LDFLAGS; this will allow us to work with > Make 4.0. > > Thanks to Paul Smith for analyzing this bug for us. > > Reported-by: Ken Moffat <zarniwh...@ntlworld.com> > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > Ken: I think this should work (and it doesn't break building with > old makes), but I don't have a make 4.0 to hand; if you could > test it I'd appreciate it. > > configure | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/configure b/configure > index 57ee62a..4eb3a07 100755 > --- a/configure > +++ b/configure > @@ -308,6 +308,9 @@ query_pkg_config() { > pkg_config=query_pkg_config > sdl_config="${SDL_CONFIG-${cross_prefix}sdl-config}" > > +# If the user hasn't specified ARFLAGS, default to 'rv', just as make does. > +ARFLAGS="${ARFLAGS-rv}" > + > # default flags for all hosts > QEMU_CFLAGS="-fno-strict-aliasing $QEMU_CFLAGS" > QEMU_CFLAGS="-Wall -Wundef -Wwrite-strings -Wmissing-prototypes $QEMU_CFLAGS" > @@ -3664,6 +3667,7 @@ echo "C compiler $cc" > echo "Host C compiler $host_cc" > echo "C++ compiler $cxx" > echo "Objective-C compiler $objcc" > +echo "ARFLAGS $ARFLAGS" > echo "CFLAGS $CFLAGS" > echo "QEMU_CFLAGS $QEMU_CFLAGS" > echo "LDFLAGS $LDFLAGS" > @@ -4239,6 +4243,7 @@ echo "HOST_CC=$host_cc" >> $config_host_mak > echo "CXX=$cxx" >> $config_host_mak > echo "OBJCC=$objcc" >> $config_host_mak > echo "AR=$ar" >> $config_host_mak > +echo "ARFLAGS=$ARFLAGS" >> $config_host_mak > echo "AS=$as" >> $config_host_mak > echo "CPP=$cpp" >> $config_host_mak > echo "OBJCOPY=$objcopy" >> $config_host_mak > -- > 1.7.11.4