diff options
Diffstat (limited to 'openembedded/classes/src_distribute_local.bbclass')
-rw-r--r-- | openembedded/classes/src_distribute_local.bbclass | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/openembedded/classes/src_distribute_local.bbclass b/openembedded/classes/src_distribute_local.bbclass new file mode 100644 index 0000000000..5f0cef5bec --- /dev/null +++ b/openembedded/classes/src_distribute_local.bbclass | |||
@@ -0,0 +1,31 @@ | |||
1 | inherit src_distribute | ||
2 | |||
3 | # SRC_DIST_LOCAL possible values: | ||
4 | # copy copies the files from ${A} to the distributedir | ||
5 | # symlink symlinks the files from ${A} to the distributedir | ||
6 | # move+symlink moves the files into distributedir, and symlinks them back | ||
7 | SRC_DIST_LOCAL ?= "move+symlink" | ||
8 | SRC_DISTRIBUTEDIR ?= "${DEPLOY_DIR}/sources" | ||
9 | SRC_DISTRIBUTECOMMAND () { | ||
10 | s="${SRC}" | ||
11 | if [ ! -L "$s" ] && (echo "$s"|grep "^${DL_DIR}"); then | ||
12 | : | ||
13 | else | ||
14 | exit 0; | ||
15 | fi | ||
16 | mkdir -p ${SRC_DISTRIBUTEDIR} | ||
17 | case "${SRC_DIST_LOCAL}" in | ||
18 | copy) | ||
19 | test -e $s.md5 && cp -f $s.md5 ${SRC_DISTRIBUTEDIR}/ | ||
20 | cp -f $s ${SRC_DISTRIBUTEDIR}/ | ||
21 | ;; | ||
22 | symlink) | ||
23 | test -e $s.md5 && ln -sf $s.md5 ${SRC_DISTRIBUTEDIR}/ | ||
24 | ln -sf $s ${SRC_DISTRIBUTEDIR}/ | ||
25 | ;; | ||
26 | move+symlink) | ||
27 | mv $s ${SRC_DISTRIBUTEDIR}/ | ||
28 | ln -sf ${SRC_DISTRIBUTEDIR}/`basename $s` $s | ||
29 | ;; | ||
30 | esac | ||
31 | } | ||