]> code.ossystems Code Review - openembedded-core.git/commitdiff
build.py: Add a symlink for the logging
authorMark Hatle <mark.hatle@windriver.com>
Thu, 30 Sep 2010 20:04:18 +0000 (15:04 -0500)
committerRichard Purdie <rpurdie@linux.intel.com>
Fri, 1 Oct 2010 17:45:32 +0000 (18:45 +0100)
[BUGID #375]

When configuring for the log file output, we generate a symlink to the
target filename.  This link uses the same file naming, but without the
active pid, making it easier to see which log file is the last one
generated.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
bitbake/lib/bb/build.py

index 1d0ae463c132cb17d8b65113e2cebcc075c4902a..0e2b8bf2f5fd42a6bc44366d21eda15f7361af33 100644 (file)
@@ -122,9 +122,22 @@ def exec_func(func, d, dirs = None):
     if not t:
         raise SystemExit("T variable not set, unable to build")
     bb.utils.mkdirhier(t)
+    loglink = "%s/log.%s" % (t, func)
     logfile = "%s/log.%s.%s" % (t, func, str(os.getpid()))
     runfile = "%s/run.%s.%s" % (t, func, str(os.getpid()))
 
+    # Even though the log file has not yet been opened, lets create the link
+    if loglink:
+        try:
+           os.remove(loglink)
+        except OSError as e:
+           pass
+
+        try:
+           os.symlink(logfile, loglink)
+        except OSError as e:
+           pass
+
     # Change to correct directory (if specified)
     if adir and os.access(adir, os.F_OK):
         os.chdir(adir)
@@ -200,6 +213,10 @@ def exec_func(func, d, dirs = None):
         if os.path.exists(logfile) and os.path.getsize(logfile) == 0:
             bb.msg.debug(2, bb.msg.domain.Build, "Zero size logfile %s, removing" % logfile)
             os.remove(logfile)
+            try:
+               os.remove(loglink)
+            except OSError as e:
+               pass
 
         # Close the backup fds
         os.close(osi[0])