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: Flatten sysdeps/unix/bsd/bsd4.4 into sysdeps/unix/bsd


> And I think it's probably inevitable there will be cases where sometimes 
> you want directory A to take precedence, and sometimes want B to take 
> precedence, and that the solution is likely to involve ways to specify 
> particular files at a point in the ordering (without putting everything in 
> their containing directory there), or to exclude particular files when 
> listing a directory.

I agree that it's likely difficult cases will come up.  I tend to think
the proper solutions to those will involve splitting to finer-grained
directories instead of what you suggest.  In existing practice, cases
like this have been addressed with a more-specific file that is just
#include of that appropriate file--which is an informal form of what you
suggest--though that is not an option for installed headers.  (I do
recognize there is a tension between my desire to avoid complicating the
model with per-file shenanigans because it will be harder to understand
and maintain, and the common desire to avoid inflating the number of
sysdeps directories because the added sysd-rules pattern rules slow down
make.)  But those decisions will be case-by-case as they arise in
practice.

> Here then is the original patch without the sysdeps/mach/hurd/Implies 
> changes.  I hope that the Implies mechanism works properly when a 
> directory that does not exist is named (that is, produces the same 
> directory ordering as if the directory did exist), since git does not 
> represent empty directories so the effect of this patch is that the 
> directory sysdeps/unix/bsd/bsd4.4 will not exist but will still be 
> referenced by sysdeps/mach/hurd/Implies.

Off hand I think it will work, though configure will warn:
    AC_MSG_WARN($name/$implies_file specifies nonexistent $x)
But I think that is acceptable enough since we intend to clean up the
situation further before the next release.

This change looks OK to me, but I think it should wait for Thomas to
verify that it doesn't materially change the Hurd build.


Thanks,
Roland


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