bug-automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#10470: MSYS: race in directory access?


From: Stefano Lattarini
Subject: bug#10470: MSYS: race in directory access?
Date: Tue, 10 Jan 2012 18:03:09 +0100

>> It would probably be worthwhile to try to understand why this is the case.
>> As a wild guess, would this work?
>>
>>   - ( sleep 1 ) &
>>   + sh -c "cd '$abs_builddir'; sleep 1" &
> 
> No, fails in the same way as the original.
>
Sorry, by bad, I meant this:  sh -c "cd '$ac_abs_srcdir'; sleep 1"

>> We could enhance your original workaround like this:
>>
>>  am__remove_distdir = \
>>    { test ! -d "$(distdir)" \
>>      || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
>> -         && rm -fr "$(distdir)"; }; }
>> +         && if rm -fr "$(distdir)"; then :; else \
>> +## On MSYS (1.0.17) it is not possible to remove a directory that is
>> +## in use; so, if the first rm fails, we sleep some seconds and retry,
>> +## to give pending processes some time to exit and "release" the
>> +## directory before we removed.  See automake bug#10470.
>> +              sleep 5 && rm -fr "$(distdir)"; fi; }; }
>>  am__post_remove_distdir = $(am__remove_distdir)
>>  endif %?TOPDIR_P%
> 
> This works, best so far!  Committable, if you ask me.
>
I agree, but first I'd like to see if we manage to resolve the issue into
sanity.m4 itself.  If we fail, the above workaround will be good enough.

Thanks,
  Stefano





reply via email to

[Prev in Thread] Current Thread [Next in Thread]