authorgravatar for 35231115+Rocknest@users.noreply.github.comRocknest <35231115+Rocknest@users.noreply.github.com> 2020-10-11 16:46:29+03:00
committergravatar for 35231115+Rocknest@users.noreply.github.comRocknest <35231115+Rocknest@users.noreply.github.com> 2020-10-12 15:18:50+03:00
log39841d5e2c97a6b04834ae82a30db27cff01f17f
treeff80523e3da8c393fce86b36af0011190f17a5f5
parent47d7bf1a0e9776e8695053b12795020644c2b006

remove workaround


2 files changed, 4 insertions(+), 10 deletions(-)

lib/std/builtin.zig+1
...@@ -567,6 +567,7 @@ pub fn testVersionParse() !void {...@@ -567,6 +567,7 @@ pub fn testVersionParse() !void {
567 try f.eql("2.7.pre", 2, 7, 0);567 try f.eql("2.7.pre", 2, 7, 0);
568 try f.eql("0..3", 0, 0, 0);568 try f.eql("0..3", 0, 0, 0);
569 try f.eql("8.008.", 8, 8, 0);569 try f.eql("8.008.", 8, 8, 0);
570 try f.eql("01...", 1, 0, 0);
570 try f.eql("55", 55, 0, 0);571 try f.eql("55", 55, 0, 0);
571 try f.eql("4294967295.0.1", 4294967295, 0, 1);572 try f.eql("4294967295.0.1", 4294967295, 0, 1);
572 try f.eql("429496729_6", 429496729, 0, 0);573 try f.eql("429496729_6", 429496729, 0, 0);
lib/std/zig/system.zig+3-10
...@@ -209,16 +209,9 @@ pub const NativeTargetInfo = struct {...@@ -209,16 +209,9 @@ pub const NativeTargetInfo = struct {
209 .linux => {209 .linux => {
210 const uts = std.os.uname();210 const uts = std.os.uname();
211 const release = mem.spanZ(&uts.release);211 const release = mem.spanZ(&uts.release);
212 // The release field may have several other fields after the212 // The release field sometimes has a weird format,
213 // kernel version213 // `Version.parse` will attempt to find some meaningful interpretation.
214 const kernel_version = if (mem.indexOfScalar(u8, release, '-')) |pos|214 if (std.builtin.Version.parse(release)) |ver| {
215 release[0..pos]
216 else if (mem.indexOfScalar(u8, release, '_')) |pos|
217 release[0..pos]
218 else
219 release;
220
221 if (std.builtin.Version.parse(kernel_version)) |ver| {
222 os.version_range.linux.range.min = ver;215 os.version_range.linux.range.min = ver;
223 os.version_range.linux.range.max = ver;216 os.version_range.linux.range.max = ver;
224 } else |err| switch (err) {217 } else |err| switch (err) {