summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/genie/src/actions/vstudio/vsllvm.lua
diff options
context:
space:
mode:
author Peter Ferrie <peter.ferrie@gmail.com>2019-02-04 10:05:46 -0800
committer R. Belmont <rb6502@users.noreply.github.com>2019-02-04 13:05:46 -0500
commite769e76ce4fb38d535cf32d27cf35c278ff207e0 (patch)
tree8568a04c0196c576ff8d8a2a3f2bbb8d9b1bc225 /3rdparty/genie/src/actions/vstudio/vsllvm.lua
parente22ffab3fa855e8624d090996b53376d4c6756e0 (diff)
enable sub-second snapshot timers (nw) (#4493)
* enable sub-second snapshot timers (nw) * switch to attotime, accept doubles * support LLVM extension in MSVC make vsllvm using extension from here: https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain
Diffstat (limited to '3rdparty/genie/src/actions/vstudio/vsllvm.lua')
-rw-r--r--3rdparty/genie/src/actions/vstudio/vsllvm.lua64
1 files changed, 64 insertions, 0 deletions
diff --git a/3rdparty/genie/src/actions/vstudio/vsllvm.lua b/3rdparty/genie/src/actions/vstudio/vsllvm.lua
new file mode 100644
index 00000000000..d6c6d1ddb53
--- /dev/null
+++ b/3rdparty/genie/src/actions/vstudio/vsllvm.lua
@@ -0,0 +1,64 @@
+--
+-- vsllvm.lua
+-- Baseline support for Visual Studio LLVM.
+--
+
+ premake.vstudio.vcllvm = {}
+ local vcllvm = premake.vstudio.vcllvm
+ local vstudio = premake.vstudio
+
+
+---
+-- Register a command-line action for Visual Studio llvm.
+---
+
+ newaction
+ {
+ trigger = "vsllvm",
+ shortname = "Visual Studio LLVM",
+ description = "Generate Microsoft Visual Studio LLVM project files",
+ os = "windows",
+
+ valid_kinds = { "ConsoleApp", "WindowedApp", "StaticLib", "SharedLib", "Bundle" },
+
+ valid_languages = { "C", "C++", "C#" },
+
+ valid_tools = {
+ cc = { "msc" },
+ dotnet = { "msnet" },
+ },
+
+ onsolution = function(sln)
+ premake.generate(sln, "%%.sln", vstudio.sln2005.generate)
+ end,
+
+ onproject = function(prj)
+ if premake.isdotnetproject(prj) then
+ premake.generate(prj, "%%.csproj", vstudio.cs2005.generate)
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ else
+ premake.vstudio.needAppxManifest = false
+ premake.generate(prj, "%%.vcxproj", premake.vs2010_vcxproj)
+ premake.generate(prj, "%%.vcxproj.user", premake.vs2010_vcxproj_user)
+ premake.generate(prj, "%%.vcxproj.filters", vstudio.vc2010.generate_filters)
+
+ if premake.vstudio.needAppxManifest then
+ premake.generate(prj, "%%/Package.appxmanifest", premake.vs2010_appxmanifest)
+ end
+ end
+ end,
+
+
+ oncleansolution = premake.vstudio.cleansolution,
+ oncleanproject = premake.vstudio.cleanproject,
+ oncleantarget = premake.vstudio.cleantarget,
+
+ vstudio = {
+ solutionVersion = "12",
+ targetFramework = "4.5.2",
+ toolsVersion = "15.0",
+ windowsTargetPlatformVersion = "8.1",
+ supports64bitEditContinue = true,
+ intDirAbsolute = true,
+ }
+ }