Commit Graph

1123 Commits

Author SHA1 Message Date
Richard Purdie 770f832a0d buildstats.bbclass: Save ended time in TaskFinished events
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-15 19:34:13 +00:00
Richard Purdie a824232c44 buildstats: Disable uname subprocess call for now since it appears to be breaking runqueue somehow
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-15 11:51:28 +00:00
Beth Flanagan 411056041b Buildstats commit: buildstats.bbclass
Used to track some basic build metrics by build and task/event level.

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
2011-02-15 09:59:51 +00:00
Saul Wold e95ab29d3b kernel.bbclass: add approproate X Environment variables to allow xterm to start
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-02-14 05:33:19 -08:00
Mark Hatle 6f6bffe5df package.bbclass: Breakout the strip from the populate_packages
Break out the file split/strip from the populate_packages.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-12 00:30:29 +00:00
Richard Purdie 293b023361 mirrors.bbclass: Ensure we don't overwrite any existing MIRRORS variable
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-11 23:50:46 +00:00
Zhai Edwin 49a18f1748 sstate: Fix bugs after new fetcher
Current sstate's fetch code doesn't reflect latest fetcher changes, so old
fetch style cause exception and fail silently.

[BUGID #708] got fixed.

Another issue is "import xxx" in python function from sstate.bbclass can only
sit in the head of the function, else have UnboundLocalError: "local variable
XXX referenced before assignment".

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
2011-02-11 14:07:49 +00:00
Richard Purdie 96aeec41bc meta: Update mirror urls to new format and update yocto project urls
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-11 12:04:12 +00:00
Saul Wold 14dea89521 fetch2: Correct the clean() mechanism for the fetcher2 code
This create a clean() method in each of the fetcher modules
and correctly cleans the .done stamp file and lock files

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-02-10 23:49:25 +00:00
Richard Purdie 5cac571791 rm_work.bbclass: Fix typo for package task directory preservation
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-10 12:21:37 +00:00
Richard Purdie d1a1635a45 package.bbclass: Only set recrdeptask for do_build if packaging is enabled for the recipe
Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
2011-02-10 12:01:04 +00:00
Richard Purdie 388a92bb7c debian.bbclass: Only set rdeptask for do_package if packaging is enabled
Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
2011-02-10 12:01:04 +00:00
Richard Purdie 296866c38e image-swab: Convert to attach strace to the process to obtain the required swabber data
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-10 11:51:48 +00:00
Mark Hatle d3d236b2bf Misc hard link fixes
I searched the various classes and looked for copies that should attempt to
preserve hardlinks.  This fixes the majority of this copies by switching to
using tar as the copy method.  It also has the side effect of preserving sparse
files.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-09 22:46:30 +00:00
Mark Hatle 3e6d91ece0 package.bbclass: Preserve hard links!
Hard links were not being preserved in the move from the install image
-> package copy.  Again they were being discarded in the package ->
packages-split copy as well.

By preserving the hard links we have the potential to save a ton of rootfs
space.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-09 22:46:30 +00:00
Nitin A Kamble 068417289a image-mklibs.bbclass: add the library optimization functionality
If you want to enable the mklibs library size optimization for your image
then, edit the MKLIBS_OPTIMIZED_IMAGES line in the local.conf like this:

  MKLIBS_OPTIMIZED_IMAGES ?= "poky-image-minimal your-own-image"

Also this will enable the mklibs library size optimization for all images.

  MKLIBS_OPTIMIZED_IMAGES ?= "all"

on qemux86 machine this reduced the rootfs size of poky image-minimal
image from 7.9MB to 7.2MB. That is around 11% image foot print reduction.
That image had 38 elf executables. Generally the size optimization by
mklibs is reversely proportional to the number of elf executables in the
rootfs. So bigger images will see less optimization, and smaller images
will see large image size reductions.

Thanks to mark hatle for his help in implementation of this.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2011-02-09 22:45:47 +00:00
Darren Hart ba163a4378 kernel.bbclass: use defconfig if it exists
It is common enough to want to apply a defconfig if the inheriting
recipe provides it. If the file exists in the $WORKDIR, copy it
over to ${S}/.config provided the target does not already exist.

This allows for recipes derived from kernel.bbclass to manage the
.config on their own, such as linux.inc.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
2011-02-09 22:44:52 +00:00
Bruce Ashfield 9ce72c28bb linux-yocto: streamline BSP bootstrapping
In order to build BSPs that were not already integrated into
the upstream linux yocto kernel AND keep the git fetcher happy,
some fairly complex anonymous python sections were required.

These sections cause problems with variable expansion and SRCREV
processing.

With the updated git fetcher code, we can streamline the BSP
boostrapping process and drop 99% of the anonymous python code.

This commit has the following changes to support BSP boot strapping
and simplication for existing BSPs.

   - KMETA is set per-recipe rather than in python code
   - undefined machines are no longer used, but instead common
     branch names are set per-recipe
   - fallback machine SRCREVs are present in the default revisions
     file
   - A new variable YOCTO_KERNEL_EXTERNAL_BRANCH should be set in
     the local.conf for new BSPs instead of being programatically
     determined in the anonymous python.
   - No more explicity KMACHINE variable expansion and manipulation,
     since the tools and build phases no longer require it due
     to the per-recipe fallbacks.

Integrated/merged BSPs are unaffected by the changes and have been
regression tested.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>

foo

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-09 11:11:07 +00:00
Mark Hatle 2f3a7348b7 insane.bbclass: Fix config.log error message
[BUG #702]

The previous error message was confusing.  It was looking for both library and
include host contamination, but the message only indicated include files.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-08 17:53:15 +00:00
Richard Purdie 65712be736 kernel-yocto: Ensure python code has awlays run before SRCPV is expanded
The python code in this class file needs to run before SRCPV is expanded
and calls into the fetcher are made. To so this we create a python function
and prepend a call to it before SRCPV's get_srcrev() call.

Ugly, ugly, ugly but the ordering is guaranteed.

If this doesn't happen, the fetcher can end up in two different states and
there may be caching implications of this.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-08 12:05:36 +00:00
Richard Purdie bd2fd821a3 kernel-yocto/poky-default-revisions: Ensure SRCREV_machine is set for the kernels
If we don't do this and try to bring up a new machine we can trigger network
access to resolve the branch name to a revision which is undesireable.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-08 12:05:36 +00:00
Richard Purdie af6480bdde distrodata: Update to new fetcher API
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 10:23:01 +00:00
Richard Purdie fbebb9a9cd utility-tasks: Update checkuri to new fetcher API
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 10:16:00 +00:00
Richard Purdie 32dbc70e86 kernel-yocto: 'standard' isn't a valid git branch name for a SRCREV, fix
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 09:32:44 +00:00
Richard Purdie 984e90f4d7 meta/classes: Update classes to use new fetcher API
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 09:06:37 +00:00
Richard Purdie 604037de4b base.bbclass: Update after fetcher changes
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 09:06:35 +00:00
Richard Purdie 51d7e314f8 package.bbclass: Optimise file dependency calculations to ignore locales and kernel modules as these never have dependencies we'd detect anyway
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-03 20:18:52 +00:00
Mark Hatle 8a52fda62f bitbake.conf & package.bbclass: Use default SUMMARY and DESCRIPTION
A new default SUMMARY and DESCRIPTION was defined for any package that
previously did not contain one.  This value is based on the original
SUMMARY_${PN} value.

The new default SUMMARY and DESCRIPTION is used as a basis for all of
the automatic summary and descriptions for the various package splits,
include ${PN}, ${PN}-dbg, ${PN}-dev, ${PN}-doc, and locales.

A recipe may also override any of the automatic summaries by simply
specifying the value.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-03 11:48:48 -08:00
Richard Purdie 9b2fd4b0fe license.bbclass: Add coverage by sstate code (also use cleandirs and dirs task attribures for directory handling)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-03 12:33:18 +00:00
Richard Purdie 1a559cbcca rm_work: Retain package and package-split directories to be consistent with sstate code
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-03 11:34:04 +00:00
Richard Purdie 4b793fff8e rootrs_rpm.bbclass: Disable createrepo for now due to this error:
| + createrepo /media/build2/builds/rptest/b4/tmp/deploy/rpm
| Traceback (most recent call last):
|   File "/media/build2/builds/rptest/b4/tmp/sysroots/x86_64-linux/usr/share/createrepo/genpkgmetadata.py", line 26, in <module>
|     import rpm
| ImportError: No module named rpm

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-03 11:24:19 +00:00
Richard Purdie 8b5b3cca7d linux-yocto/linux-libc-headers-yocto: Adjust to git fetcher improvements
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-02 17:19:18 +00:00
Richard Purdie d1ed188123 autotools.bbclass: Drop info directory listings as they're going to be broken if generated at this point and cause file conflicts
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-02 16:56:24 +00:00
Richard Purdie 95f13b1687 package.bbclass: Ensure SUMMARY is written to pkgdata as well as DESCRIPTION
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-02 14:44:37 +00:00
Bruce Ashfield 95366e44c9 linux-yocto: export kernel configuration audit to the console
Fixes [BUGID #692]

Previously the information dumped by the kernel configuration audit
scripts was only placed in log files. This isn't as useful as it
could be, since they are rarely checked. This change takes the
output from kconf_check and explicitly displays it to the user.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-01 23:59:43 +00:00
Mei Lei ba06cc8943 distrodata.bbclass: Imporve the checkpkg task more precisely and generate data for pkg-report-system
Imporve some regular expression when checking recipes' upstream version, reduce the number of invalid recipes' upstream version and imporve the precision
Generate some data for package report system.

Signed-off-by: Mei Lei<lei.mei@intel.com>
2011-02-01 23:59:38 +00:00
Lianhao Lu d22b4357c9 populate_sdk.bbclass/meta-toolchain: Made populate_sdk task more generic
Move the populate_sdk task out of meta-toolchain. Made it more generic
to support rpm/deb package format.

This commit is dependant on a series of commit:
2ea0406e4516fc59dff86cb4adc35c82cb774c2f
7ffa45b7cfea24dae1b51f40cfc807bf78b21b66
bf201a74c243942af3fcae6f174496bdd819dbc0
3d29933f2925efe8a84f10efdf50396031c33ae4
3d29933f2925efe8a84f10efdf50396031c33ae4
9c724dbf57e610a9e06bbdce38383dee3ac49281

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:38 +00:00
Lianhao Lu 63e220c1e8 populate_sdk_ipk.bbclass: Added ipk support in populate_sdk task.
This is a preparation commit for adding ipk support in populate_sdk
task.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:38 +00:00
Lianhao Lu 5571753a5d populate_sdk_deb.bbclass: Added deb support for populate_sdk task.
This is a preparation commit for adding deb support in populate_sdk
task.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:38 +00:00
Lianhao Lu 8b6626abbf populate_sdk_rpm.bbclass: Added rpm support for populate_sdk task.
This is preparation commit to support using rpm in populate_sdk task.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:38 +00:00
Lianhao Lu 382075a9c2 rootfs_rpm/package_rpm.bbclass: Move func from rootfs_rpm to package_rpm
package_deb.bbclass:
1. Modified package_update_index_rpm() and package_generate_rpm_conf()
to generate sperate depsolver db and rpm configuration, for target
packages and host packages respectively.

2. Added new function package_install_internal_rpm() to install a list
deb packages to a specified root directory, with the specified package
architecutre information.

3. Added new function resolve_package_rpm() to resolve package names to
filepaths.

rootfs_deb.bbclass:
Used the above new functions to install the rootfs.

[sgw: merged changes for createrepo]
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-02-01 23:59:37 +00:00
Lianhao Lu b94f9ccd05 rootfs_ipk/package_ipk.bbclass: Move func from rootfs_ipk to package_ipk
package_ipk.bbclass:
Added new function package_install_internal_ipk() to install a list of
ipk packages to a specified root directory, with the specified package
architecutre information.

rootfs_ipk.bbclass:
Used the above new functions to install rootfs.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:37 +00:00
Lianhao Lu f23e67f172 rootfs_deb/package_deb.bbclass: move func from rootfs_deb to package_deb
package_deb.bbclass:
1. Added new function package_update_index_deb() to generate package
index files.

2. Added new function package_install_internal_deb() to install a list
deb packages to a specified root directory, with the specified package
architecutre information.

rootfs_deb.bbclass:
Used the above new functions to install the rootfs.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-02-01 23:59:37 +00:00
Paul Eggleton c75ad4694c package.bbclass: add nodeprrecs flag to RRECOMMENDS_pkgname
Setting this flag disables the normal additions to RRECOMMENDS for a package
(useful when splitting dev / dbg packages).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-02-01 16:26:03 +00:00
Paul Eggleton 7263adda21 qt4: add qt4-embedded 4.6.3 from meta-openembedded
Changes from the meta-openembedded version:
* Change the order of includes so that embedded takes precedence (ensuring
  SRC_URI additions from qt-embedded.inc work)
* Specify -embedded in qt-embedded.inc
* Remove SRC_URI and S which should come from qt-${PV}.inc
* Remove QT_DIR_NAME and QT_LIBINFIX as these come from qt4e.bbclass
* Correct LICENSE
* Set DESCRIPTION instead of SUMMARY as SUMMARY will inherit by default
* Add qthelp-lib-qtclucene.patch (required to build)
* Whitespace fixes

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-02-01 16:10:11 +00:00
Paul Eggleton c5998e6def qt4: Bring in improvements from meta-openembedded
Differences from meta-openembedded version:
* SRC_URI and S now come from qt-${PV}.inc since these are version specific
* Source checksums are also now in qt-${PV}.inc
* Remove do_compile as this is handled in qt-${PV}.inc
* Move contents of do_install_append from qt-${PV}.inc to do_install in
  qt4.inc as this is the same for 4.6.3 and 4.7.1 and will get in the way of
  do_install_append in qt-embedded.inc.
* Don't enable PostgreSQL, MySQL or SQLite 2.x plugins as we don't currently
  have recipes for these DBMSs in Poky. These can be re-enabled easily when
  or if we do.
* Use INC_PR in qt4-x11-free_4.6.3.bb
* Don't always specify -embedded config option in qt4.inc
* Don't add qte.sh to SRC_URI in qt-4.6.3.inc (this is embedded-specific)

Differences from what we have currently in Poky (plus the above):
* Set DESCRIPTION based on embedded/X11
* Move out arch-specific settings to qt4-arch.inc
* Add qt4x11.bbclass which can be inherited by application recipes to select
  the X11 version (this makes more sense once the embedded version is added).
* Update HOMEPAGE

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-02-01 15:57:26 +00:00
Richard Purdie 2d9cc7ec31 kernel.bbclass: Add fix from OE.dev for tmpnam() usage
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-01 12:27:20 +00:00
Lianhao Lu 5b7e96d852 image/package_xx/rootfs_xx.bbclass: move rootfs_xx_log_check().
Move function rootfs_xx_log_check() from rootfs_xx.bbclass to relevant
package_xx.bbclass. (Where xx is rpm/ipk/deb).

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-01-31 16:58:15 +00:00
Richard Purdie eed008baf2 package.bbclass: Disable EXPORT_FUNCTIONS for do_package
As discovered by Lianhao Lu and Kevin Tian:
"""
do_package checksum changes with switching the order In PACKAGE_CLASSES, e.g:

From
PACKAGE_CLASSES = "package_rpm package_ipk"
To
PACKAGE_CLASSES = "package_ipk package_rpm"

This is undesired since the order only matters for final rootfs generation. The actual
cause is related to how do_package is generated, which depends on when
package.bbclass is first brought in.
"""

Since we never need the EXPORT_FUNCTIONS funcationality for do_package we just drop
it which removes this problem and stablisised checksums.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-31 16:22:14 +00:00
Kevin Tian eb879e2ef8 license.bbclass: don't mark it as 'nostamp'
'nostamp' is normally used for some standalone tasks like clean, checkuri, etc.
It doesn't make sense to mark do_populate_lic as 'nostamp', which is depended
by do_package. No stamp file in the build dependency chain implicates that
do_package needs to be reinvoked and thus further do_package_write* stuff.

This together with another sstate bug fully confused recent master, that people
keep observing unnecessary do_package rebuilt with or without change. Below is
a short explanation for two behaviors we observed:

a) a fresh build, and then bitbake same target w/o any change. User will observe
one unnecessary rebuild and then later rebuild is fine:
    [1st rebuild]
    * do_populate_lic has no stamp, and thus do_package is thought not current
    * do_package_setscene is then invoked with stamp file created
    * then later do_package_write*** also are rebuilt
    [2nd and later rebuild]
    * do_populate_lic has no stamp, and thus do_package is thought not current
    * do_package_setscene has stamp file and thus no need to re-execute setscene
    * thus no further rebuild required

b) a fresh build, and then adjust order of PACKAGE_CLASSES. There's one bug
regarding to PACKAGE_CLASSES and do_package_setscene, that only switch the
order in PACKAGE_CLASSES generates different checksum. In this case user may
observe up to 3 rebuilds when switching package_rpm/package_ipk back and forth.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Kevin Tian <kevin.tian@intel.com>
2011-01-31 16:21:48 +00:00