让waf将解决方案输出到另一个目录

时间:2016-08-29 08:30:04

标签: python waf

我最近编写了这个简单的waf构建脚本:

#! /usr/bin/env python
# encoding: utf-8

def options(opt):
    opt.load('compiler_cxx')
    opt.load('msvs')

def configure(conf):
    conf.load('compiler_cxx')

def build(bld):
    print('build')

但问题是输出的解决方案文件位于项目的根目录(wscript所在的位置);

Project Structure after running waf

是否有办法将ide特定文件生成到另一个目录(例如,ide / msvs)?

1 个答案:

答案 0 :(得分:1)

您可以使用

重定向解决方案的输出
out = os.path.join('my', 'out', 'dir')

相对于top_dirhttps://waf.io/apidocs/Context.html?highlight=top_dir#waflib.Context.top_dir)。

所以在你的情况下:

#! /usr/bin/env python
# encoding: utf-8
import os

out = os.path.join('my', 'out', 'dir')

def options(opt):
    opt.load('compiler_cxx')
    opt.load('msvs')

def configure(conf):
    conf.load('compiler_cxx')

def build(bld):
    print('build')