On 19 June 2016 at 06:53, Stefan Weil <[email protected]> wrote: > Am 19.06.2016 um 00:05 schrieb Peter Maydell: >> From: Peter Maydell <[email protected]> >> >> The AVX2 optimization test assumes that the object format >> is ELF and the system has the readelf utility. If this isn't >> true then configure might fail or emit a warning (since in >> a pipe "foo | bar >/dev/null 2>&1" does not redirect the >> stderr of foo, only of bar). Adjust the check so that if >> we don't have readelf or don't have an ELF object then we >> just don't enable the AVX2 optimization. >> >> Reported-by: Stefan Weil <[email protected]> >> Signed-off-by: Peter Maydell <[email protected]> >> --- >> configure | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/configure b/configure >> index 7beefcd..30bca55 100755 >> --- a/configure >> +++ b/configure >> @@ -1792,8 +1792,10 @@ int foo(void *a) __attribute__((ifunc("bar_ifunc"))); >> int main(int argc, char *argv[]) { return foo(argv[0]);} >> EOF >> if compile_object "" ; then >> - if readelf --syms $TMPO |grep "IFUNC.*foo" >/dev/null 2>&1; then >> - avx2_opt="yes" >> + if has readelf; then >> + if readelf --syms $TMPO 2>/dev/null |grep -q "IFUNC.*foo"; then >> + avx2_opt="yes" >> + fi >> fi >> fi >> >> > > You could check "has readelf" earlier and avoid the compile test > if there is no readelf (saves a little time).
I guess so, though there's not much in it. > The final I/O redirection is still needed (otherwise Linux users will > see the grep output). I added -q which should suppress that, no ? thanks -- PMM
