2015-02-20 7 views
5

Kann ich beim Erstellen von C++ - Code mit dem Waf-Build-System einen bestimmten C++ - Compilerbefehl auswählen?Angeben von C++ - Compiler in Waf

Während es möglich ist, etwas wie "CXX = g ++ - 4.9 waf configure" auszuführen, oder den gleichen Effekt durch die Einstellung von os.environ ['CXX'] in der wscript-Datei zu erhalten, gibt es einen 'richtigen' Weg das zu tun?

d. H. Was ist das Waf-Äquivalent zum Setzen der CXX-Variablen in einem Makefile?

Antwort

0

Es ist ein bisschen seltsam, wie wenig Dokumentation ich zu diesem Thema gefunden habe. Ich habe es geschafft, indem ich die Umgebungsvariable in der configure Funktion gesetzt habe, wie Sie in Ihrer Frage erwähnen.

Hier ist ein kleines Beispiel für die Neugierigen:

import os 

def options(opt): 
    opt.load('wak.tools') 
    opt.load('compiler_cxx') 

def configure(conf): 
    conf.load('wak.tools') 
    if os.environ['CXX']: # Pull in the compiler 
     conf.env.CXX = os.environ['CXX'] 

    # Additional setup of variables 

    conf.load('compiler_cxx') # Will use the compiler from the environment path 

def build(bld): 
    bld.program(
     target='test', 
     includes='include', 
     source='src/main.cpp')