diff options
author | Nicolas Schneider <nioncode+git@gmail.com> | 2016-05-30 21:56:16 +0200 |
---|---|---|
committer | Nicolas Schneider <nioncode+git@gmail.com> | 2016-05-30 22:00:20 +0200 |
commit | fba749fcb7a9654db78d45157477589e4352c2e1 (patch) | |
tree | 3eae5b3e96dfefc7b2f4401c616b879ce51cde12 /mesonbuild/backend/vs2015backend.py | |
parent | d34d85b0f5994b1eb07d93a97df75b815c31e51e (diff) | |
download | meson-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.py | 34 |
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 |