Since #10209 we've been noticing that on macos after running make clean the coroutine/arm64/Context.S file is missing, causing
subsequent make calls to fail because Context.S is needed to build Context.o.
The reason this is happening is because macos is case-insensitive so the .s looks for coroutine/arm64/Context.s and finds coroutine/arm64/Context.s. This does not happen on linux because the
filesystem is case sensitive.
I attempted to use find because it is case sensitive regardless of
filesystem, but it was a lot slower than rm since we can't pass
multiple file names the same way to find.
Reverting this small part of #10209 fixes the issue for macos and it
wasn't clear that those changes were strictly necessary for the rest of
the PR.
We changed the original code to use rm instead of delete because it
is not standarized on POSIX.
Fix macos bug deleting too many files
Since #10209 we've been noticing that on macos after running
make clean
thecoroutine/arm64/Context.S
file is missing, causingsubsequent make calls to fail because
Context.S
is needed to buildContext.o
.The reason this is happening is because macos is case-insensitive so the
.s
looks forcoroutine/arm64/Context.s
and findscoroutine/arm64/Context.s
. This does not happen on linux because thefilesystem is case sensitive.
I attempted to use
find
because it is case sensitive regardless offilesystem, but it was a lot slower than
rm
since we can't passmultiple file names the same way to
find
.Reverting this small part of #10209 fixes the issue for macos and it
wasn't clear that those changes were strictly necessary for the rest of
the PR.
We changed the original code to use
rm
instead ofdelete
because itis not standarized on POSIX.