Question

how do you set a target - maybe Waf calls them "commands" - to always be executed? That is to be like PHONY targets in Make?

I'm using Waf to build - among other things - a Visual Studio solution, whose dependencies and recompilation I would prefer to be managed by Visual Studio itself.

Currently I'm using this (simplified) definition:

def build(bld):
  bld( rule = "msbuild MySolution.sln /target:Build /property:CONFIGURATION=Release",
      source = "",
      target = "program.exe" )

However, "msbuild" gets called only when "program.exe" is missing.

Thanks.

Was it helpful?

Solution

Asked this question on the waf-users mailing list and the solution is to add the "always" parameter:

def build(bld):
   bld( rule = "msbuild MySolution.sln /target:Build /property:CONFIGURATION=Release",
      target = "program.exe" ,
      always = True )
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top