aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/ninjabackend.py
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2017-01-26 19:08:47 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2017-01-28 01:05:20 +0530
commitfc4e3326012aceeb3a1ef4a616e42e9cdfeadb9f (patch)
treeb6493e93b55f48dd76238dfefcc258dffbbd83b7 /mesonbuild/backend/ninjabackend.py
parent4677f37366b2b57053e065d9bb188191dddfa5e9 (diff)
downloadmeson-fc4e3326012aceeb3a1ef4a616e42e9cdfeadb9f.zip
meson-fc4e3326012aceeb3a1ef4a616e42e9cdfeadb9f.tar.gz
meson-fc4e3326012aceeb3a1ef4a616e42e9cdfeadb9f.tar.bz2
backends: Add support for build_by_default to vs2010 backend
Always generate the vcxproj file, but only add it to the build configuration if it's either supposed to be built by default, or is a dependency of another target that is built by default.
Diffstat (limited to 'mesonbuild/backend/ninjabackend.py')
-rw-r--r--mesonbuild/backend/ninjabackend.py26
1 files changed, 1 insertions, 25 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 49ccfca..9212316 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -2160,34 +2160,10 @@ rule FORTRAN_DEP_HACK
elem.add_item('pool', 'console')
elem.write(outfile)
- def get_build_by_default_targets(self):
- result = {}
- # Get all build and custom targets that must be built by default
- for t in self.build.get_targets().values():
- if t.build_by_default or t.install or t.build_always:
- result[t] = True
- # Get all targets used as test executables and arguments. These must
- # also be built by default. XXX: Sometime in the future these should be
- # built only before running tests.
- for t in self.build.get_tests():
- exe = t.exe
- if hasattr(exe, 'held_object'):
- exe = exe.held_object
- if isinstance(exe, (build.CustomTarget, build.BuildTarget)) and exe not in result:
- result[exe] = True
- for arg in t.cmd_args:
- if hasattr(arg, 'held_object'):
- arg = arg.held_object
- if not isinstance(arg, (build.CustomTarget, build.BuildTarget)):
- continue
- if arg not in result:
- result[arg] = True
- return result.keys()
-
def generate_ending(self, outfile):
targetlist = []
ctlist = []
- for t in self.get_build_by_default_targets():
+ for t in self.get_build_by_default_targets().values():
if isinstance(t, build.CustomTarget):
# Create a list of all custom target outputs
for o in t.get_outputs():