summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--makefile42
-rw-r--r--scripts/toolchain.lua7
2 files changed, 47 insertions, 2 deletions
diff --git a/makefile b/makefile
index 0f380ece13b..9cc72273e7b 100644
--- a/makefile
+++ b/makefile
@@ -95,6 +95,8 @@
# FORCE_VERSION_COMPILE = 1
+# MS BUILD = 1
+
ifdef PREFIX_MAKEFILE
include $(PREFIX_MAKEFILE)
else
@@ -737,6 +739,24 @@ GCC_VERSION := $(shell gcc -dumpversion 2> NUL)
CLANG_VERSION := $(shell %CLANG%\bin\clang --version 2> NUL| head -n 1 | sed "s/[^0-9,.]//g")
PYTHON_AVAILABLE := $(shell $(PYTHON) --version > NUL 2>&1 && echo python)
CHECK_CLANG :=
+ifdef MSBUILD
+MSBUILD_PARAMS := /v:minimal /m:$(NUMBER_OF_PROCESSORS)
+ifeq ($(CONFIG),debug)
+MSBUILD_PARAMS += /p:Configuration=Debug
+else
+MSBUILD_PARAMS += /p:Configuration=Release
+endif
+ifeq ($(ARCHITECTURE),_x64)
+MSBUILD_PARAMS += /p:Platform=x64
+else
+MSBUILD_PARAMS += /p:Platform=win32
+endif
+ifeq ($(SUBTARGET),mess)
+MSBUILD_SOLUTION := $(SUBTARGET).sln
+else
+MSBUILD_SOLUTION := $(TARGET)$(SUBTARGET).sln
+endif
+endif
else
GCC_VERSION := $(shell $(subst @,,$(CC)) -dumpversion 2> /dev/null)
ifneq ($(OS),solaris)
@@ -834,12 +854,21 @@ vs2012_xp: generate
vs2013: generate
$(SILENT) $(GENIE) $(PARAMS) vs2013
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2013/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2013_intel: generate
$(SILENT) $(GENIE) $(PARAMS) --vs=intel-15 vs2013
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2013-intel/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2013_xp: generate
$(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-xp vs2013
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2013-xp/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2013_clang: generate
$(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-clang vs2013
@@ -849,15 +878,24 @@ vs2013_winrt: generate
vs2015: generate
$(SILENT) $(GENIE) $(PARAMS) vs2015
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2015/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2015_intel: generate
$(SILENT) $(GENIE) $(PARAMS) --vs=intel-15 vs2015
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2015-intel/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2015_xp: generate
- $(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-xp vs2015
+ $(SILENT) $(GENIE) $(PARAMS) --vs=vs2015-xp vs2015
+ifdef MSBUILD
+ $(SILENT) msbuild $(PROJECTDIR)/vs2015-xp/$(MSBUILD_SOLUTION) $(MSBUILD_PARAMS)
+endif
vs2015_clang: generate
- $(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-clang vs2015
+ $(SILENT) $(GENIE) $(PARAMS) --vs=vs2015-clang vs2015
vs2015_winrt: generate
$(SILENT) $(GENIE) $(PARAMS) --vs=winstore81 vs2015
diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua
index 08712050751..532fac535e8 100644
--- a/scripts/toolchain.lua
+++ b/scripts/toolchain.lua
@@ -44,8 +44,10 @@ newoption {
{ "intel-15", "Intel C++ Compiler XE 15.0" },
{ "vs2012-clang", "Clang 3.6" },
{ "vs2013-clang", "Clang 3.6" },
+ { "vs2015-clang", "Clang 3.6" },
{ "vs2012-xp", "Visual Studio 2012 targeting XP" },
{ "vs2013-xp", "Visual Studio 2013 targeting XP" },
+ { "vs2015-xp", "Visual Studio 2015 targeting XP" },
{ "winphone8", "Windows Phone 8.0" },
{ "winphone81", "Windows Phone 8.1" },
{ "winstore81", "Windows Store 8.1" },
@@ -376,6 +378,11 @@ function toolchain(_buildDir, _subDir)
premake.vstudio.toolset = ("v120_xp")
location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-xp")
end
+
+ if ("vs2015-xp") == _OPTIONS["vs"] then
+ premake.vstudio.toolset = ("v140_xp")
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-xp")
+ end
elseif _ACTION == "xcode4" then
if "osx" == _OPTIONS["xcode"] then