diff options
author | Scott Rifenbark <srifenbark@gmail.com> | 2016-09-26 08:51:42 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-09-28 15:02:33 +0100 |
commit | b064c34f12877e0e5ec9d9633b684cf0e218aa60 (patch) | |
tree | 7302686925ad323ab23a5bfad28df41a606684f8 /documentation | |
parent | 2199b68fc88cd7f34fda7ad49bd50ca5176e0f5b (diff) | |
download | poky-b064c34f12877e0e5ec9d9633b684cf0e218aa60.tar.gz |
dev-manual: Updated the example to identify GPL files.
Fixes [YOCTO #10323]
In the Providing the Source Code section, I replaced the 3-line
code example that returns GPL files. The bits I put in are a
script that does the trick. The 3-line example was not working.
(From yocto-docs rev: a07873d46b5135555961499c6ce8f0b6b8bf2c8f)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/dev-manual/dev-manual-common-tasks.xml | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 4cdd805cec..f846dacf2e 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml | |||
@@ -10591,12 +10591,31 @@ | |||
10591 | tarballs for licenses that require the release of | 10591 | tarballs for licenses that require the release of |
10592 | source. | 10592 | source. |
10593 | Let us assume you are only concerned with GPL code as | 10593 | Let us assume you are only concerned with GPL code as |
10594 | identified with the following: | 10594 | identified by running the following script: |
10595 | <literallayout class='monospaced'> | 10595 | <literallayout class='monospaced'> |
10596 | $ cd poky/build/tmp/deploy/sources | 10596 | # Script to archive a subset of packages matching specific license(s) |
10597 | $ mkdir ~/gpl_source_release | 10597 | # Source and license files are copied into sub folders of package folder |
10598 | $ for dir in */*GPL*; do cp -r $dir ~/gpl_source_release; done | 10598 | # Must be run from build folder |
10599 | </literallayout> | 10599 | #!/bin/bash |
10600 | src_release_dir="source-release" | ||
10601 | mkdir -p $src_release_dir | ||
10602 | for a in tmp/deploy/sources/*; do | ||
10603 | for d in $a/*; do | ||
10604 | # Get package name from path | ||
10605 | p=`basename $d` | ||
10606 | p=${p%-*} | ||
10607 | p=${p%-*} | ||
10608 | # Only archive GPL packages (update *GPL* regex for your license check) | ||
10609 | numfiles=`ls tmp/deploy/licenses/$p/*GPL* 2> /dev/null | wc -l` | ||
10610 | if [ $numfiles -gt 1 ]; then | ||
10611 | echo Archiving $p | ||
10612 | mkdir -p $src_release_dir/$p/source | ||
10613 | cp $d/* $src_release_dir/$p/source 2> /dev/null | ||
10614 | mkdir -p $src_release_dir/$p/license | ||
10615 | cp tmp/deploy/licenses/$p/* source-release/$p/license 2> /dev/null | ||
10616 | fi | ||
10617 | done | ||
10618 | done </literallayout> | ||
10600 | At this point, you could create a tarball from the | 10619 | At this point, you could create a tarball from the |
10601 | <filename>gpl_source_release</filename> directory and | 10620 | <filename>gpl_source_release</filename> directory and |
10602 | provide that to the end user. | 10621 | provide that to the end user. |