[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: In tree configure errors since 6116aea9
From: |
Laurent Vivier |
Subject: |
Re: In tree configure errors since 6116aea9 |
Date: |
Sun, 22 Mar 2020 10:42:57 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 |
Le 21/03/2020 à 19:31, BALATON Zoltan a écrit :
> On Sat, 21 Mar 2020, Laurent Vivier wrote:
>> Le 21/03/2020 à 18:29, BALATON Zoltan a écrit :
>>> Hello,
>>>
>>> Since 6116aea99, or actually 4d6a835d (linux-user: introduce parameters
>>> to generate syscall_nr.h) but only next commit starts to enable it I get
>>> these errors when running configure in source tree:
>>>
>>> grep: ./.gitlab-ci.d: Is a directory
>>> grep: ./scripts/qemu-guest-agent/fsfreeze-hook.d: Is a directory
>>>
>>> for each entry in that loop over arches. Could this be silenced?
>>
>> I didn't see that because I always do an out-of-tree build.
>
> Isn't there a test for that or should there be one?
>
>> Could you try this?
>>
>> --- a/configure
>> +++ b/configure
>> @@ -1911,6 +1911,7 @@ for arch in alpha hppa m68k xtensa sh4 microblaze
>> arm ppc s390x sparc sparc64 \
>> rm -f "${source_path}/linux-user/${arch}/syscall_nr.h"
>> # remove the dependency files
>> find . -name "*.d" \
>> + -type f \
>> -exec grep -q
>> "${source_path}/linux-user/${arch}/syscall_nr.h" {} \; \
>> -exec rm {} \;
>> done
>
> This gets rid of the errors but seems to be much slower:
>
> with 4d6a835d running my usual configure script:
>
> real 0m5.968s
> user 0m4.642s
> sys 0m1.402s
>
> with HEAD and above patch:
>
> real 0m20.246s
> user 0m14.143s
> sys 0m6.152s
>
> Given that configure is rerun when some files change if there's a way to
> get at least the previous speed back might be better if possible.
>
> Regards,
> BALATON Zoltan
Could you try this:
--- a/configure
+++ b/configure
@@ -1910,9 +1910,9 @@ for arch in alpha hppa m68k xtensa sh4 microblaze
arm ppc s390x sparc sparc64 \
# remove the file if it has been generated in the source directory
rm -f "${source_path}/linux-user/${arch}/syscall_nr.h"
# remove the dependency files
- find . -name "*.d" \
- -exec grep -q
"${source_path}/linux-user/${arch}/syscall_nr.h" {} \; \
- -exec rm {} \;
+ test -d ${arch}-linux-user && find ${arch}-linux-user -type f -name
"*.d" \
+ -exec grep -q "${source_path}/linux-user/${arch}/syscall_nr.h"
{} \; \
+ -exec rm {} \;
done
if test -z "$python"
Thanks,
Laurent