This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Use "|" instead of "+" when combine the _IO_LINE_BUF and _IO_UNBUFFERED flags


On 07/08/2015 09:09 AM, Siddhesh Poyarekar wrote:
> On 8 July 2015 at 18:16, Carlos O'Donell <carlos@redhat.com> wrote:
>> It's not a hack. The script reads from stdin for the list of *.d
>> files that were created by the build, but if there are no *.d files
>> the shell expansion is empty and that forces the script to read from
>> the parent's inherited stdin. Since the parent never writes anything
>> to stdin the awk script blocks on the read forever. As Andreas notes
>> it should dep on the *.d files existing, and that is true. However,
>> even if that were fixed we should still read from /dev/null and
>> fail the test even if all the *.d files were deleted between the
>> time they were created and the script ran (robust).
> 
> Right, I misread what that target was doing.  In any case, the right
> fix here would be to make the check-local-headers target depend on *.d
> (one of them I guess?) in a way that they're always generated before
> the script is run.

I agree that `make check` should effectively run `make` if the
dependencies are not yet met, but we aren't there yet, and I see
a whole host of other failures to fix. It's also not obvious to me how
I would depend on *all* *.d files in that makefile target, it doesn't seem
trivial to compute them. The fix to read from /dev/null seems like
the lowest cost immediate solution that yields a `make check` failure
rather than a hang (which is terrible for automated test systems also).

If nobody objects I'll check it in now to p

Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]