Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/premake-4.x-stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/actions/vstudio/_vstudio.lua53
-rw-r--r--src/base/cmdline.lua6
-rw-r--r--tests/actions/test_clean.lua4
3 files changed, 47 insertions, 16 deletions
diff --git a/src/actions/vstudio/_vstudio.lua b/src/actions/vstudio/_vstudio.lua
index 4976508..d0b75d4 100644
--- a/src/actions/vstudio/_vstudio.lua
+++ b/src/actions/vstudio/_vstudio.lua
@@ -142,17 +142,20 @@
local fname = premake.project.getfilename(prj, "%%")
os.remove(fname .. ".vcproj")
- os.remove(fname .. ".vcproj.user")
os.remove(fname .. ".vcxproj")
- os.remove(fname .. ".vcxproj.user")
os.remove(fname .. ".vcxproj.filters")
os.remove(fname .. ".csproj")
- os.remove(fname .. ".csproj.user")
os.remove(fname .. ".pidb")
os.remove(fname .. ".sdf")
+
+ if _OPTIONS.generate_user then
+ os.remove(fname .. ".vcproj.user")
+ os.remove(fname .. ".vcxproj.user")
+ os.remove(fname .. ".csproj.user")
+ end
end
function vstudio.cleantarget(name)
@@ -222,10 +225,14 @@
onproject = function(prj)
if premake.isdotnetproject(prj) then
premake.generate(prj, "%%.csproj", vstudio.cs2002.generate)
- premake.generate(prj, "%%.csproj.user", vstudio.cs2002.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2002.generate_user)
+ end
else
premake.generate(prj, "%%.vcproj", vstudio.vc200x.generate)
- premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ end
end
end,
@@ -263,10 +270,14 @@
onproject = function(prj)
if premake.isdotnetproject(prj) then
premake.generate(prj, "%%.csproj", vstudio.cs2002.generate)
- premake.generate(prj, "%%.csproj.user", vstudio.cs2002.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2002.generate_user)
+ end
else
premake.generate(prj, "%%.vcproj", vstudio.vc200x.generate)
- premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ end
end
end,
@@ -304,10 +315,14 @@
onproject = function(prj)
if premake.isdotnetproject(prj) then
premake.generate(prj, "%%.csproj", vstudio.cs2005.generate)
- premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ end
else
premake.generate(prj, "%%.vcproj", vstudio.vc200x.generate)
- premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ end
end
end,
@@ -347,10 +362,14 @@
onproject = function(prj)
if premake.isdotnetproject(prj) then
premake.generate(prj, "%%.csproj", vstudio.cs2005.generate)
- premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ end
else
premake.generate(prj, "%%.vcproj", vstudio.vc200x.generate)
- premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.vcproj.user", vstudio.vc200x.generate_user)
+ end
end
end,
@@ -393,11 +412,15 @@
onproject = function(prj)
if premake.isdotnetproject(prj) then
premake.generate(prj, "%%.csproj", vstudio.cs2005.generate)
- premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.csproj.user", vstudio.cs2005.generate_user)
+ end
else
- 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)
+ premake.generate(prj, "%%.vcxproj", premake.vs2010_vcxproj)
+ if _OPTIONS.generate_user then
+ premake.generate(prj, "%%.vcxproj.user", premake.vs2010_vcxproj_user)
+ end
+ premake.generate(prj, "%%.vcxproj.filters", vstudio.vc2010.generate_filters)
end
end,
diff --git a/src/base/cmdline.lua b/src/base/cmdline.lua
index 592edff..5bfe02d 100644
--- a/src/base/cmdline.lua
+++ b/src/base/cmdline.lua
@@ -88,4 +88,10 @@
trigger = "version",
description = "Display version information"
}
+
+ newoption
+ {
+ trigger = "generate_user",
+ description = "Generate (and remove when cleaning) .user VStudio files"
+ }
\ No newline at end of file
diff --git a/tests/actions/test_clean.lua b/tests/actions/test_clean.lua
index f0badbc..bd205d6 100644
--- a/tests/actions/test_clean.lua
+++ b/tests/actions/test_clean.lua
@@ -93,7 +93,9 @@
kind "ConsoleApp"
prepare()
test.contains(removed, "MyProject.csproj")
- test.contains(removed, "MyProject.csproj.user")
+ if _OPTIONS.generate_user then
+ test.contains(removed, "MyProject.csproj.user")
+ end
test.contains(removed, "MyProject.pdb")
test.contains(removed, "MyProject.idb")
test.contains(removed, "MyProject.ilk")