summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/core/base/os.lua15
1 files changed, 12 insertions, 3 deletions
diff --git a/xmake/core/base/os.lua b/xmake/core/base/os.lua
index b5e397ed8..c78d41c67 100644
--- a/xmake/core/base/os.lua
+++ b/xmake/core/base/os.lua
@@ -33,9 +33,10 @@ local utils = require("base/utils")
local string = require("base/string")
-- save original interfaces
-os._mkdir = os._mkdir or os.mkdir
-os._rmdir = os._rmdir or os.rmdir
-os._tmpdir = os._tmpdir or os.tmpdir
+os._mkdir = os._mkdir or os.mkdir
+os._rmdir = os._rmdir or os.rmdir
+os._tmpdir = os._tmpdir or os.tmpdir
+os._versioninfo = os._versioninfo or os.versioninfo
-- copy single file or directory
function os._cp(src, dst)
@@ -596,5 +597,13 @@ function os.isexec(filepath)
return os.isfile(filepath)
end
+-- get version info
+function os.versioninfo()
+
+ -- cache it
+ os._VERSIONINFO = os._VERSIONINFO or os._versioninfo()
+ return os._VERSIONINFO
+end
+
-- return module
return os