summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/path.py
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2010-08-03 18:18:03 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-04 11:43:12 +0100
commit1fbcd2ca178db28747046b5bd943c81176db9f65 (patch)
tree18b476a4260e5970da74cc4d60ee51a010ee870c /meta/lib/oe/path.py
parent7b743641209492476329b88dcb213fbbd1780a9f (diff)
downloadpoky-1fbcd2ca178db28747046b5bd943c81176db9f65.tar.gz
lib/oe: sync with OE.dev
Most notable change is the move to creating symlinks to patches in the metadata tree rather than copying them. Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'meta/lib/oe/path.py')
-rw-r--r--meta/lib/oe/path.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/lib/oe/path.py b/meta/lib/oe/path.py
index 8902951581..f58c0138bb 100644
--- a/meta/lib/oe/path.py
+++ b/meta/lib/oe/path.py
@@ -42,3 +42,25 @@ def format_display(path, metadata):
42 return path 42 return path
43 else: 43 else:
44 return rel 44 return rel
45
46def remove(path):
47 """Equivalent to rm -f or rm -rf"""
48 import os, errno, shutil
49 try:
50 os.unlink(path)
51 except OSError, exc:
52 if exc.errno == errno.EISDIR:
53 shutil.rmtree(path)
54 elif exc.errno != errno.ENOENT:
55 raise
56
57def symlink(source, destination, force=False):
58 """Create a symbolic link"""
59 import os, errno
60 try:
61 if force:
62 remove(destination)
63 os.symlink(source, destination)
64 except OSError, e:
65 if e.errno != errno.EEXIST or os.readlink(destination) != source:
66 raise