def pre_flight(self):
    import os
    import lldb
    import lldbtest

    dname = os.path.join(os.environ["LLDB_TEST"])
    if not os.path.isdir(dname):
        os.mkdir(dname)
    dest = os.path.join(dname, "lldb_log-%s-%s-%s.txt" % (self.getArchitecture(), self.getCompiler(), self.id()))
    print "\nEnabling lldb logging for test case:", self
    print "with log destination:", dest
    self.runCmd("log enable -f %s gdb-remote packets process" % dest)

#def post_flight(test):
#    __import__("lldb")
#    __import__("lldbtest")
#    print "\nRunning post-flight function:"
#    print "for test case:", test

