aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/vs2015backend.py
diff options
context:
space:
mode:
authorNicolas Schneider <nioncode+git@gmail.com>2016-05-30 21:56:16 +0200
committerNicolas Schneider <nioncode+git@gmail.com>2016-05-30 22:00:20 +0200
commitfba749fcb7a9654db78d45157477589e4352c2e1 (patch)
tree3eae5b3e96dfefc7b2f4401c616b879ce51cde12 /mesonbuild/backend/vs2015backend.py
parentd34d85b0f5994b1eb07d93a97df75b815c31e51e (diff)
downloadmeson-fba749fcb7a9654db78d45157477589e4352c2e1.zip
meson-fba749fcb7a9654db78d45157477589e4352c2e1.tar.gz
meson-fba749fcb7a9654db78d45157477589e4352c2e1.tar.bz2
extract vs2015backend into own file
Diffstat (limited to 'mesonbuild/backend/vs2015backend.py')
-rw-r--r--mesonbuild/backend/vs2015backend.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/mesonbuild/backend/vs2015backend.py b/mesonbuild/backend/vs2015backend.py
new file mode 100644
index 0000000..c138cb5
--- /dev/null
+++ b/mesonbuild/backend/vs2015backend.py
@@ -0,0 +1,34 @@
+# Copyright 2014-2016 The Meson development team
+
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from xml.etree import ElementTree as ET
+from .vs2010backend import Vs2010Backend
+
+
+class Vs2015Backend(Vs2010Backend):
+ def __init__(self, build):
+ super().__init__(build)
+ self.platform_toolset = 'v140'
+
+ @staticmethod
+ def has_objects(objects, additional_objects, generated_objects):
+ # VS2015 requires generated objects to be added explicitly to the project file.
+ return len(objects) + len(additional_objects) + len(generated_objects) > 0
+
+ @staticmethod
+ def add_generated_objects(node, generated_objects):
+ # VS2015 requires generated objects to be added explicitly to the project file.
+ for s in generated_objects:
+ ET.SubElement(node, 'Object', Include=s)
+ return