diff options
| author | Frans Meulenbroeks <fransmeulenbroeks@yahoo.com> | 2005-11-05 21:50:06 +0000 |
|---|---|---|
| committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-11-05 21:50:06 +0000 |
| commit | 594cd366a214b9ea8f7ed52eb7f4635a393f48a5 (patch) | |
| tree | d0d22e466d06421e9972cd9027569b54924b18d3 /classes/pkg_distribute.bbclass | |
| parent | 7adabd7dffa510d614b4a681c912909b354c1ed6 (diff) | |
| parent | 3eeaa7051df89f3241f6420d22aa919001376e39 (diff) | |
merge of 21d66a92293faf76a506c7d17e3cd16e143bb401
and 70f8ac179abbb777f1bec20edf02530820b33e92
Diffstat (limited to 'classes/pkg_distribute.bbclass')
| -rw-r--r-- | classes/pkg_distribute.bbclass | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/classes/pkg_distribute.bbclass b/classes/pkg_distribute.bbclass new file mode 100644 index 0000000000..81978e3e3b --- /dev/null +++ b/classes/pkg_distribute.bbclass @@ -0,0 +1,29 @@ +PKG_DISTRIBUTECOMMAND[func] = "1" +python do_distribute_packages () { + cmd = bb.data.getVar('PKG_DISTRIBUTECOMMAND', d, 1) + if not cmd: + raise bb.build.FuncFailed("Unable to distribute packages, PKG_DISTRIBUTECOMMAND not defined") + bb.build.exec_func('PKG_DISTRIBUTECOMMAND', d) +} + +addtask distribute_packages before do_build after do_fetch + +PKG_DIST_LOCAL ?= "symlink" +PKG_DISTRIBUTEDIR ?= "${DEPLOY_DIR}/packages" + +PKG_DISTRIBUTECOMMAND () { + p=`dirname ${FILE}` + d=`basename $p` + mkdir -p ${PKG_DISTRIBUTEDIR} + case "${PKG_DIST_LOCAL}" in + copy) + # use this weird tar command to copy because we want to + # exclude the BitKeeper directories + test -e ${PKG_DISTRIBUTEDIR}/${d} || mkdir ${PKG_DISTRIBUTEDIR}/${d}; + (cd ${p}; tar -c --exclude SCCS -f - . ) | tar -C ${PKG_DISTRIBUTEDIR}/${d} -xpf - + ;; + symlink) + ln -sf $p ${PKG_DISTRIBUTEDIR}/ + ;; + esac +} |
