2016-07-12 11 views
2

Als Teil meiner Erstellung muss ich ein Verzeichnis erstellen. Mit waf kann ich zum Beispiel Symlinks mit Build.BuildContext.symlink_as erstellen. Aber ich kann etwas wie mkdir nicht finden. Was ist der beste Weg, um ein leeres Verzeichnis zu erstellen (idealerweise zur Installationszeit).Erstellen eines Verzeichnisses beim Erstellen mit Waf

Antwort

0

Sie haben eine mkdir() Methode im Objekt Node. So können Sie etwas wie tun:

def build(bld): 

    # create foo directory in the build directory 

    bld.path.get_bld().make_node("foo").mkdir() 

WAF normalerweise Verzeichnisse erstellen, wann immer benötigt.

Wenn Sie ein Verzeichnis außerhalb des Build-Baum erstellt werden soll, bei der Installation, können Sie nackten Python verwenden, wie:

import os 

def build(bld): 

    if bld.cmd == "install": 

     d = os.path.join(bld.options.destdir, "what/ever/you/want") 
     if not os.path.exists(d): 
      os.makedirs(d) 

Beachten Sie, dass bld.options.destdir durch die --destdir Option geändert werden :)

+0

Danke, aber ich muss ein Verzeichnis im Installationsverzeichnis erstellen. –

+0

@Damascus Steel: ok, habe ich konsequent bearbeitet. Lass es mich wissen, wenn es in Ordnung ist. – neuro

+0

Das funktioniert großartig. –