mgorny accepted this revision.
mgorny added a comment.
This revision is now accepted and ready to land.
LGTM, presuming the tests pass for you.
https://reviews.llvm.org/D53125
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm
thiagomacieira created this revision.
thiagomacieira added reviewers: mgorny, erichkeane.
Herald added subscribers: cfe-commits, srhines.
/usr/lib/os-release is the official path of /etc/os-release (the latter is
usually a symlink to the former)
Repository:
rC Clang
https://reviews.llvm.org/
thiagomacieira updated this revision to Diff 169151.
thiagomacieira added a comment.
Oops, add the missing portion of the unit test (the part that actually tests).
https://reviews.llvm.org/D53125
Files:
include/clang/Driver/Distro.h
lib/Driver/Distro.cpp
lib/Driver/ToolChains/Linux.cpp
thiagomacieira updated this revision to Diff 169152.
https://reviews.llvm.org/D53125
Files:
include/clang/Driver/Distro.h
lib/Driver/Distro.cpp
lib/Driver/ToolChains/Linux.cpp
unittests/Driver/DistroTest.cpp
Index: unittests/Driver/DistroTest.cpp
=
mgorny added inline comments.
Comment at: lib/Driver/Distro.cpp:139
+ File = VFS.getBufferForFile("/usr/lib/os-release");
+ if (File) {
Technically speaking, the spec says you are supposed to read `/etc/os-release`
first and fall back to `/usr/lib/os-release
thiagomacieira added inline comments.
Comment at: lib/Driver/Distro.cpp:139
+ File = VFS.getBufferForFile("/usr/lib/os-release");
+ if (File) {
mgorny wrote:
> Technically speaking, the spec says you are supposed to read
> `/etc/os-release` first and fall ba
thiagomacieira updated this revision to Diff 169236.
thiagomacieira added a comment.
Updated to check for /etc/os-release first and /usr/lib/os-release if that fails
https://reviews.llvm.org/D53125
Files:
include/clang/Driver/Distro.h
lib/Driver/Distro.cpp
lib/Driver/ToolChains/Linux.cpp
thiagomacieira marked an inline comment as done.
thiagomacieira added inline comments.
Comment at: lib/Driver/Distro.cpp:148
+for (StringRef Line : Lines)
+ if (Version == Distro::UnknownDistro && Line.startswith("ID="))
+Version = llvm::StringSwitch(Line.substr(
thiagomacieira updated this revision to Diff 169779.
thiagomacieira added a comment.
Update detection: as of Clear Linux 25620, /usr/lib/os-relaese contains
ID_LIKE=clear-linux-os, which allows detecting not only Clear itself, but also
Linux distributions derived from it (Clear Linux mixes).
h