Age | Commit message (Collapse) | Author | Files |
|
As the standard for LICENSE format is not well defined, we
may well run into issues where LICENSE cannot be parsed via
ast. In cases like this, we need to warn and continue.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This commit requires 4a13766c7b223d as it removes the exclusion
of deb package types from license manifest creation.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
bashism in create_license_manifest removed.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Implement the functions required for buildhistory to be able to query
installed packages, get dependencies etc. for deb-based images.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
emite_package_data needs to have LICENSE, as pkgdata is as an
audit of licenses collected during do_populate_license.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
|
|
This is a fairly large commit, so I want to step through some of
what this accomplishes:
1. Additional licenses
I've added/modified/corrected some of the common licenses
within OE-core in prep. for a major license audit. Most of these
are in SPDX format. A few, there is no OSI equivalent.
2. Additional SPDX mappings
I've added some additional SPDX mappings to account for removing
some duplicate licenses. (ie GPL-2 and GPL-2.0 were the same)
I've also remapped a few things to more accurately reflect what
they should be pointing at.
Note: Artistic/LGPL/GPL/MPL. Quite a few LICENSE fields list these
licenses. They make no sense and need auditing. In a future commit
I have some fixes to particularly egregious LICENSE fields, but
a full audit should be done. I've listed to obvious candidates at:
https://wiki.yoctoproject.org/wiki/License_Audit
3. License manifest
We now have a license manifest generation that occurs in rootfs for
everything BUT .deb. This requires the changes Paul Eggleton has
done to rootfs_* particularly the list_installed_packages function.
The manifest is accurate during a parallel bitbake now (Weee!) and
is prime for my planned SPDX format manifest during the next period.
4. License manifest on image.
We also want the ability to add licenses to the image. This
functionality is also in base-files and will be stripped out in my
next commit. The manifest is not added by default and is a two var
setting in license.conf:
If I want *just* the manifest on the image (small) then I set:
COPY_LIC_MANIFEST = "1"
This copies the manifest to:
/usr/share/common-licenses/license.manifest
If I want the actual PKG license text on the image (much larger)
I need to set both both COPY_LIC_MANIFEST and COPY_LIC_DIRS in
license.conf. This will create:
/usr/share/common-licenses/(package name)/(licenses in LIC_SRC_URI)
Word of warning. This can be larger than wanted depending on image
and is probably ripe for linking licenses, but I ran out of time this
week to get that done.
5. Custom License search path.
We now have the ability to add licenses to the build without touching
common-licenses. This is set via license.conf:
LICENSE_PATH += "/path/to/custom/licenses"
You want to make sure the license is unique. license.bbclass picks the
first license it finds.
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
|
|
Deploys sources for recipes for compliance with copyleft-style licenses
Defaults to using symlinks, as it's a quick operation, and one can easily
follow the links when making use of the files (e.g. tar with the -h arg).
By default, includes all GPL and LGPL, and excludes CLOSED and Proprietary.
Signed-off-by: Christopher Larson <kergoth@gmail.com>
|
|
In addition to moving this functionality to oe.license, makes the string
preparation more picky before passing it off to the ast compilation. This
ensures that LICENSE entries like 'GPL/BSD' are seen as invalid (due to the
presence of the unsupported '/').
Signed-off-by: Christopher Larson <kergoth@gmail.com>
|
|
We need pseudo to use the rootfs passwd/group files belonging to the
rootfs when building images. This patch ensures that we use the rootfs
files instead of those in the sysroot which can lead to incorrect file
ownership issues.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Add '-n' to suppress cleanmarker nodes since jffs2
* is usually used for NAND flash and the cleanmarkers are created in
* the OOB area by flash_eraseall -j
*
* From man pages: -n, --no-cleanmarkers
* Do not write cleanmarker nodes to the beginning of each erase block.
* This option can be useful for creating JFFS2 images for use on NAND flash,
* and for creating images which are to be used on a variety of hardware with differing eraseblock sizes.
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
|
|
* Building the jffs2 filesystem to include summary information speeds up
* the mount process considerably at the cost of increased size.
* The rate of speedup is generally higher on NAND chips and on the chips
* where the erase block size is large.
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
|
|
this feature was present in OE-classic, is documented in OE-core
but its implementation is actually missing.
The present implementation is directly copied from OE-classic
and tested on an arm926 machine.
Signed-off-by: Eric Bénard <eric@eukrea.com>
|
|
This fixes the issue below:
| Generating solve db for /local/home/mattsm/git/poky/build_p4080ds_release/tmp/deploy/rpm/all...
| total: 1 0.000000 MB 0.093784 secs
| fingerprint: 9 0.000012 MB 0.000252 secs
| install: 3 0.000000 MB 0.039092 secs
| dbadd: 3 0.000000 MB 0.034837 secs
| dbget: 12 0.000000 MB 0.000062 secs
| dbput: 3 0.009532 MB 0.002731 secs
| readhdr: 31 0.019160 MB 0.000084 secs
| hdrload: 15 0.027924 MB 0.000116 secs
| hdrget: 494 0.000000 MB 0.000691 secs
| Processing task-core-standalone-sdk-target...
| Processing glib-2.0...
| Unable to find package glib-2.0 (glib-2.0)!
| ERROR: Function 'do_populate_sdk' failed (see /local/home/mattsm/git/poky/build_p4080ds_release/tmp/work/ppce500mc-fsl-linux/fsl-toolchain-1.0-r6/temp/log.do_populate_sdk.16975 for further information)
If you have:
TOOLCHAIN_TARGET_TASK += "glib-2.0"
The package name was not getting remapped correctly for the do_populate_sdk
case.
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
diff churn when relocating TMPDIR
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Some recipes,like rt-tests,clutter-box2d,iproute2,didn't declare upstream protocal, but in distrodata.bbclass, we use rsync as the default protocal,
this will lead an error when checking upstream version.
Change default protocal from rsync to git in distrodata.bbclass.
Signed-off-by: Mei Lei <lei.mei@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Disable storing package history as version named files unless
BUILDHISTORY_KEEP_VERSIONS is set to 1; otherwise the adds of these
files that duplicate what is already in git anyway is just noise in the
git log.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Include package history collection from packagehistory.bbclass (thus
superseding it). The only change is to store package history under
BUILDHISTORY_DIR/packages and rename one of the functions.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Create a new build output history reporting class, using testlab.bbclass
from meta-oe as a base. This records information from images produced by
the build process in text files structured suitably for tracking within
a git repository, thus enabling monitoring of changes over time.
Build history collection can be enabled simply by adding the following
to your local.conf:
INHERIT += "buildhistory"
The output after a build can then be found in BUILDHISTORY_DIR (defaults to
TMPDIR/buildhistory). If you set up this directory as a git repository and
set BUILDHISTORY_COMMIT to "1" in local.conf, the build history data will
be committed on every build.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
* Replace use of BASEPKG_TARGET_SYS which is no longer available
* Replace use of bb.data.getVar(...,d) with d.getVar(...)
* Change the file structure - use single files within PN/package subdirs
rather than having a subdir level for each part of the version. There
is a set of files for each recipe and for each package in directories
underneath.
* Record more information - PACKAGES, DEPENDS, RDEPENDS, RRECOMMENDS,
FILES, and the total size and a complete list of the packaged files.
* Record the values in simple text format. The "latest" file, rather
than a symlink has been changed to a copy of the latest file so that
if it is tracked in a VCS repository (e.g. git) you can compare it
easily to the previous version.
Implements [YOCTO #1565].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The syslinux and grub-efi classes were generating config files in the current
working directory. This caused a failure due to a race in the creation of the
directories leading to cwd changing and the build failing to find the config
files. While this has been addressed in bitbake, it is better to use an
explicit path.
While ${WORKDIR} may seem a more appropriate place, the recipe
already uses ${S} for the "hdd" and "cd" construction, so we use ${S}
here to keep things consolidated and consistent and address the issue
with minimal change.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
When creating a minimal config or creating a hard baseline for
incremental changes, it is often desired to disable all kernel
options and then begin building and enabling only what is required.
To support this workflow, a new variable KCONFIG_MODE is introduced
to contain a hint to the kernel configuration about how the kernel
config should be produced. This variable is passed directly to lkc
when it is invoked during configuration, so the contents of the
variable must be a valid option for the kernel config build.
Additionally, when a defconfig is detected, allnoconfig is enabled
as the default operation, unless otherwise specified by KCONFIG_MODE.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
This reverts commit 508ff624fea705eb93cf2cc1e0c9c42cb817acf8. RP
accidentally pulled the wrong commit in, it was supposed to be a
*package*history bbclass change.
|
|
Create a new build output history reporting class, using testlab.bbclass
from meta-oe and packagehistory.bbclass as a base. This records information
from packages and images output from the build process in text files
structured suitably for tracking within a git repository, thus enabling
monitoring of changes over time.
Build history collection can be enabled simply by adding the following
to your local.conf:
INHERIT += "buildhistory"
The output after a build can then be found in BUILDHISTORY_DIR (defaults to
TMPDIR/buildhistory). If you set up this directory as a git repository and
set BUILDHISTORY_COMMIT to "1" in local.conf, the build history data will
be committed on every build.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Split out a new function get_layers_branch_rev() which returns a list
of the metadata layers and their revisions. This enables reuse in other
places, such as buildhistory.bbclass.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Based on suggestions from RP
libc-uclibc and libc-glibc overrides are for denoting
system C library in use on the target and not for the
host therefore we make sure that the override only takes
effect for target recipes only.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If the configure script isn't found, report the explicit path tried.
This can help debug subtle errors where the ${S} sourcedir may not
be exactly what is expected.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Condition building PCBIOS legacy images on MACHINE_FEATURES containing "pcbios"
or not containing "efi". This ensures existing BSPs will continue to get the
old PCBIOS legacy-only images. New BSPs can add "efi", "pcbios", or both. The
images created likewise support one or the other or both.
EFI-only ISO images are untested.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
|
|
Create a new grub-efi.bbclass and integrate it into bootimg alongside the
syslinux support. This new class uses the output from the grub-efi-native
recipe. Thanks goes to Josef Ahmad <josef.ahmad@intel.com> for the original
build_grub_cfg() routine.
The EFI features are only added to the image if MACHINE_FEATURES contains
"efi". The resulting images are therefor either legacy boot only (like they
were originally) or legacy boot and EFI boot.
A new "dummy.bbclass" was added to allow for the conditional include
of grub-efi. This makes it so if efi support is not to be built in, we
don't spend time building grub-efi-native just because the include adds
the dependency.
There is a bug in the mkdosfs tool from the dosfstools package which causes
it to crash when the directory passed with the -d parameter contains
sub-directories. An /EFI/BOOT directory is required for a proper EFI
installation. Until it is fixed, we install to the top level directory
for the hddimg.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Josef Ahmad <josef.ahmad@intel.com>
|
|
Working towards a more generic bootimg.bbclass, pull out all
syslinux specific bits and let syslinux.bbclass manage them
directly. This introduces no functional changes to the images
constructed and the behavior remains unchanged.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
|
|
Separate the construction of the ISO image from that of the hddimg.
This is part of the groundwork for creating a much more flexible
live image builder.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
|
|
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This class currently only works with eglibc. Since
it adds dependencies explicitly on eglibc when using
uclibc this creates problems. So we make sure that
it checks for TCLIBC to determine system C library
in use
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Complete the bb.data.getVar/setVar replacements with accesses
directly to the data store object.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The method of resolving the patch should not effect the sstate-cache
signature.
Signed-off-by: Matthew McClintock <msm@freescale.com>
|
|
If we just use print, the bitbake logging functions don't see the message
and it can get lost if bitbake is for example logging messages to disk.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Without these changes, gconf will use the hardcoded backend directory meaning
we can see errors when building if the binary was relocated.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The gconf .m4 files use the path encoded into the gconf-native tools
by default to populate this variable. This doesn't work if we're
relocating the gconf-native binaries. By setting this variable we
ensure that the m4 files always pick up the correct path.
This fixes errors seen on the yocto autobuilder.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Since we clean out do_populate_sysroot if do_configure runs, don't
allow do_populate_sysroot_setscene functions if we're going to
run do_configure.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If rpm-native was built in an alternative location, it may not relocate correctly
unless the rpmpopt and macros paths are explicitly specified.
This fixes errors seen on the Yocto autobuilder where pkgconfig
"provides" entries could disappear leading to image dependency failures.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* ensure update-mime-database is not called during build time
* this patch was included in meta-oe [1] about the same time when mime.bbclass
was migrated from meta-oe -> oe-core so it seems it got lost.
* tests: build from scratch / run on overo / additional check: no unpacked
files for gnome-control-center
[1] http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/classes?id=6b765989a42ab314d1611f4dec78b07b562a9e7d
Signed-off-by: Andreas Müller <schnitzeltony@gmx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
debugdir
* relative links for elf files like ../foo.so ends up in the
debugdir with ../.debug/foo.so, this causes infinite fileaccessloops
fix it by adding an extra "../" to the link path
Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Without this change we can end up looking for <stamp>.${MACHINE}
instead of the expected expanded value.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Without this change, dbus-native can end up depending upon base-passwd
for example. This change mirrors the existing nativesdk code.
Based on a patch from Henning Heinold <heinold@inf.fu-berlin.de>
but with some additions from me.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
It's possible to create an "hybrid" iso image that you can both burn
to a CD-Rom and dd to a USB key. isohybrid will create a valid boot
sector for the USB key case.
[YOCTO #1763]
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If PACKAGE_CLASSES does not set package_rpm as the first item, the root filesystem
will not be generated based on rpm. We need remove rpm/zypper tests against
non-rpm filesystem.
[YOCTO #1757]
Signed-off-by: Jiajun Xu <jiajun.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|