scripts: add lnr (link relative)
lnr is a simple script to generate relative symlinks from absolute paths, similar to "ln -r" but without requiring coreutils 8.16 (Ubuntu 12.04 and others currently ship 8.13). (From OE-Core rev: 6ae3b85eaffd1b0b6914422e8de7c1230723157d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
a8dc6aed55
commit
1412dda560
|
@ -0,0 +1,21 @@
|
||||||
|
#! /usr/bin/env python
|
||||||
|
|
||||||
|
# Create a *relative* symlink, just like ln --relative does but without needing
|
||||||
|
# coreutils 8.16.
|
||||||
|
|
||||||
|
import sys, os
|
||||||
|
|
||||||
|
if len(sys.argv) != 3:
|
||||||
|
print "$ lnr TARGET LINK_NAME"
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
target = sys.argv[1]
|
||||||
|
linkname = sys.argv[2]
|
||||||
|
|
||||||
|
if os.path.isabs(target):
|
||||||
|
if not os.path.isabs(linkname):
|
||||||
|
linkname = os.path.abspath(linkname)
|
||||||
|
start = os.path.dirname(linkname)
|
||||||
|
target = os.path.relpath(target, start)
|
||||||
|
|
||||||
|
os.symlink(target, linkname)
|
Loading…
Reference in New Issue