From: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: [PATCH 1/1] distribute_license: added class to copy license files
Date: Thu, 29 Jul 2010 22:55:04 +0200 [thread overview]
Message-ID: <20100729205504.GE29814@mx.loc> (raw)
In-Reply-To: <1280415061-28353-1-git-send-email-chase.maupin@ti.com>
On Thu, Jul 29, 2010 at 09:51:01AM -0500, Chase Maupin wrote:
>* This class can be used to copy license files from package
> sources into the deploy directory so they can be distributed.
>* By default it searches the top-level source directory for
> files matching COPYING* or LICENSE*
>* Search depth and pattern can be modified using the
> LICENSE_SEARCH_DEPTH and LICENSE_FILES variables
> respectively.
>
>Signed-off-by: Chase Maupin <chase.maupin@ti.com>
>---
> classes/distribute_license.bbclass | 56 ++++++++++++++++++++++++++++++++++++
> 1 files changed, 56 insertions(+), 0 deletions(-)
> create mode 100644 classes/distribute_license.bbclass
>
>diff --git a/classes/distribute_license.bbclass b/classes/distribute_license.bbclass
>new file mode 100644
>index 0000000..795a404
>--- /dev/null
>+++ b/classes/distribute_license.bbclass
>@@ -0,0 +1,56 @@
>+# distribute-license.bbclass will search the sources of a package to
>+# a given depth looking for a match to the specified pattern and if
>+# found will copy the matching file(s) to the deploy directory.
>+#
>+# This class is used to collect license files such as COPYING or
>+# LICENSE where they are found and save them per package.
>+#
>+# This package uses the following variables to control its operations:
>+# - LICENSE_FILES = Pattern of license files to be searched for.
>+# By default this is COPYING* and LICENSE* but
>+# this can be changed per package.
>+# - LICENSE_SEARCH_DEPTH = The maximum depth to search in the package
>+# sources for files matching the LICENSE_FILES
>+# pattern.
>+
>+
>+# Files to copy for the licensing. By default this is looking for
>+# files following the patters COPYING* or LICENSING* in the top
>+# level sources directory.
>+LICENSE_FILES ?= "COPYING* LICENSE*"
>+
>+# Maximum depth to look for license files
>+LICENSE_SEARCH_DEPTH ?= "1"
>+
>+distribute_license_do_copy_license() {
>+ # Change directory to source directory
>+ cd ${S}
>+
>+ # Turn of globbing so that wildcards are not expanded in for loop
/s/of/off/
>+ set -f
hush: set: -f: invalid option
>+
>+ # Check if LICENSE_FILES exist. If so copy them to DEPLOY_DIR
>+ for lic in ${LICENSE_FILES}
>+ do
>+ res=""
superfluous
>+ res=`find . -maxdepth ${LICENSE_SEARCH_DEPTH} -name "$lic"`
>+ if [ "$res" != "" ]
breaks on older test(1) impls that don't handle empty strings properly.
Could be that this one is moot by now though.
>+ then
>+ mkdir -p ${DEPLOY_DIR}/licenses/${PN}
>+ cp $res ${DEPLOY_DIR}/licenses/${PN}
install -D ${DEPLOY_DIR}/licenses/${PN} ${DEPLOY_DIR}/licenses/${PN}
>+ fi
>+ done
>+
>+ # Turn globbing back on
>+ set +f
hush: set: +f: invalid option
>+
>+ # Just to be clean change directory back to where we started from.
>+ cd -
>+}
What's the reason you don't do that in python instead?
Just curious as it would save quite some potential hazzle..
>+
>+EXPORT_FUNCTIONS do_copy_license
>+
>+# Put after do_patch in case a patch adds the license files
>+do_copy_license[deptask] = "do_patch"
>+
>+addtask copy_license after do_patch before do_configure
>--
>1.7.0.4
someone should bump git to 1.7.2, a BBCLASSEXTENDEDed version seems to
work for me ...
next prev parent reply other threads:[~2010-07-29 20:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-29 14:51 [PATCH 1/1] distribute_license: added class to copy license files Chase Maupin
2010-07-29 20:55 ` Bernhard Reutner-Fischer [this message]
2010-07-29 21:46 ` Maupin, Chase
2010-07-30 7:57 ` Bernhard Reutner-Fischer
2010-07-30 8:10 ` David Kozub
2010-07-30 6:48 ` Koen Kooi
2010-08-02 14:11 ` Marc Olzheim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100729205504.GE29814@mx.loc \
--to=rep.dot.nop@gmail.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.