2015-02-20 6 views
5

Quando si crea codice C++ utilizzando il sistema di generazione waf, è possibile scegliere un comando del compilatore C++ specifico?Specificare il compilatore C++ in waf

Mentre è possibile eseguire qualcosa come "CXX = g ++ - 4.9 waf configure", o per ottenere lo stesso effetto impostando os.environ ['CXX'] nel file wscript, c'è un modo 'corretto' di fare questo?

vale a dire l'equivalente di waf dell'impostazione della variabile CXX in un Makefile.

risposta

0

È un po 'strano quanto poca documentazione ho trovato su questo argomento. Ho fatto fare impostando la variabile di ambiente nella funzione configure, come hai detto nella tua domanda.

Ecco un piccolo esempio per i più curiosi:

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')