Merge branch 'tzdata' into org.openembedded.dev
[openembedded.git] / classes / pkg_distribute.bbclass
1 PKG_DISTRIBUTECOMMAND[func] = "1"
2 python do_distribute_packages () {
3         cmd = bb.data.getVar('PKG_DISTRIBUTECOMMAND', d, 1)
4         if not cmd:
5                 raise bb.build.FuncFailed("Unable to distribute packages, PKG_DISTRIBUTECOMMAND not defined")
6         bb.build.exec_func('PKG_DISTRIBUTECOMMAND', d)
7 }
8
9 addtask distribute_packages before do_build after do_fetch
10
11 PKG_DIST_LOCAL ?= "symlink"
12 PKG_DISTRIBUTEDIR ?= "${DEPLOY_DIR}/packages"
13
14 PKG_DISTRIBUTECOMMAND () {
15         p=`dirname ${FILE}`
16         d=`basename $p`
17         mkdir -p ${PKG_DISTRIBUTEDIR}
18         case "${PKG_DIST_LOCAL}" in
19                 copy)
20                         # use this weird tar command to copy because we want to 
21                         # exclude the BitKeeper directories
22                         test -e ${PKG_DISTRIBUTEDIR}/${d} || mkdir ${PKG_DISTRIBUTEDIR}/${d};
23                         (cd ${p}; tar -c --exclude SCCS -f - . ) | tar -C ${PKG_DISTRIBUTEDIR}/${d} -xpf -
24                         ;;
25                 symlink)
26                         ln -sf $p ${PKG_DISTRIBUTEDIR}/
27                         ;;
28         esac
29 }