This is an archive of the discontinued LLVM Phabricator instance.

[libcxx] Whitelist inclusion of sysctl.h instead of blacklisting
ClosedPublic

Authored by bcraig on Jan 27 2016, 8:04 AM.

Details

Summary

Instead of excluding all known operating systems that are not derived from BSD, I know include all operating systems that claim to be derived from BSD. Hopefully, that will make it so that this check doesn't need to change for every new operating system that comes along.

Diff Detail

Event Timeline

bcraig updated this revision to Diff 46137.Jan 27 2016, 8:04 AM
bcraig retitled this revision from to [libcxx] Whitelist inclusion of sysctl.h instead of blacklisting.
bcraig updated this object.
bcraig added reviewers: mclow.lists, ed, jfb, jroelofs.
mclow.lists added inline comments.Jan 27 2016, 8:20 AM
src/thread.cpp
22

Where did the #Include <sys/param.h> come from?

bcraig added inline comments.Jan 27 2016, 8:44 AM
src/thread.cpp
22

sys/param.h is where BSD is defined (or not). If my research is correct, pretty much every *nix except for CloudABI has a sys/param.h.

Added cfe-commits to subscriber list.

bcraig marked 2 inline comments as done.Jan 27 2016, 2:11 PM
mclow.lists accepted this revision.Jan 27 2016, 8:21 PM
mclow.lists edited edge metadata.

This looks fine to me.

This revision is now accepted and ready to land.Jan 27 2016, 8:21 PM
bcraig updated this revision to Diff 46292.Jan 28 2016, 10:14 AM
bcraig edited edge metadata.

CloudABI doesn't define unix, so stop blacklisting it explicitly and let the whitelist filter it out.

I plan on submitting this tomorrow morning (my time) so that I have lots of time to monitor build failures.

bcraig closed this revision.Jan 29 2016, 6:11 AM