Commit Graph

2360 Commits

Author SHA1 Message Date
Robert Yang 208ff62db4 bin_package.bbclass: binary package recipe class
This is used for the binary package recipe, it's been suggested that it
would be a useful feature to be able to easily take an RPM or similar
containing a software binary from a 3rd party software vendor and
integrate it into an image created by the build system.

* Brief introduction
  - The binary pkg can be .rpm, .deb, .ipk and other formats which can
    be unpacked by bitbake fetcher.

  - Let bitbake unpack the bianry package, just like unpack the source
    package.

  - Skip the do_configure and do_compile.

  - Install the files to ${D}

  - Other steps are similar to the source package's recipe.

* Note:
  - The "subdir" parameter in the SRC_URI is useful for the binary
    package recipe, so I added an example in the comment.

  - I have sent a patch to bitbake-devel mailing list to support
    unpack the .rpm, .ipk, and .deb files.

[YOCTO #1592]

(From OE-Core rev: 7037f52909b8226d2afed4ac73c902d410afc112)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:46 +01:00
Robert Yang 4a015e57cc package_rpm.bbclass: fix the arch (replace "-" with "_")
rpm can't use the "-" as the arch, which causes problem, e.g., when
MACHINE = "beagleboard":

* The arch should be armv7a-vfp-neon, but rpm only takes the armv7a,
  this is incorrect since it is mixed with real arch armv7a.

* The nativesdk's arch should be i686-nativesdk (or x86_64-nativesdk),
  but rpm only takes the i686 (or x86_64), this in incorrect since it is
  mixed with the arch i686 (or x86_64).

Replace "-" with "_" when rpm package and the rootfs generation would
fix the problem, I think this is fine since it doesn't change the tune's
arch, the package manager doesn't care about the arch's name, but it
needs a unify arch system to avoid confusing. This is similar to what we
have done on the deb which fixed the arch i486, i586 and so on to i386.

[YOCTO #2328]

(From OE-Core rev: fc985f511da86400e4fa7d17555216c12eb51666)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:45 +01:00
Saul Wold d011150949 distrodata: replace Tab with Space
(From OE-Core rev: adb241958f125cc4c74ac5fbfc00674e7cd7305d)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:45 +01:00
Paul Eggleton cfa6817dd9 classes/mirrors: remove bogus gnutls mirror
This mirror entry which maps to itself plus a slash, if matched, put the
fetcher into a circular loop until the stack space is exhausted. A patch
has been sent to fix this issue in BitBake, but we should remove the
bogus entry as well.

(Note that this entry does not actually trigger the issue with current
master because the gnutls recipe now uses GNU_MIRROR instead of
ftp.gnutls.org, thus the bogus mirror entry is not matched.)

(From OE-Core rev: 0de1827a9601143b090f751ea702fdb65a936b77)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:45 +01:00
Kang Kai 15abf2571c image_types.bbclass: add variable for Hob
Add a new variable "IMAGE_EXTENSION_live" for Hob to map image type
"live" with real image file extension names.

This is for Hob to remove the hard-coded maps.

(From OE-Core rev: fe0973df7c72b1acec7feae03a4e13c1f49c8b1f)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-07 12:10:40 +01:00
Paul Eggleton 0fa17a78e1 classes/core-image: improve comments listing IMAGE_FEATURES
Ensure this listing is complete. (Comment change only.)

(From OE-Core rev: f9df0be3790ca837e43c41633d17e6ee851cb01d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-07 00:07:44 +01:00
Ross Burton 7e14b780d8 gsettings.bbclass: fix whitespace
As nothing in oe-core uses gsettings, it wasn't noticed that the whitespace is
wrong.

(From OE-Core rev: 1c2afda021f7abf88bc08400beba53c603912382)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05 22:25:23 +01:00
Paul Eggleton 9d6630d174 classes/qmake_base: support linux-gnuspe/linux-uclibcspe TARGET_OS
Fix borrowed from OE-Classic. This should fix build failures during
do_configure of Qt applications with the p1022ds machine from
meta-fsl-ppc, for example.

(From OE-Core rev: a19fc8e19a6cc6885a1e0616b1f42cc49c8f2c9f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05 17:32:14 +01:00
Richard Purdie 8d6ecfbe84 sanity.bbclass: Move back to running at ConfigParsed time
If we don't do this, users can get extremely confused errors since the sanity tests
happen too late (after parsing) and don't see the warnings.

Also cleanup messages about merging configuration file changes to give better
hints at where the updated files may be.

(From OE-Core rev: 7b8a68cda7ef8186e834b39e73ee12a55b33f85b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-05 17:32:14 +01:00
Bruce Ashfield d7805cfac4 linux-yocto: check for bad SRCREV before branch checks
do_validate_branches ensures that the desired SRCREV is at
the tip of every branch that contains the revision. To do this,
it looks for containing branches and processes them.

This processing was mistakenly placed before the check for an
invalid SRCREV, hence a git error message is seen in the log
if a bad SRCREV is used, rather than a clear message.

reordering the checks, and fixing a check for master, ensures
that clear messages are generated in all cases.

(From OE-Core rev: 7e4518bf88af53b09536a3bafcd4c392a094023f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 14:46:17 +01:00
Bruce Ashfield 611f16a8d8 linux-yocto: fix unapplied patch error message
When patches fail to apply, the status of all pending patches should
be exported to the logs and to the user. Currently, a missing export
of GUILT_BASE makes it look more like an internal error, than a 'normal'
patch failure:

    | [ERROR] unable to complete push
    | pending patches are:
    | Patches directory doesn't exist, try guilt-init

With this variable exported, we have this:

  | [INFO] validating against known patches  (qemux86-standard-meta)
  | error: patch failed: Makefile:2
  | error: Makefile: patch does not apply
  | To force apply this patch, use 'guilt push -f'
  | [ERROR] unable to complete push
  | pending patches are:
  | links/files/0002-makefile-patch.patch

(From OE-Core rev: b2b2512cbc4196fa0f814be3677517dab30e5b52)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 14:46:17 +01:00
Paul Eggleton 2a21c83300 packagegroup-core-console: remove
This provides one package group, packagegroup-core-apps-console, which
is usually brought in by adding "apps-console-core" to IMAGE_FEATURES.
Aside from the naming inconsistencies, this is a group of mostly
unrelated packages, none of which are actually "apps". Handling each
one:

* dbus: should mostly be brought in by package runtime dependencies
* avahi-daemon: if you are using packagegroup-base (as all images that
  inherit from core-image do) this is brought in by having "zeroconf" in
  DISTRO_FEATURES.
* portmap: not very useful by itself; should be brought in by selecting
  NFS server/client through other means.
* psplash (or whatever SPLASH is set to): this has been changed to be
  an explicit item "splash" in IMAGE_FEATURES. Since this is a fairly
  fundamental feature, a piece of code has been added to automatically
  handle this for images still using apps-console-core (and show a
  warning).

(From OE-Core rev: 592d6e602466628d10704835a7b07d3d713f58e1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:53:00 +01:00
Paul Eggleton 86d4bb2c3e packagegroup-core-qt: rename -demos to -demoapps
Try to avoid confusion with the Qt demos distributed with Qt itself.

(From OE-Core rev: dbbcc0cb9d2cbc66027c800075b94eb9b7110a00)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:53:00 +01:00
Paul Eggleton 53284ed01b classes/packagegroup: disable superfluous tasks
Disable tasks other than do_package* (similar to how image.bbclass
disables everything except do_rootfs). This saves a little time as well
as neatly avoiding the LIC_FILES_CHKSUM verification within do_configure
which is not needed for package groups.

(From OE-Core rev: fde2b0db798f03cf297a0d466a9c3a444f1321f3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:59 +01:00
Paul Eggleton 8eba44660e packagegroup-core-x11*: adjust X11 package groups
Now the Sato pieces have been moved out, rebase packagegroup-core-x11 on
packagegroup-x11-mini but using the structure/contents of meta-oe's
task-x11 so that it can replace that; rename packagegroup-core-x11-mini
to packagegroup-core-x11-base and pull in the xserver/utils packages via
packagegroup-core-x11, and move both of these recipes under
recipes-graphics.

x11-mini is renamed to x11-base as it's what people should build on top
of and since x11-mini is newer, the corresponding IMAGE_FEATURES item is
less likely to be used in existing user recipes.

(From OE-Core rev: 0cc9ced7d96b960994b0671095bc74becfc55e2c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:58 +01:00
Paul Eggleton ce1f15059a packagegroup-core-x11: move out Sato applications
Move Sato applications to packagegroup-core-x11-sato.

Note that this eliminates both the apps-x11-core and apps-x11-games
IMAGE_FEATURES; in practice it is unlikely these were useful to anyone
outside of the Sato images however.

(From OE-Core rev: 46cc375f29d5ecac7311613514a474f288d7c781)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:57 +01:00
Paul Eggleton 073a12c9cb classes/packagegroup: add ability to disable complementary packages
This allows package group recipes that do not want the automatic
addition of complementary packages (e.g. for SDKs) to still inherit from
this class and thus it becomes very easy to determine if a recipe is a
package group which we need to do in certain circumstances.

(From OE-Core rev: 3a3ae22bc0be5b36e0400986930f30c22a61a74e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:56 +01:00
Paul Eggleton 14bf9637be classes/packagegroup: Use package group nomenclature
(From OE-Core rev: aafd94acaa6517e3322855123c43a7b5cd5916ee)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:56 +01:00
Paul Eggleton 272cb74d70 Rename task to packagegroup
"Package group" is a much more appropriate name for these than task,
since we use the word task to describe units of work executed by
BitBake.

(From OE-Core rev: 424dcf7046e4ad09dcc664eb1992201195247fcf)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:55 +01:00
Paul Eggleton f1df3f828b classes/core-image: remove erroneous nfs-server comment
It has never been true that this enables exporting the entire rootfs.

(From OE-Core rev: ecd818f1a7a46aa0eeffe48445f2cf0db5aab67a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:54 +01:00
Paul Eggleton 153d413b47 classes/core-image: remove *_IMAGE_FEATURES variables
This indirection does not add anything in terms of configuration and
only serves to increase confusion; and given the nature of these it is
unlikely they are being used outside of OE-Core. Change the sato-sdk and
sato-dev images to be based on the main Sato image (avoiding the need
for a common SATO_IMAGE_FEATURES variable) and eliminate all references
to them.

Fixes [YOCTO #2458].

(From OE-Core rev: 6488842b0d03cfec9f8675eca5a2e05675decf66)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:54 +01:00
Paul Eggleton 5f0e3d8c89 classes/core-image: remove SSHSERVER_IMAGE_FEATURES
This variable was added in the very same commit that added a mechanism
that makes it obsolete: if you have dropbear and you want openssh, you
just add ssh-server-openssh to your IMAGE_FEATURES and it will replace
dropbear via IMAGE_FEATURES_REPLACES_.

(From OE-Core rev: 6c78d99cc2e54a99af22357d7567f64e864949b9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:54 +01:00
Richard Purdie 8cb5c02167 image.bbclass: Convert runtime_mapping_rename to event handler
(From OE-Core rev: 05e67417ca3174d1f9279f0de308a9d40933b461)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:11 -07:00
Tomas Frydrych 4759a71d3b package.bbclass: fix stripping for kernel modules
runstrip(path, elftype, d) does bitwise & on the elftype parameter, so it has
to be passed an integer. Passing None fails with: TypeError: unsupported
operand type(s) for &: 'NoneType' and 'int'.

(From OE-Core rev: 67f21c6c698464959c27c7e65ee537ab4c378944)

Signed-off-by: Tomas Frydrych <tomas@sleepfive.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:09 -07:00
Richard Purdie 1c64c6b300 sstate.bbclass: Remove hardcoded task mappings
I've not idea why this got left in but as per the comment, it needs fixing
and we shouldn't have hardcoded mappings like this. Lets remove it
and dynamically generate the data instead.

[YOCTO #3039]

(From OE-Core rev: 2df064ad46c1510fa8a401c22db4ab3278c3c807)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:06 -07:00
Richard Purdie ad23395cd1 nativesdk: Switch to using nativesdk as a prefix, not a suffix
As discussed on the mailing lists, using a suffix to package names is
hard and has lead to many recipes having to do PKGSUFFIX games. Its
looking extremely hard to scale nativesdk much further without hacking
many recipes.

By comparison, using a prefix like multilib does works much better and
doesn't involve "hacking" as many recipes. This change converts nativesdk
to use a prefix using the existing multilib infrastructure.

(From OE-Core rev: 81813c0e322dc04ce4b069117188d8a54dfddb8c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:06 -07:00
Richard Purdie 58a8a38aa2 nativesdk: Convert to use classextend.py
This patch converts the nativesdk class itself from operating as a suffix
to a prefix (see the proceeding patch for the related changes outside this
class).

The big benefit here is that we can reuse the generic class extension code.

(From OE-Core rev: f01f0b8aed25af889f48fe1afff96feb3d9ed120)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:05 -07:00
Richard Purdie 9ba1e33e2d sstate: Ensure master.list exists if it doesn't already
This fixes builds where master.list doesn't already exist. This
change was meant to be part of the previous sstate commit but ended
up separated.

(From OE-Core rev: c2109b765b24a7ffe4781257ad3fe4641a3b2a49)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-30 22:45:56 -07:00
Richard Purdie 59260f952f sstate.bbclass: Detect overwriting files in sstate controlled directories
We have a potential problem where two sstate packages try and touch the same
file. This adds code which will print a warning whenever this happens.

The implementation does but by maintaining a master file list and comparing
file accesses against this. There are a number of places we have duplicate
accesses which are harmless, mostly in the deploy directory so these
are whitelisted.

For now the code prints warnings, this could be strengthened in future to
become error messages. Whilst working on this code on and off over the past
few months various issues were uncovered, some serious.

[YOCTO #238]

(From OE-Core rev: 1f1b6f93d6b7aa8c9bd9bb5b1826997812e36932)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-30 17:44:06 -07:00
Robert Yang 44b8c1bb30 archiver.bbclass: fix the remove error
* The "tar-package" is used for saving the "Source" list for rpmbuild,
  there is no such a file when "ARCHIVER_MODE[type] ?= srpm", and there
  would be errors, it hadn't happen before was becuase that the remove
  function didn't work. Let the "rpmbuild --rmsource" to remove the
  Sources, and the remove function will just remove the tar-package file.

* Remove several unwanted "try ... exception" sentences, let the error
  raise rather than ignore them when the error happens.

* Remove several un-needed code.

[YOCTO #2619]

(From OE-Core rev: 6ac3e8be0307ecaea5e92f8bda94f1cd2193a47a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:09 -07:00
Robert Yang 4396677ade copyleft_compliance.bbclass: remove the duplicated code
A part of the code in copyleft_compliance.bbclass is duplicated to
archiver.bbclass, remove the duplicated lines.

[YOCTO #2619]

(From OE-Core rev: 731e1171d6c35ed086b36c081f48dba2015319f8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:08 -07:00
Robert Yang 436211f052 archiver.bbclass: remove the "upper()" function
The configuration value from the conf file is lower case, e.g. srpm,
tar, so there is no reason to use the upper case which makes things
complicated.

[YOCTO #2619]

(From OE-Core rev: 036a2502689092bb278b929f6e8ef2a119c1cf35)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:08 -07:00
Robert Yang 3883f82926 archiver.bbclass: fix the fakeroot and other issues
* Fix the fakeroot issue
  The archiver.bbclass is used for archiving sources, patches, and logs,
  it uses the "rpmbuild -bs" from the package_rpm.bbclass to generate the
  .src.rpm, but it didn't work (it's not easy to explain it clearly):

  Reason:
  - It directly used the "fakeroot" command, we don't have such a
    command in native tools, so it would use the fakeroot from the host,
    and it would fail when there is no fakeroot on the host.

  - The "rpmbuild -bs" doesn't need to work under root, but it is in the
    function do_package_write_rpm which is running under fakeroot, and
    "rpmbuild" needs to know the source file's user/group name, the source
    file is the tarball which is created by the postfuncs of do_unpack
    or do_patch which doesn't use the fakeroot, so the created file's
    owner would be the real user, e.g.: robert, but there is no such a
    user under our native tools' fakeroot(pseudo), then the rpmbuild would
    fail. It worked when use the host's fakeroot in the past was because
    that the host's fakeroot knows the users on the host.

  Fix:
  - Remove the incorrect "fakeroot".

  - Change the source file's owner to root.root under fakeroot will fix the
    problem.

* Other fixes:
  - The typo: "do_remove_taball -> do_remove_tarball" which will cause the
    tarball is not removed.

  - Add the _sourcedir defination to the rpmbuild command since the the
    SOURCES would be added to the specfile when archiver.bbclass is
    inherited, otherwise there would be errors when "rpmbuild -bb", though
    the build is OK. It only added the defination to "rpmbuild -bs",
    didn't add to "rpmbuild -bb".

[YOCTO #2619]

(From OE-Core rev: ac152f277fdff256def01af4268215a05685a0f7)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:08 -07:00
Robert Yang 2ba95cc79e archiver.bbclass: fix the coding style
* Make the comment line under 80 characters.
* Use the triple double quotes for the docstring.
* Add a whitespace behind the comma (,).
* Other minor fixes.

[YOCTO #2619]

(From OE-Core rev: 885a95992abe11ebef7a8e4363e6002ee80403bf)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:07 -07:00
Robert Yang c96f6ee659 archiver.bbclass: indent fixes
Several fixes:
* It uses mixed tab and whitespace as the indent in one function,
  Fix them to use "4 spaces" as the indent.

* Remove the unwanted blank, for example, more than one blank lines
  appeared together.

* Remove the tail whitespace.

[YOCTO #2619]

(From OE-Core rev: 5eacbcdf306d9e743164a1563559cd24eb5fffe0)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:07 -07:00
Richard Purdie 266d9ce1cf staging.bbclass: Might as well drop the applications, fonts and pixmap directories from ${datadir}
These cause various file conflicts and aren't useful within the sysroot anyway. We might
as well remove them. Whitelisting the contents of ${datadir} that *is* useful might
be a better option in future.

(From OE-Core rev: c9fdd2fd108fa557d8f60339405447b4ea4d6f64)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-29 16:02:07 -07:00
Bruce Ashfield af7cd07fae kernel-yocto: don't require meta branch for custom repos
The commit a9f11849 [linux-yocto: explicitly export KMETA to scripts]
allows the meta branch name to be changed by exporting it to all
phases of the build.

But if a custom kernel without a meta branch is built, we end up
passing an empty string to the creation scripts, which breaks the
build since input is expected.

Inhibiting the export of KMETA to the creation scripts when empty
fixes the problem.

(From OE-Core rev: 61162fbe01993659301fe2e821bf9c3e801206d8)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-25 14:47:01 +01:00
Bruce Ashfield 01ce721684 kernel-yocto: set master branch to a defined SRCREV
To support custom repositories that set a SRCREV and that only have
a single master branch, do_validate_branches needs a special case
for 'master'. We can't delete and recreate the branch, since you
cannot delete the current branch, instead we must reset the branch
to the proper SRCREV.

(From OE-Core rev: de5bb5879fa3282c46dc1ede36af34eaab8f647f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-25 14:47:00 +01:00
Liang Li 9a1705ef80 kernel.bbclass: fix INC directory for SLANG
In the kernel's tools/perf/Makefile CFLAGS was previously hard coded to
contain "-I/usr/include/slang" to work with hosts that have
"/usr/include/slang/slang.h" as well as hosts that have
"/usr/include/slang.h". This path can cause compile warnings like:

  cc1: warning: '/usr/include/slang' doesn't exists.

  or

  cc1: warning: include location "/usr/include/slang" is unsafe for
  cross-compilation [-Wpoison-system-directories]

Then in some cases warnings become errors if WERROR is enabled hence
build errors.

In coordination with a kernel fix, we can fix this error for all
kernels by modifying the perf Makefile within the staged kernel
source.

(From OE-Core rev: 4e0daf05ed04e9fb4343032c6290a379f53b89f3)

Signed-off-by: Liang Li <liang.li@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-25 14:47:00 +01:00
Mihai Lindner a807818544 grub-efi: fix Nothing PROVIDES 'grub-efi-x86_64-native'
"ERROR: Nothing PROVIDES 'grub-efi-x86_64-native'" is returned when
trying to build meta-intel/meta-cedartrail with DEFAULTTUNE = "core2-64"
Used TRANSLATED_TARGET_ARCH instead of TARGET_ARCH in grub-efi.bbclass

[YOCTO #3013]

(From OE-Core rev: 20e2aaacb36113604c4ea7c40dd0bbbf224b8360)

Signed-off-by: Mihai Lindner <mihaix.lindner@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-25 14:47:00 +01:00
Richard Purdie 3ea34e035a distutils/steuptools: Fix files layout and unbreak builds
The last two distutils changes progressivly broke the builds. Firstly they
moved things from the site_packages directory to being higher up the tree
which introduced package QA warnings as a side effect. Secondly, it interacts
badly with setuptools which passes in --root=${D} itself.

This patch restores the original directory layout, hence fixing the QA
warnings and also passes extra options to setuptools to deal with the
--root option it passes.

(From OE-Core rev: bed18d5df7915e4127a538be9c7550e185c8c850)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-24 17:25:15 +01:00
Matthew McClintock c7cfe7759e distutils.bblass: change order of args to install step
This let's the user override install-lib argument again if it needs
to be something else, otherwise things like python-setuptools
won't be able to modify the install-lib dir

This fixes a new issue exposed by my previous distutils patch
that fixed the python modules default install location. Also,
it removes running the install step twice which was inadvertant

(From OE-Core rev: 3b23feca31480cc56f55301fd0274e622c40b522)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-22 14:22:55 +01:00
Paul Eggleton bf64b6ec39 classes/package: document do_packages_split arguments
This function takes quite a number of arguments and can be tricky to use
properly; this is not made easier if it is undocumented, so document all
of the arguments. (No functional changes, comments only.)

(From OE-Core rev: 324fbcc047819b6948d13eda627ec898cb1f1eb8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-22 13:59:54 +01:00
Robert Yang 46b3ab1f2b package_rpm.bbclass: fix and enhance the incremental rpm generation
The incremental rpm generation usually broke when package_rpm.bbclass
changed, change its implementation to make it more stable:

* It depended on the previous and current saved manifest files in
  the past, it would break when the manifest changed. Now query the
  previous and current installed pkgs from rootfs/var/lib and
  rootfs/install/, this would be more reliable, the manifest's change
  would not affect it any more.

* Add explanations before package_install_internal_rpm to explain what
  does the function do.

* Remove an unwanted "awk '{print $1}'".

[YOCTO #2906]

(From OE-Core rev: 5d8ca498e09438bd91654fa8b8b2c970956d88e3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-21 12:15:31 +01:00
Andy Ross 40d3579ced insane.bbclass: Fix RPATH warning in the face of funny path strings
In toolchain edge cases it's possible for the RPATH of a library to be
set to something like "/usr/lib/../lib".  This should be detected as
"/usr/lib" and generate a warning.

(From OE-Core rev: 72a924d0686389d648338efd3f675fc85ee2d181)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-21 12:15:30 +01:00
Richard Purdie 48619958d5 meta/classes: Various python whitespace fixes
It was pointed out we have a number of weird indentations in the python functions.
This patch cleans up 3, 7 and other weird indentations for the core bbclass files.

It also fixes some wierd (odd) shell function indentation which my searches picked up.

(From OE-Core rev: 8385d6d74624000d68814f4e3266d47bc8885942)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-21 12:15:30 +01:00
Paul Eggleton ba8ba42b9f classes/sanity: remove texi2html from required host utilities
texi2html is not actually required to build world of OE-Core anymore,
so we don't need to mandate it. The only difference without it (verified
with buildhistory) is that groff doesn't produce HTML documentation; the
rest of its docs are still produced and packaged and no other packages
are affected.

Part of the work towards [YOCTO #2423].

(From OE-Core rev: aa1c4519f8e549b43a7d8bc51c5342d3409b464b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-20 16:53:17 +01:00
Martin Jansa 2b6268b5f5 kernel.bbclass: Preserve generated headers only if they exist
* I have 2.6.37 kernel without this directory and do_install now fails
  after 813256bf7bb6e26d542d5f769e2802564116ebe5

(From OE-Core rev: 9a83afe0794e96590aee374555efea91b3085b91)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-20 16:53:17 +01:00
Bruce Ashfield a9f11849d8 linux-yocto: explicitly export KMETA to scripts
The kern-tools scripts can support a meta branch and directory of a name that
isn't "meta", but they need the name passed through the environment variable
KMETA. ensuring that KMETA is exported in the shell environment sets the stage
to support flexible meta branch name.

(From OE-Core rev: 9b90c8ace04c88ac6105f0bf686f9abc70fe8074)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:56 +01:00
Bruce Ashfield 7a79f7412b linux-yocto: make KBRANCH the exception and not the rule
The kernel branch is no longer required by the yocto-kern-tools
to locate BSP feature descriptions (it is the MACHINE:KTYPE
descriptor), so we no longer require that the BSP branch be
explicitly set.

If a kernel branch is explicitly set, it is now used to trigger
a checks to ensure that the branch really is being built.
Otherwise the branch that the machine description creates will
be built (just as it always was).

This further simplies the use and configuration of a linux-yocto
based kernel recipe.

(From OE-Core rev: 3cac3ce65abae9dc253641a2004440a2b38fd44d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:55 +01:00
Khem Raj 0a0ffcf18b kernel.bbclass: Preserve generated headers
asm/unistd.h includes asm/unistd_64.h on x86_64
and asm/unistd_32.h on i386 but these files are
generated files in 3.4 and when we do 'make clean' they get
deleted and it shows up as an error when building
external modules. May be its a 3.4 kernel bug may be not
but make clean should have left the tree in
a shape to build modules but it does not.

Probably we should run make modules_prepare after having
run make clean.

(From OE-Core rev: 813256bf7bb6e26d542d5f769e2802564116ebe5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:55 +01:00
Yao Zhao 771f89498c base.bbclass: fix PACKAGECONFIG handling code
PACKAGECONFIG flag code only handles that when it has 3 or 4 items in flag,
it may have a stale data if some flags doesn't need DEPENDS and RDEPENDS.

(From OE-Core rev: 884cab0428cff2ffd070b6f36b688ca9851fbe43)

Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:55 +01:00
Richard Purdie 61ed74a725 utility-tasks: Set T to alternate location during do_clean
There is a race where do_clean tries to clean WORKDIR but there are logfiles
written into ${T} by bitbake and this can lead to exceptions due to open files.

The easiest solution is to redirect T to a different location for the do_clean
task, hence avoiding the errors and also allowing the logfiles to be visible
somewhere. ${LOG_DIR} seems an appropriate place for this.

[YOCTO #2846]

(From OE-Core rev: eef9d6c2d52f5264a6e7a9d882f8323f9793fd7f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-18 16:23:59 +01:00
Robert Yang 21dcd88cee rootfs_deb: move the lock from WORKDIR to DEPLOY_DIR_DEB
* There would be race issue if we put the lock to the WORKDIR, for
  example:
  bitbake core-image-sato core-image-sato-sdk

  If the lock is in their own WORKDIR, the apt-rootfs.conf and
  Packages.gz maybe be written by two tasks at the same time, which
  would cause unexpected errors.

* Create ${target_rootfs}/etc since the "tar -C" needs it.

Note:
  * The rpm has put the lock to DEPLOY_DIR_RPM
  * The ipk doesn't need it since it has locks for each deploy directory
    and put the opkg.conf in his own WORKDIR, which doesn't like deb put
    the apt-rootfs.conf in ${STAGING_ETCDIR_NATIVE}/apt/.

[YOCTO #2495]

(From OE-Core rev: 23ac392f8b868296eb9e7cd840f9b28ed6917b27)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 18:04:23 +01:00
Florin Sarbu 1356f8fefd Add MPL version 2.0 license in common-licenses dir as well as adding a non-SPDX license name in license.bbclass
(From OE-Core rev: 89efdb7c561e5af87da446c7767d3ad5809a7d13)

Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 18:04:21 +01:00
Matthew McClintock 3a51c0c6b0 distutils.bbclass: fix libdir for 64-bit python modules built with distutils
Without this some modules will be intalled in /usr/lib/python2.6/
instead of /usr/${libdir}/python2.6

(From OE-Core rev: bc6bd774aa8a3e085e9cabcefb11c3fc537139d5)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 18:04:20 +01:00
Mark Hatle bfa522b2b5 package_rpm.bbclass: Fix attemptonly install failures
During an attemptonly install, if you try to install two packages that
conflict with each other, a message is generated:

 error: Failed dependencies:
     dropbear conflicts with openssh-6.0p1-r4.ppc603e
     dropbear conflicts with openssh-sshd-6.0p1-r4.ppc603e

This is placed onto stderr (vs stdout), which was not being redirected.
This allowed the log-check code to find the magic key of "Failed" causing
the package installation process to fail.  Instead the proper behavior is to
simply ignore the error and proceed with the install.

(From OE-Core rev: 16d8d7fdda4ae7d108f5d50cde3f6104e231bd23)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 18:04:18 +01:00
Khem Raj 650227eea3 chrpath.bbclass: Account for case when ORIGIN is in RPATH
This fixes a case when RPATH embedded in program have one of
its path already relative to ORIGIN. We were losing that path
if such a path existed. This patch appends it to the new edited
rpath being created when we see it.

so RPATH like below

(RPATH)              Library rpath:
[$ORIGIN/../lib/amd64/jli:$ORIGIN/../jre/lib/amd64/jli]

would end up being empty

but after this patch its kept intact

(From OE-Core rev: 43600df0d4efc976a9451163dd334b4763937932)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 17:45:12 +01:00
Richard Purdie b0b92d7916 chrpath.bbclass: Ensure we only process tmpdir in paths which actually contain that path
Without this change, a path to "/lib/xxx" or "/usr/lib/xxx" would also
attempt to be remapped to be relative to $ORIGIN which makes no sense.

(From OE-Core rev: 73e2c12534856f14c1a94fb51874e9ba1655f07b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 17:45:12 +01:00
Paul Eggleton 62f1ccbbbd classes/chrpath: improve chrpath failure handling
When chrpath fails, prefix the error message with the name of the recipe
that is being processed, and include the the output from chrpath, as
well as making the calling task actually fail.

(From OE-Core rev: 99815eddd4e1eb5d939831704231537dd5a995ad)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 15:25:13 +01:00
Laurentiu Palcu 21049ec964 package.bbclass: change RPATHs for cross-canadian binaries
When building the meta-toolchain, the binaries didn't get relocatable
RPATHs. They were hardcoded to the default path. Hence, if one had
already installed one SDK in the default path and one in another
location, the later toolchain's binaries would search and load libraries
from the first location, ending in a "Segmentation Fault".

[YOCTO #2927]

(From OE-Core rev: b40a03c43d5d9d738a9aa5b43b2ecfe74fc95018)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 13:06:42 +01:00
Laurentiu Palcu 1b6019086c populate_sdk_base.bbclass: fix SDK relocation issues
The problem appears if multiple setup environment scripts are found. In
order to find only the script we're interested in, I removed globbing in
matching pattern with ${REAL_MULTIMACH_TARGET_SYS} that will be expanded
to the correct string.

Also, fix a problem when changing the scripts/configs. The grep pattern
matched also files that contained "text" in their name.

(From OE-Core rev: d81768560676da201fd730ae3930b080ab8c5c75)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 13:06:41 +01:00
Peter Seebach e2f73517ae base.bbclass: Work even when there's no PNBLACKLIST entries
It turns out that the result of getVarFlags is not a list, it's
a dict. So "getVarFlags(...) or []" does not reliably produce
something with a .items. This escaped detection because our
local build environment never ends up running builds without
PNBLACKLIST entries.

(From OE-Core rev: 491df239170dd20f3e91df6bc1ead2945a78e075)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 11:33:20 +01:00
Paul Eggleton 70b874019c classes/chrpath: trigger an error if chrpath fails
If chrpath failed here we were just silently ignoring it.

(From OE-Core rev: 24babf9316da50c8a4d2f328c4336cb8cd6cf667)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 17:51:10 +01:00
Ross Burton 5e775b5e5c pimlico: Remove
Remove the Pimlico applications (Contacts, Dates, Tasks).  oe-core isn't a
reference PIM stack, so we don't need this.

(From OE-Core rev: 373895e6c691277e15a09aee3504243448c55b50)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 15:26:26 +01:00
Ross Burton 0e6e974a2b classes: add gsettings.bbclass
This class registers postinst/postrm hooks to compile the GSetting schemas, and
adds the relevant dependencies.  If possible the postinst happens on the host to
avoid running it on the target.

[ YOCTO #2798 ]

(From OE-Core rev: ba9d5626174c1144b83963755ef310328306c3a3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 15:12:51 +01:00
Paul Eggleton 1ce0f3f867 rpmresolve: improve debug output
Rename rpmresolve's -d option to -t and make -d enable debug output;
add a -o option to specify the output file (so rpm debug output doesn't
go to the output file) and also add a little more detail to some of the
error messages.

(From OE-Core rev: 163dd734d79fd7040b48b10bca6fde28460ac20c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 14:26:43 +01:00
Bruce Ashfield b6bbf40996 kernel.bbclass: remove default module_autoload and module_conf values
kernel.bbclass is a common class for many different kernel versions,
and as such the default module_autoload and module_conf values that
it contains are not relevant, or out of date for most builds.

Individual kernel recipes or distros can better specify these
values to meet their needs.

(From OE-Core rev: a134efa7743edc3b7ca8abb651add6d2045c3b44)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 14:26:42 +01:00
Peter Seebach 13e2effd62 base.bbclass: Expand PNBLACKLIST across multilibs too
The PNBLACKLIST feature does not currently work with multilibs,
because they have different ${PN}. The obvious thing to do is to
do this at the same point that we do the PREFERRED_PROVIDER
and PREFERRED_VERSION fixups. (Making the PNBLACKLIST check
do the for-each-multilib check requires it to do the multilib
list generation repeatedly.)

(From OE-Core rev: 9bc0ca9369d0daee94abf60d3d521cc734c7e8cd)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 14:26:40 +01:00
Christopher Larson 096306ecd1 base.bbclass: allow specifying an lsb distro hook via the metadata
This is useful when you have a rather large set of compatible distros. For
example: Centos 5.4, 5.5, 5.6, etc, RHEL server 5.x, RHEL workstation 5.x.

(From OE-Core rev: 0e9932b2dba8573736c92bd07e59bad21b9fda2d)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 14:26:37 +01:00
Jesse Zhang d6ef548c48 image-mklibs: pass correct libdir to mklibs
libdir should be specified, or else mklibs won't work for 64bit targets.
It wouldn't be able to find the libs.

    Traceback (most recent call last):
      File "<build>/bitbake_build/tmp/sysroots/i686-linux/usr/bin/x86_64-wrs-linux/mklibs", line 553, in <module>
        header = elf_header(find_lib(libraries.copy().pop()))
      File "<build>/bitbake_build/tmp/sysroots/i686-linux/usr/bin/x86_64-wrs-linux/mklibs", line 89, in elf_header
        raise Exception("Cannot find lib: " + obj)
    Exception: Cannot find lib:

(From OE-Core rev: d2cd2ccea8bc4d110647ba3bd202772e5407000a)

Signed-off-by: Jesse Zhang <sen.zhang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-07 12:56:34 +01:00
Richard Purdie ef98412865 kernel.bbclass: Revert ${base_libdir} change
The base_libdir change in 5b8a4798ea
breaks the kernel build for 64 bit machines. Revert this part of the
change.

(From OE-Core rev: 351bdc59f8af915ae203af7799eedc0ce42785f2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-07 11:17:36 +01:00
Paul Eggleton 06ad59cca9 classes/package: don't make locale pkgs depend on PN pkg if not in PACKAGES
If ${PN} is not in PACKAGES then don't add it as an RDEPENDS for each
locale package. This fixes the installation of gcc-runtime locale
packages, for example.

(From OE-Core rev: d36c3235b3022c07f064929f55114f808a7634f6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:35:45 +01:00
Paul Eggleton b9fa9d713b classes/buildhistory: save metadata revisions
Always write the metadata revisions for each layer into a machine-
readable "metadata-revs" file so that you can potentially link changes
in the output back to changes in the metadata. (Unlike the existing
similar build-id file, this is not specific to image changes.)

(From OE-Core rev: 45f38d167b523d769c072474b36b3d9b31b4e9d9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:46 +01:00
Paul Eggleton 81485a47d5 classes/buildhistory: record PKG/PKGE/PKGV/PKGR
Save PKG (the actual output package name, which is often different due
to debian renaming), and PKGE/PKGV/PKGR (which may be manipulated in
certain special cases e.g. gitpkgv.bbclass in meta-oe, the
external-sourcery-toolchain recipe, etc.) Note that these are only
written when they are different from the normal package name in the
case of PKG, or PE/PV/PR for the other variables.

Also, use PKGE/PKGV/PKGR instead of PE/PV/PR when comparing package
versions since these actually represent the version that the package
manager sees.

Implements [YOCTO #2787].

(From OE-Core rev: 65d7e9b2d4d8115ac9fd513c04f39a2df9556a5a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:46 +01:00
Paul Eggleton c0149ac6c4 classes/buildhistory: save preinst/postinst/prerm/postrm
Write the value of these package script variables into the packageinfo
so that any changes to them can be tracked (in separate files since they
are multi-line).

Inspired by an earlier patch from Andreas Müller <schnitzeltony@googlemail.com>

(From OE-Core rev: 988a417c857c01c87de6ba9602968059cf8d830f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:45 +01:00
Paul Eggleton 78d8faf4e1 classes/buildhistory: remove unused functions
getlastrecipeversion and readRecipeInfo weren't called anywhere.
Remove them so we don't have to keep them up-to-date with future
additions to the recipe info file.

(From OE-Core rev: 22bf6284576ccee607d7bd197420a29242df11c0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:45 +01:00
Paul Eggleton d0b07eb778 classes/buildhistory: ensure old package info is removed
If a package is removed from PACKAGES, ensure that the package info file
and directory are removed from buildhistory so that we don't have stale
data lying around.

(From OE-Core rev: 223b183197b363edef0c11a25bad33555fca5a15)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:45 +01:00
Paul Eggleton 2f6ceff312 classes/buildhistory: remove obsolete flat package history feature
Remove the ability to set BUILDHISTORY_KEEP_VERSIONS = "1" to save the
package history as flat versioned files rather than relying on git to
keep previous versions of the package information. git has proven to
work quite well in this capacity.

(From OE-Core rev: ccedfd250620fc562988ba730ad5717b107a9d3e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:29:45 +01:00
Javier Martinez Canillas 5b8a4798ea kernel.bbclass: use ${base_libdir} and ${sysconfdir} instead of /lib and /etc
It is considered good practice to use the build system provided
variables instead of directly specify hardcoded paths.

(From OE-Core rev: c859717f522098e7c68df578d59011f68122dc2c)

Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:18:51 +01:00
Khem Raj bce9306008 populate_sdk_rpm.bbclass: Depend do_populate_sdk task on createrepo-native
Now that we have moved the rpm-createsolvedb.py
script to createrepo-native for good reason of
python-native dependency, we have to make sure
that it is staged before its used, unlike before
where it was under scripts/ dir and always existed
outside the realm of package management.

Fixes build error when doing meta-toolchain builds from
scratch

|
/home/kraj/yocto/poky/build/tmp/work/ppc64e5500-poky-linux/meta-toolchain-1.0-r7/temp/run.populate_sdk_image.26712:
line 610: rpm-createsolvedb.py: command not found
| DEBUG: Python function do_populate_sdk finished
| ERROR: Function failed: populate_sdk_image (see
/home/kraj/yocto/poky/build/tmp/work/ppc64e5500-poky-linux/meta-toolchain-1.0-r7/temp/log.do_populate_sdk.26712
for further information)

(From OE-Core rev: 90cfe33d30ef4f9491bd52e7965c5279a2e2650c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:18:46 +01:00
Bogdan Marinescu c4a7517f8a Complete recipe enablement
RP: The list of recipes in multilib.conf needs to go away and we need
to just be able to extend all recipes with the multilib class.
Tested by building and running lib32-core-image-sato-sdk.

[YOCTO #1563]

(From OE-Core rev: 5d691f1bc95dfb9109b07827b33957b1fa5b2fa4)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 18:07:18 +01:00
Laurentiu Palcu e3a13b8d93 package.bbclass: change RPATHs for nativesdk packages
Change binaries RPATHs, to include $ORIGIN, to make them relocatable.

(From OE-Core rev: f6362c5248914485fc8bf3c3f0ca6cc962bf753e)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:39 +01:00
Laurentiu Palcu 476ced15c2 relocatable.bbclass: split it up, to reuse code
Most of the code in relocatable.bbclass will be used for relocating the
SDK binaries. So, create another class chrpath.bbclass that will contain
the core of the relocatable.bbclass, so we can reuse it.

(From OE-Core rev: b50677b1641b201fd69942fd82a360907338234d)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:39 +01:00
Laurentiu Palcu 44df019842 populate_sdk_base.bbclass: create self-extracting archive
In order for the SDK to be relocatable, the user would need to call a
setup script to change the binaries acordingly. Having an auto-extracting
archive has the advantage of being more user friendly and the user does
not have to call the setup script separately after extracting the SDK.
It is called automatically.

(From OE-Core rev: d4e976849da845d595db7029d8089946ae16d982)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:39 +01:00
Martin Jansa 438df0f1d0 sip.bbclass: fix sip-native dependency
(From OE-Core rev: 5f1af539b3d34e6689a69d09c69d9099eee983d4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:37 +01:00
Radu Moisan fe800caf59 watchdog: Upgrade to upstream v5.12
sourceforge.net link is broken at the time of this patch,
so I added a mirror.
License changed to GPLv2+

(From OE-Core rev: 1452b5e60eff29e7423ecdd51d2d942e88dcc263)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:37 +01:00
Robert P. J. Day 5dc490cdb3 core-image.bbclass: Fix typo in comment, "IMAGE_FEAETURES"
(From OE-Core rev: af274b1b266b5aa661823bd702eacc62cc3aefff)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01 23:11:17 +01:00
Robert Yang 148e19e880 createrepo 0.4.11: add rpm-createsolvedb.py
Move scripts/rpm-createsolvedb.py to
meta/recipes-support/createrepo/createrepo/ since we should wrap it to
use the native python.

[YOCTO #2822]

(From OE-Core rev: 72d673bef385e756bd858f9eca7fe419efaceb39)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01 23:11:17 +01:00
Richard Purdie fd6251ef54 imagetest-qemu.bbclass: Fix whitespace issues
(From OE-Core rev: 674d65c94478a1ff33ef9d9c1e49f677091301f4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01 09:10:41 +01:00
Khem Raj 3309cf42d3 package_rpm.bbclass: Accomodate dash when using arrays
we were assigning local variable to an array coming through
positional arguments. local is a non posix contruct thats
also supported by dash luckily but operates differently in this
case it exapnds the array before assignment. so

local pkgs="$@"

turns into pkgs=locale-base-en-us locale-base-en-gb

ant we see errors

run.do_rootfs.25593: 932: local: locale-base-en-gb: bad variable name

So lets not use defining and assigning local in one go
first define a local and then the assignment

(From OE-Core rev: 4029ce1a15e1dbd374444ee77ccf2a915e463b7b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 12:22:10 +01:00
Martin Jansa 5ab3a11149 package.bbclass: fix TypeError in runstrip
* some packages have .ko files which are not elf, without this change
  it fails with TypeError, with this change only runstip fails and
  reports where:
  ERROR: runstrip: ''arm-oe-linux-gnueabi-strip'  '/OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/emacs-23.4-r0/package/usr/share/emacs/23.4/etc/tutorials/TUTORIAL.ko'' strip command failed

(From OE-Core rev: a834ab8a6d53cae504fa112a89bab93d726539ec)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 11:59:05 +01:00
Paul Eggleton 72730329c8 qt4: allow recipes building commercial edition
To enable building the commercial edition of Qt (through additional
recipes that are *not* provided by OE-Core) we need to tweak a few
things:

* Don't make recipes that inherit qt4x11.bbclass depend on qt4-x11-free
  - instead add qt4-x11 to DEPENDS and then have qt4-x11-free include
  this in its PROVIDES. A commercial equivalent recipe should do the
  same.
* Add a QT_LICENSE_FILE variable that can be used to specify the license
  file required by the commercial edition.
* Add a QT_LICENSE_FLAGS variable which the recipe can set to select the
  license option being used. The default of "-opensource" retains the
  current behaviour; a commercial recipe should set it to "-commercial".

Fixes [YOCTO #2505].

(From OE-Core rev: 2be0058fc4acddab611637656183accd052b40eb)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:09 +01:00
Paul Eggleton 581af95389 classes/populate_sdk_rpm: add depends on rpmresolve-native
As of OE-Core revision 72d1048a8381fa4a8c4c0d082047536727b4be47,
rpmresolve is now required for complementary package installation during
do_populate_sdk.

(From OE-Core rev: 8a71c1a507289d38a0f675584ab206abfa9aad9a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:09 +01:00
Paul Eggleton 9c96d34d68 classes/populate_sdk_base: don't break existing do_populate_sdk depends
We set do_populate_sdk[depends] in populate_sdk_*.bbclass, but since
these are inherited at the top of populate_sdk_base.bbclass, those
values are wiped out by using = at the end of the latter class. Use +=
to avoid this.

(From OE-Core rev: a87b5d6cab34579cf3abe03f4663d9a72e218397)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:09 +01:00
Leon Woestenberg b915fa43ec kernel.bbclass: Copy bounds.h only if it exists, needed for 2.6.x.
Linux 2.6.x kernels did not (all) have the bounds.h file, so copy
only iff exists.

(From OE-Core rev: 02ac0d1b65389e1779d5f95047f761d7a82ef7a4)

Signed-off-by: Leon Woestenberg <leon@sidebranch.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:09 +01:00
Paul Eggleton 22965c4715 classes/package: ensure pkgdata is cleaned out first
If do_package needs to be re-run and packages are removed/renamed as a
result, we want the corresponding stale pkgdata files to no longer be
present; for that we need to ensure all of the old pkgdata files are
cleaned out prior to creating the new ones. This is particularly
important now we rely on pkgdata more heavily (for complementary
packages, license manifest, etc.).

(From OE-Core rev: 5dee47b476a6f715ab02af5e758441a2a934eea3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:16 +01:00
Paul Eggleton 20ad566d60 buildhistory: improve performance of image info collection
Reduce the number of calls to the packaging tool, especially in the case
of rpm, using helper utilities to gather the required information more
efficiently where possible.

(From OE-Core rev: d0b8a98c5b46c305afd389fc862b3bf0c6f1eaab)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:15 +01:00
Paul Eggleton 98b0f956e7 classes/image: add staticdev-pkgs IMAGE_FEATURES feature
Add a staticdev-pkgs feature that can be added to IMAGE_FEATURES in
order to install all staticdev packages.

Fixes [YOCTO #2531].

(From OE-Core rev: 3ba9c0757eb51a0bb5873f4faae023587a33cc1d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:14 +01:00
Paul Eggleton fa5640d143 Rework installation of dev, dbg, doc, and locale packages
Use a similar mechanism that was previously used to install locales at
rootfs generation time to install other "complementary" packages (e.g.
*-dev packages) - i.e. install all of the explicitly requested packages
and their dependencies, then get a list of the packages that were
installed, and use that list to install the complementary packages. This
has been implemented by using a list of globs which should make it
easier to extend in future.

The previous locale package installation code assumed that the locale
packages did not have any dependencies that were not already installed;
now that we are installing non-locale packages this is no longer
correct. In practice only the rpm backend actually made use of this
assumption, so it needed to be changed to call into the existing package
backend code to do the complementary package installation rather than
calling rpm directly.

This fixes the doc-pkgs IMAGE_FEATURES feature to work correctly, and
also ensures that all dev/dbg packages get installed for
dev-pkgs/dbg-pkgs respectively even if the dependency chains between
those packages was not ensuring that already.

The code has also been adapted to work correctly with the new
SDK-from-image functionality. To that end, an SDKIMAGE_FEATURES variable
has been added to allow specifying what extra image features should go
into the SDK (extra, because by virtue of installing all of the packages
in the image into the target part of the SDK, we already include all of
IMAGE_FEATURES) with a default value of "dev-pkgs dbg-pkgs".

Fixes [YOCTO #2614].

(From OE-Core rev: 72d1048a8381fa4a8c4c0d082047536727b4be47)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:14 +01:00
Paul Eggleton a73c25d2de classes/rootfs_rpm: improve speed of RPM rootfs construction
Improve the performance of the RPM backend during do_rootfs by
performing most of the package name to file resolution in a separate
utility written in C, processing the entire list of packages at once
rather than running rpm on the command line which loads the RPM database
for every package.

(From OE-Core rev: 9135d351ba7cb21e50239d2b310565680bd4fdca)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:14 +01:00
Richard Purdie 754d240d2c package.bbclass/eglibc-locale: Ensure the correct PN is used for locale packages
(From OE-Core rev: fc4b138948656d482603b80f8c8e86fdbb185df4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:53 +01:00
Richard Purdie 72ab2866e1 sstate.bbclass: Add a string representing the lsb release to native/cross sstate
This patch adds the lsb name and revision to the path used for sstate files.
This means that reuse of sstate files between different distributions is restricted
by default. The behaviour can be configured using mirror urls, for example:

SSTATE_MIRRORS = "file://Ubuntu-11.10/(.*) file://Ubuntu/\1 \n"

would map Ubuntu 11.10 to a more generic "Ubuntu" named sstate feed.

Usually, more modern distros have increased libc versions for example
so whilst more older native/cross sstate packages will usually work on newer
distros, the opposite is not true. This patch allows development of policy
to better handle this although no default policy is currently being used.

(From OE-Core rev: 9360fc318cec5c873b17f59b817dd6312c81ee27)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:53 +01:00
Richard Purdie 2045338ab4 sstate: Add a two character subdirectory to the sstate directory layout
Currently all sstate files are placed into one directory. This does not scale and
causes a variety of filesystem issues. This patch adds a two character subdirectory
to the layout (based on the first two characters of the hash) so that files
can be split into several directories.

This should help performance of sstate in most cases.

(From OE-Core rev: 5d45c7b025f6635b2232d7bf92b7c1aba350396b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:53 +01:00
Richard Purdie 10b5ea77b1 base.bbclass: Set the NATIVELSBSTRING variable to represent the distro we're running on
This can then be used by the sstate code to mark native and cross packages
as being specific to a given distro.

(From OE-Core rev: 8556eb98be8bd9f02ee11a0d8a889c1895c86460)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:52 +01:00
Robert P. J. Day 6c93f7095e image.bbclass: Fix a couple innocuous typoes, should cause no functional change
"error_promt" -> "error_prompt" changed in both places
"subfolers" -> "subfolders" since it's not referenced anyway

(From OE-Core rev: cc1f824778c023686b4ea75c64a182a138ff2267)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:52 +01:00
Paul Eggleton a5227e205b classes/package: reduce dbg package dependencies
Make dbg package dependencies added via DEPCHAIN_POST less aggressive -
only add dependencies on dbg packages for shared library dependencies.
This avoids dragging in extraneous packages (such as eglibc-dbg forcing
bash-dbg to be installed) whilst preserving the ability to easily debug
into shared libraries in use by an application by just requesting the
installation of the single dbg package for that application.

For task recipes however we preserve the previous behaviour, since when
you install task-xxx-dbg you expect the dbg packages for every package
in the task to be installed. Unfortunately not all of our tasks inherit
from task.bbclass so we just use a name match - this should be tidied up
later.

Fixes [YOCTO #2599].

(From OE-Core rev: 352522d474cb75992d7865545b6fbe4e157a5f99)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:52 +01:00
Andreas Müller 58a7be460c gtk-doc.bbclass: unbreak dependency-chain for native recipes
see [1] & [2] for discussion of this patch

[1] http://lists.linuxtogo.org/pipermail/openembedded-core/2012-July/026606.html
[2] http://lists.linuxtogo.org/pipermail/openembedded-core/2012-July/026611.html

(From OE-Core rev: f9ae930552bc5f1d59f207d4cd0e2b1b4f811dbc)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:52 +01:00
Paul Eggleton e95738004f classes/package: do not add self-dependencies to dev/dbg packages
Avoid adding dependencies to dev and dbg packages on themselves via the
DEPCHAIN_* handling code. These don't actually cause any problems, but
they do complicate dependency graphs.

(From OE-Core rev: ecdf7874470cff24cb23b7fd2723096b15aead31)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 18:53:04 +01:00
Richard Purdie 5157c85776 base/perlnative/pythonnative/gzipnative: Add a new variable to enable easier handling of native path issues
If something is listed in ASSUME_PROVIDED but also manually built (like bzip2-native and
bzip2-replacement-native), we need to ensure that the installed binaries are only accessed
for things which list the provider in DEPENDS.

This patch adds a generic mechanism to handle this instead of everything reinventing the
wheel. EXTRANATIVEPATH += "perl-native" will ensure that ${STAGING_BINDIR_NATIVE}/perl-native
is added to PATH.

This means that:

a) Such providers should install to ${bindir}/xxx-native
b) Should PROVIDE += "xxxx-replacement-native"
c) That users should DEPEND on xxx-replacement-native and have EXTRANATIVEPATH += "xxx-native"

This patch enables this at the core level, the bzip2 recipe still needs adjusting to work
like this along with adjustment of the users of bzip2-replacement-native (python-native?).

(From OE-Core rev: 14b70cd222519e5bccaca955334787f123d9fc54)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:56:20 +01:00
Richard Purdie f3d5e08e65 staging.bbclass: Add support for invalidtasks parameter (see bitbake change)
(From OE-Core rev: d3ae2fc896fd866aac9f064dccbff971c324f43c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:56:20 +01:00
Ross Burton 39c9b208e4 core-image: remove x11-netbook package group, it's unused
(From OE-Core rev: ab498fa7a330d20639f3082cb1c05e92f37c5ced)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:48 +01:00
Paul Eggleton d9a0e081e6 classes/package_deb: add PackageArch field
If we want to query the PACKAGE_ARCH from the installed package (as we
do in order to be able to do a pkgdata lookup for example) then we need
to have this stored in its own field as this is not always the same as
the Architecture field for deb packages.

(From OE-Core rev: 3f4f6726646e18ae21919e2f361b669332796aef)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:47 +01:00
Andrei Gherzan 5334a93d26 package.bbclass: Create symlinks for packages with different packaged name
While generating license.manifest package information is searched in:
filename=`ls ${TMPDIR}/pkgdata/*/runtime/${pkg}| head -1`
This is ok as long as package name is the same as the package name
after packaging.
For example dbus is packaged as dbus-1. So, searching
ls ${TMPDIR}/pkgdata/*/runtime/dbus-1 will fail because there is no file
with this package name.

Create a symlink to the pkgdata file in a runtime-reverse directory so
that these reverse lookups are possible.

Fixes [YOCTO #2638].

(From OE-Core rev: 76ef414b8a017557cf5f3ad7b3ca8a324f7aad29)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:47 +01:00
Koen Kooi dcadeda69e kernel bbclass: Recreate uImage only when KEEPUIMAGE != "yes"
The intent of the uImage code in this class includes the following

1) be able to specify custom load addresses without needing to patch the kernel
2) add better information to the uImage description field

The current state is a NOP anyway, the kernel will always build a uImage when you tell it to 'make uImage'.

weakly Set KEEPUIMAGE to 'yes' in default-distrovars.inc which preserve the
current OE-Core behavior. Machines which are being ported from oe.dev and need to
regenerate uImage can set this to be empty

(From OE-Core rev: 72a7049526ee107005bd39c7bdd814ed71345829)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:47 +01:00
Khem Raj bedae2815e qemu.bbclass: Map the qemu binary name for powerpc64
(From OE-Core rev: b9c7b050eb3e51c98f95feb8cf19f45ff2cc8700)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:46 +01:00
Denis Carikli 9247550642 kernel.bbclass: fix external module building
Without that fix we have the following while compiling compat-wireless.
  include/linux/mmzone.h:18:30: fatal error: generated/bounds.h: No such file or directory

Note that the compat-wireless recipe will be added in another commit.

make -C $kerneldir _mrproper_scripts deleted this file along with
other things so we resurrect it with this patch.

(From OE-Core rev: 2d114fd0cdf7486f18e53f2bf41c4f559e4b4a8d)

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:45 +01:00
Richard Purdie 655654de62 gtk-doc: Ensure we run gtkdocize else we could see build failures (e.g. evolution-data-server)
This is a fix to Ross' series, we need to run gtkdocize in case anything
was built from source control and the appropriate files are missing.

(From OE-Core rev: aaf762bf20635a92d16e7aad6c154891d9d689c4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:24 +01:00
Richard Purdie e18ae61b60 sstate: Set SSTAGE_PKGARCH for allarch packages to allow reuse
allarch sstate packages could be marked as machine or package_arch specific. This
change ensures they are not.

(From OE-Core rev: f3104240ad5bb542c339ee29b2672523ad3ae50c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:23 +01:00
Richard Purdie 7fb076a1e0 allarch: No need to make packaging machine specific
Normally do_package is machine specific but this makes little sense for allarch
recipes. This patch unsets the appropriate variable.

(From OE-Core rev: 79e52a9825240a72b49a5c3f3ad8e0dbc74ad9f1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:23 +01:00
Robert P. J. Day beef126fd2 kernel-yocto.bbclass: Delete superfluous creation of ${S}/.git directory
In do_kernel_checkout(), replace the creation of ${S}/.git with just
the creation of ${S} since the .git subdirectory is created only a few
lines later using a "mv".  Here's the original code:

  rm -rf ${S}
  mkdir -p ${S}/.git

  echo "WARNING. ${WORKDIR}/git is not a bare clone."
  echo "Ensure that the SRC_URI includes the 'bareclone=1' option."

  # we can fix up the kernel repository, but at the least the meta
  # branch must be present. The machine branch may be created later.
  mv ${WORKDIR}/git/.git ${S}    <-- See?  There it is.

There's no functional change here, it's just less confusing.

(From OE-Core rev: f0d318177096a7a1c7406642663ae4ce28010d12)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:23 +01:00
Robert P. J. Day 7d93e98441 kernel-yocto.bbclass: Fix some obvious typoes in comments.
(From OE-Core rev: 072476bb6468d984ae3246f478fd5b3a21f7c8d6)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:23 +01:00
Morgan Little 093ed41b0f python-native: Put binaries in seperate directory
Update python-native to install the binaries in the python-native directory,
add pythonnative.bbclass to let recipes that need python-native use the
binaries and update disutils access the new binaries. Update distutils-base
to inherit pythonnative.

(From OE-Core rev: a2e554f731437545e9483a7a73e6847c03f6f48a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:20 +01:00
Ross Burton 8744139f12 change gtk-doc.bbclass to pull in depends and oeconf
(From OE-Core rev: 28dacc5a83ccf74f8f4895adb471af703d02259a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-22 11:42:16 +01:00
Ross Burton d85216e156 sanity: display the parsed BBPATH when complaining about CWD elements
Many people don't understand the nuances of PATH/BBPATH, so help them by clarifying
the warning and displaying the parsed list element-by-element.

(From OE-Core rev: 6f7be2498134402b5e0f766df5c57e1f496d0d06)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-20 12:32:53 +01:00
Robert Yang eb5522e9b0 package_rpm: DEPLOY_DIR_RPM must exist before make index
There is a package-index.bb which will update the index, but the
DEPLOY_DIR_RPM may not exist, for example, when "bitbake package-index"
in a fresh build.

Only the package_rpm.bbclass needs this, the package_ipk.bbclass and
package_deb.bbclass doesn't need.

[YOCTO #2753]

(From OE-Core rev: 72e18bb4171698a386b277b12d973e3d0fd7c4cc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-20 12:32:52 +01:00
Darren Hart 64f7feb5c3 EFI: Make installer EFI aware
[YOCTO #1919]

Create a basic EFI installer script modeled after the existing installer
and add it to a new initramfs-live-install-efi recipe. Update the
init-live.sh script to distinguish between LABEL=install and
LABEL=install-efi and select the appropriate script. Add the efi
installer to core-image-minimal-initramfs.

Update grub-efi.bbclass to use "LABEL=install-efi" when it detects a
label of "install". This is clearly not ideal, but a proper fix would
involve decoupling the LABELS assignment from the image-live.bbclass
usage of SYSLINUX_LABELS. We should be able to address that in a
follow-on clean-up series.

V2: Include missing initramfs-live-install-efi_1.0.bb
V3: Rebase after Radu's console_params fix

(From OE-Core rev: 4bce3417917a3e88ba6529db394525fba82e0699)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 17:49:48 +01:00
Richard Purdie a9b51e7859 staging.bbclass: Also don't bother staging locale files, its pointless
(From OE-Core rev: 782ce542a8250133cf1b1bc32927c17cd09cfca3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 17:18:09 +01:00
Richard Purdie 1ed15fbd4c staging.bbclass: Ensure the task starts from a clean directory
I found that some files were not getting removed from the sysroot, despite them
clearly being removed by the recipe. I found SYSROOT_DESTDIR is only ever copied
into, not cleaned. This patch ensures its empty when the task starts so that
stale files are removed and not persisted.

(From OE-Core rev: 8a313f6d32ae0bdac0393887712b09f1b685aaa5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 17:18:08 +01:00
Richard Purdie 52d1f7bee7 staging.bbclass: Don't stage doc/manpage/info files
There is no point in having doc, manpage or info files in the staging directory. They
just bloat the sstate package size and waste time as they're copied around.

We never used to stage these but it crept in when we started staging $datadir. This
patch corrects that so they're removed and stop making it into the sysroot.

(From OE-Core rev: ec4fea852bde2294ad7a7a703ccf11eb9a109c31)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 17:18:08 +01:00
Richard Purdie 2665be9dd5 buildhistory.bbclass: Fix python whitespace
(From OE-Core rev: 51d402fa0ec9e4adf10c3dac2a69a385ee720fa1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 12:33:20 +01:00
Richard Purdie 09d11c2794 package_ipk.bbclass: Fix python whitespace
(From OE-Core rev: 8a6c2278377edd63af54a469f0fb2b23f90e056b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 12:24:50 +01:00
Richard Purdie 73cf0335c4 Remove a number of unneeded import os/bb calls
The bb and os modules are always imported so having these extra import calls
are a waste of space/execution time. They also set a bad example for people
copy and pasting code so clean them up.

(From OE-Core rev: 7d674820958be3a7051ea619effe1a6061d9cbe2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 12:24:50 +01:00
Richard Purdie 7b2c67874e toolchain-scripts: Remove extra - from ar/nm command names
TARGET_PREFIX already has the dash included.

(From OE-Core rev: ca30b6587841f5e9a42aaedb8e0b89ff5a4a6a37)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 11:44:16 +01:00
Martin Ertsaas 1063f45612 Remove the - between ${TARGET_PREFIX} and ar/nm for the env script, as this will make autotools look for arm-none-linux-gnueabi--ar instead of arm-none-linux-gnueabi-ar.
(From OE-Core rev: 6434fc102e73ed81d2092e4c4ba5f9fb806545c8)

Signed-off-by: Martin Ertsaas <mertsas@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 11:17:58 +01:00
Richard Purdie bfd279de32 Convert tab indentation in python functions into four-space
(From OE-Core rev: 604d46c686d06d62d5a07b9c7f4fa170f99307d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 10:24:50 +01:00
Richard Purdie 99203edda6 boot-directdisk: Fix kernel location after STAGING_KERNEL_DIR change
This catches up with the STAGING_KERNEL_DIR location change
and uses the correct variable to future proof this issue.

[YOCTO #2783]

(From OE-Core rev: 28715eff6dff3415b1d7b0be8cbb465c417e307f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 22:50:14 +01:00
Ross Burton 856019774b sanity: display the parsed PATH when complaining about CWD elements
Many people don't understand the nuances of PATH, so help them by clarifying
the warning and displaying the parsed PATH element-by-element.

(From OE-Core rev: 47e6ab41f0f84e6bed7d337ebf96c954ec6909e8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:57:28 +01:00
Richard Purdie 617835990e bitbake.conf: Add git-native to ASSUME_PROVIDED
Originally, git was something new, not installed everywhere and had commandline
stability problems. This has changed and git it no longer makes sense to
continually build this when the system installed version is likely sufficient.

This speeds up build since recipes no longer have to wait for git-native to build
if they're fetched from a git:// SRC_URI.

Also add git to the sanity checks and drop the no unneeded svn reference.

(From OE-Core rev: 79e24186481770181565a18d177584d0d72399fe)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:33:01 +01:00
Jessica Zhang 04c2ee40f6 meta-ide-support: Add native qemu support for meta-ide-support
[YOCTO #2761]

This patch fixed the issue that after "bitbake meta-ide-support" and try to start qemu and it will fail.  This is due to the meta-ide-support lacking dependency for qemu native and ended up using qemu under /usr/bin.  Fix the issue by adding dependency for qemu native in meta-ide-support and also add the path info in the environment-setup script.

(From OE-Core rev: 3ea597249c18d73417abe7d7a9d32bba00499914)

Signed-off-by: Jessica Zhang <jessica.zhang@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:29:29 +01:00
Mark Hatle 5ed19a40f4 toolchain-scripts: Sync the SDK/ADT values to the build system
The build system passes specific TUNE (fundamental) flag values to various
tools instead of using a shell wrapper or similar.  It is important that the
build system and ADT/SDK match the behaviors exactly, or we are likely to
have differences in the way build-system and external components are built
leading to configuration, compilation and/or run-time problems.

(From OE-Core rev: 2bd0aaf98c5d586638d82f5f22c1c24122a889a3)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 18:02:55 +01:00
Richard Purdie 219a855f99 useradd.bbclass: Fix for multilib builds
The class adds a setscene dependency on base-passwd as well as adds this to DEPENDS.
The DEPENDS version will be auso-converted to include MLPREFIX whilst the setscene
dependency will not. This result in errors about non-existent tasks.

This patch ensures MLPREFIX is added when it is needed and fixes various
build failures. Whether we should have two base-passwd recipes in a multilib
system is a question which would need to be addressed by future changes.

(From OE-Core rev: 22dff7f36e985f9f7275b47e874147bc7bdc9473)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:56:26 +01:00
Khem Raj 0a925c9dcf kernel.bbclass: Dont package kxgettext.o
kxgettext.o is generated when building ppc kernels
so we end up with packaging errors like

> ERROR: QA Issue: Architecture did not match (20 to 62) on
> /work/virtex5-poky-linux/linux-xilinx-2.6.38-r00/packages-split/kernel-dev/usr/src/kernel/scripts/kconfig/kxgettext.o

(From OE-Core rev: 77278bd23617834c7f90b3b24a9945ec081dbb38)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:54:02 +01:00
Khem Raj a9f6df21af mirrors: Add debian archive snapshot mirrors to search list
I ran across this problem when apt 0.7.14 was not fetchable
from regular debian mirrors and existing snapshot mirror
did not have it either since we did not use proper syntax
so it was not hitting that.

(From OE-Core rev: 5a5f67e5486837b4d7e5a89cc27a5c8f8c8598ef)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:58 +01:00
Ross Burton f22424000f base.bbclass: add GNUmakefile to the list of possible makefile names
(From OE-Core rev: b753eab1028ba48dfdcdeefa07f3f30743f3ee45)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:57 +01:00
Richard Purdie d71a35d4f6 crosssdk/nativesdk: Ensure EXTRA_OECONF_FPU is unset
If EXTRA_OECONF_FPU is left set, certain ARM variables related to hard-float
can get pulled in and trigger rebuilds of the crosssdk code. The best solution
is to simply force the variable to a known correct value for the SDK targets
currently supported in the same way as TARGET_FPU.

There is some slight rearrangement of the gcc code to ensure the variable is
always used to call the fpu function.

(From OE-Core rev: 410990445ada8cdcfaec4e6fa5791cee9a5b8983)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:57 +01:00
Richard Purdie 72df57b3a5 sstate.bbclass: Move crosssdk before cross to ensure correct variables are set
There was a bug showing up where the crosssdk recipes were being installed as machine
specific in the sstate-control directory. This turned out to be due to the architecture
fields used by sstate being set incorrectly. The problem is that the crosssdk inherits
the cross class. It therefore needs to be listed in this if statement block before
the cross check, not after.

This should resolve some package architecture issue of crosssdk sstate files.

(From OE-Core rev: 79fe28e6033273f9632ca7549d1599d3fd1463ef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:57 +01:00
Andrei Gherzan e21c59e020 image_types.bbclass: Default XZ_COMPRESSION_LEVEL to -e -6
Having XZ_COMPRESSION_LEVEL on -e -9 and -T 0 will make xz eat more
than 6Gb memory. Reduce this to -6 to make xz to use about 471Mb
on the tested machine.

(From OE-Core rev: cfd201ecda95d00bc5d70aa5045c649b98ffe8b8)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:56 +01:00
Andrei Gherzan 89dc64c287 image_types.bbclass: Add XZ variable to set number of threads to be used while compressing
Default this variable to 0. This will make xz use as many threads as there are CPU
cores on the system.

(From OE-Core rev: 81c8e8a81e90ce95042e9fff8bac6fa011c416d1)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:56 +01:00
Andrei Gherzan 5a281ea940 image_types.bbclass: Fix COMPRESS_CMD for xz to redirect compressed data to file
Having -c modifier makes xz to output the compressed data to stdout. In this
way the needed data will be in the do_rootfs log.
Redirect data to ${IMAGE_NAME}.rootfs.${type}.xz .

(From OE-Core rev: 7ceea61636d6a6f886002e3c29941da3356157ac)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:56 +01:00
Xin Ouyang a5bb0bdcf0 cpan.bbclass: Fix CCFLAGS.
We should not just replace CCFLAGS with CFLAGS while compiling, because
this may cause run-time errors with perl's DynaLoader.pm.

Tested on qemux86 with new libnet-libidn-perl bb recipe:

root@qemux86:~# perl -e "use Net::LibIDN"
Not a CODE reference at /usr/lib/perl/5.14.2//DynaLoader.pm line 213.
END failed--call queue aborted at /usr/lib/perl/vendor_perl/5.14.2//Net/LibIDN.pm line 213.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.

(From OE-Core rev: 855211ae7a224f96663862d4a0e58a90d945dd48)

Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:56 +01:00
Paul Eggleton 4913b614d8 classes/rootfs_deb: use more reliable check for package existence
It turns out "apt-cache showpkg" does return some information when a
package does not exist but another package recommends it, which can
occur for empty *-dev packages; so use "apt-cache policy" with a
different line count instead.

(From OE-Core rev: ac62761a9cacdfd0225d2db5a75584e6c85469a8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:55 +01:00
Peter Seebach 07a9e9ee48 package.bbclass: Allow overriding of debugedit starting path
In the usual case, the computed path used for debugedit to fix
up path references for the target filesystem is correct. However,
prebuilt binary components, such as prebuilt toolchains, can
have debug paths that do not reflect paths within the local
build directory. Providing an override lets us continue to use
the standard debugedit logic in package.bbclass.

(From OE-Core rev: 32b1fde106bf423873a4a56e1111f230494e2d4a)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:54 +01:00
Amy Fong b1c2b57b3e package install failure on systems without /sbin/ldconfig
Package install failures due to issues in post install rules.

package_do_shlibs only looks for libraries in a directory "lib", this should be
modified to the variable baselib.

ldconfig_postinst_fragment failure observed on systems without /sbin/ldconfig
        [ -x /sbin/ldconfig ] && /sbin/ldconfig
results in the post install rule returning a failure. Modify to
        if [ -x /sbin/ldconfig ]; then /sbin/ldconfig; fi

(From OE-Core rev: 3f85ab6d0d05a4e34fe73fa343d2b3b942fc69b7)

Signed-off-by: Amy Fong <amy.fong@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:53 +01:00
Richard Purdie a5e31cb713 ccache: Ensure CCACHE_DIR is cleaned by do_clean task
This ensures a rebuild does really build from scratch when ccache is in use.

[YOCTO #2696]

(From OE-Core rev: ddf52d0161096b089fad8f3ace69b6515d7b7226)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-10 14:25:38 +01:00
Bruce Ashfield 0c9195b683 kernel.bbclass: add non-santized kernel provides
If the kernel version string uses characters or symbols that
need to be santized for the package name, we can end up with a
mismatch between module requirements and what the kernel
provides.

The kernel version is pulled from utsrelease.h, which contains
the exact string that was passed to the kernel build, not
one that is santized, this can result in:

 echo "CONFIG_LOCALVERSION="\"MYVER+snapshot_standard\" >> ${B}/.config

 <build>

 % rpm -qp kernel-module-uvesafb-3.4-r0.qemux86.rpm --requires
update-modules
kernel-3.4.3-MYVER+snapshot_standard
 % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides
kernel-3.4.3-myver+snapshot-standard = 3.4-r0

At rootfs assembly time, we'll have a dependency issue with the kernel
providing the santizied string and the modules requiring the utsrelease.h
string.

To not break existing use cases, we can add a second provides to the
kernel packaging with the unsantized version string, and allowing the
kernel module packaging to be unchanged.

   RPROVIDES_kernel-base += "kernel-${KERNEL_VERSION}"

 % rpm -qp kernel-3.4.3-myver+snapshot-standard-3.4-r0.qemux86.rpm --provides
kernel-3.4.3-MYVER+snapshot_standard
kernel-3.4.3-myver+snapshot-standard = 3.4-r0

(From OE-Core rev: 7be043178f5b9d16d9a06696bc0b96689f202a8d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:59:00 +01:00
Richard Purdie 2717309501 utils.bbclass: add helper function to add all multilib variants of a specific package
This is useful for the scenario where we want to add 'gcc' to
the root file system for all multilib variants

(From OE-Core rev: 7cd54693363882854cd026ebe071e9f2e03d364e)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:58 +01:00
Paul Eggleton 2fefa9c335 classes/license: fix manifest to work with deb
Prepend the license manifest creation call to ROOTFS_POSTPROCESS_COMMAND
instead of appending to ROOTFS_POSTINSTALL_COMMAND. The latter is not
implemented for the deb backend (and probably ought to just be removed
completely), and by using _prepend we can still ensure it occurs before
package info is removed (and before buildhistory in case it is needed
there in future).

(From OE-Core rev: 56fafe083fdb63f156a081344fb1d836e3182bf0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:58 +01:00
Robert Yang 2dee999ab2 sanity.bbclass: the tmpdir can't be longer than 410
There will be errors when the length of the tmpdir is longer than 410:

1) Longer than 420:
Can't exec "/bin/sh": Argument list too long at /usr/lib/perl/5.10/IO/File.pm line 66.

This error happens on both Ubuntu 10.04 and 10.10 when the pkg needs run
"autoreconf", this is because it passes many files with absolute path to
aclocal, aclocal passes them to perl, this is a limitation of the perl
on Ubuntu 10.04 and 10.10, and the perl-native is not ready at this very
early stage.

2) Longer than 490:
bitbake/lib/bb/persist_data.py", line 197, in connect(database=...)
    >    return sqlite3.connect(database, timeout=5, isolation_level=None)
OperationalError: unable to open database file

This error happens on Ubuntu 10.04, 10.10 and Fedora 17. This is because
the length of the database in sqlite3 module (host's) can't be longer
than 490 (or little smaller). The python-native is not ready at this
very early stage.

The 2 errors are host related, I think that limit the length of the
TMPDIR to 410 is OK for most of the build, rarely build sets TMPDIR's
longer than 410.

[YOCTO #2434]

(From OE-Core rev: ebcf949853ff667478a1ea1d3f1f8f41d643e708)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:57 +01:00
Mark Hatle e2b9acb888 multilib: Enable multilib remapping for SDK generation
Enable the remapping for SDK generation, this is required to be able to
create an SDK that targets an alternative multilib.  Note, this work does
not finish SDK/multilib support, but it is one more step toward making
it work properly.

(From OE-Core rev: d66d2bdf6214939e8b131f47db2f35d3c64e7dd2)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:54 +01:00
Mark Hatle f40ce3e1f4 package_rpm: Avoid duplicate package generation failures
When constructing a multilib based image, it's possible to end up with
the same package listed in multiple steps of the install.  During resolution
we use the --replacepkgs option to avoid errors, as the resulting install
solution will be as expected.  (We do not enable the replacepkgs option
for the final install step, only the generation of the install solution.)

(From OE-Core rev: 68ea7d827710ae7c5cf402887d4c12319038e064)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 11:38:02 +01:00
Mark Hatle 54a18cc1e7 populate_sdk_rpm: Sync multilib configuration with rootfs_rpm
An anonymous python chunk configures some multilib settings for both
populate_sdk_rpm and rootfs_rpm.  The two classes should contain identical
versions to ensure that the generated multilib configuration is the same
for the SDK and the rootfs.

(From OE-Core rev: 0f60722ef460fa826e4f02e7457004e64ca41d76)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 11:38:02 +01:00
Darren Hart d9302305fa bootimg: Use STAGING_KERNEL_DIR
bootimg.bbclass using STAGING_DIR_HOST/kernel instead of
STAGING_KERNEL_DIR, resulting in build failure of live images.

| install: cannot stat `/usr/local/dev/yocto/fishriver-test/build/tmp/sysroots/fishriver/kernel/bzImage': No such file or directory

Replace it with STAGING_KERNEL_DIR.

(From OE-Core rev: 8f16811a8d51982a8b3d70e6087aef4a41926840)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Tested-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-06 09:39:23 +01:00
Robert P. J. Day ee89e38d47 prexport.bbclass: Fix typo in warning: "AUROPR" -> "AUTOPR".
(From OE-Core rev: 0b79c730f3e5c3c5329e439dffd137f2605b6cba)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:38 +01:00
Raymond Danks c9b01af84b image_types: Add elf image type
On x86, an ELF image file may be stored as a coreboot payload.
The image file is constructed, using the mkelfimage utility,
from a kernel and an initrd.

(From OE-Core rev: 93e9de4e27919f59b6783d53f314df6e49ccb436)

Signed-off-by: Raymond Danks <ray.danks@se-eng.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:35 +01:00
Saul Wold 0a1d5f5977 package.bbclass: enable the use of package_qa_handle_error
This will allow the reporting of these errors as either WARNINGs (default)
or ERRORs if installed_vs_shipped is added to the ERROR_QA of the policy
file (such as a <distro_name>.conf file.

V2: found the code I had intended to send instead of that other junk,
    was just not watching what I pushed on that one, sorry. (this is edit in
    no in the actual commit message)

(From OE-Core rev: 20d4205a4e408b6a99db392d4df458156113106a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:35 +01:00
Saul Wold 7a16e34e73 lib_package: use PACKAGE_BEFORE_PN
Since this check effective is not a change becase the package
order that was in this file has not really changed no PR Bumps
are needed.

(From OE-Core rev: d807d5dd5bd0e161057ee115256dc050dbe8609b)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:33 +01:00
Darren Hart 68a8caa738 kernel: Add kernel headers to kernel-dev package
[YOCTO #1614]

Add the kernel headers to the kernel-dev package. This packages what was
already built and kept in sysroots for building modules with bitbake.
Making this available on the target requires removing some additional
host binaries.

Move the location to /usr/src/kernel

Before use on the target, the user will need to:

    # cd /usr/src/kernel
    # make scripts

This renders the kernel-misc recipe empty, so remove it.

As we use /usr/src/kernel in several places (and I missed one in the
previous version), add a KERNEL_SRC_DIR variable and use that throughout
the class to avoid update errors in the future.

Now that we package the kernel headers, drop the
kernel_package_preprocess function which removed them from PKGD.

All *-sdk image recipes include dev-pkgs, so the kernel-dev package will
be installed by default on all such images.

(From OE-Core rev: 6125ea40d4483965f793bd847b3ce14b668a5b1e)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
CC: Bruce Ashfield <bruce.ashfield@windriver.com>
CC: Tom Zanussi <tom.zanussi@intel.com>
CC: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:33 +01:00
Richard Purdie 5c581b2610 meta/classes: Update recrdeptask fields for recursive dependency handling changes in bitbake
This also deletes the buildall task since I seen usecases for it.

(From OE-Core rev: 8229fb5d7205f5e5b198ab2860fbcc02054476eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 14:48:13 +01:00
Lianhao Lu 286b2666dc image/core-image: Handle conflicting IMAGE_FEATURES.
IMAGE_FEATURES such as 'ssh-server-dropbear' and 'ssh-server-openssh'
can't be both enabled. User can use the following variables to define
the relationship of image features:

IMAGE_FEATURES_REPLACES_foo = "bar" means including image feature "foo"
would replace the image feature "bar".

IMAGE_FEATURES_CONFLICTS_foo = "bar" means including both image features
"foo" and "bar" would cause an parsing error.

(From OE-Core rev: e36d12a9c1cf69540079e48a1dfadbc343758e48)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:01 +01:00
Mark Hatle 8c87f255c0 base.bbclass: Add cross-canadian-${TRANSLATED_TARGET_ARCH} to the license exclusion list
This appears to be an oversight in the original implementation.  All of the
host package types were being ignored except for the SDK cross-canadian type.

(From OE-Core rev: 750f99d4e2c805985cd87a2358b0625a808ecf4d)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:00 +01:00
Mark Hatle b70c9154e4 image.bbclass: Add support to build the SDK in parallel with the image
When building an image recipe, you can now build a companion SDK by
calling the populate_sdk task:
  bitbake -c populate_sdk core-image-minimal

Note: there are still issues w/ the SDK not working completely with
multilibs.

A lock is required between rootfs and populate_sdk activities to prevent
configuration file clashes and similar package management problems in ipk
and deb based systems.  (RPM already had a lock for a different reason.)

(From OE-Core rev: a0de2a56f19ae4d8cd88e46e96917a7a019fe1ab)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:00 +01:00
Mark Hatle 63c6f46b22 package.bbclass: Allow a package to skip per file dependency generation
Most of the time skipping per file dependency generation is a bad idea, but
when building a nativesdk or similar you may be required to pickup host
dependencies.  These host dependencies can not always be reconciled within
the scope of other nativesdk components, so if we skip them we can facilitate
this unique situation.

(From OE-Core rev: a1ca125de55a8e7cab402e2ba5737a56d4e890c2)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:00 +01:00
Mark Hatle 6cb13874ec libc-common: Allow -dbg package to append, and not just set package variables
The libc-common attempts to rewrite the package information in a way similar
to debian.bbclass.  When it does this, it should be appending to the
dependency variables (RPROVIDES, RREPLACES, and RCONFLICTS), instead
of simply setting a hard coded value.  Otherwise the lib package can not
tailor the dependency variables to suite it's needs.

(From OE-Core rev: fa1c7b797593cbd5e82dc264bde2667620eb0515)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:00 +01:00
Richard Purdie b8bd56e34d autotools.bbclass: When configure fails, dump the config.log files the logs
When configure fails, it usually says "see config.log" yet nobody ever shares
the config.log file meaning the person trying to help invariably has to ask
for more information.

This patch dumps all the config.log files into the main bitbake log files when
configure fails, meaning all the information is present to help someone debug
such failures. It does make the log rather larger but this is preferable to
not having enough information in most cases.

[YOCTO #2463]

(From OE-Core rev: 7ad08f5b73aa949a877adc5641b4bb1d007de750)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:59 +01:00
Mark Hatle 01e891ad71 populate_sdk: enable basic multilib support
In order to enable basic multilib support for the export of an SDK
image, a number of minor changes had to be made:

The value of MULTIMACH_TARGET_SYS needs to be variable.  This way we
can define the value to the appropriate multilib.  (Also in some cases
the default PACKAGE_ARCH is set to MACHINE_ARCH which is incorrect for
the SDK.)  Add a companion REAL_MULTIMACH_TARGET_SYS, based on code
from meta-environment, to allow for this.

We have to convert the do_populate_sdk into a python call, and then
break up the previous items into three parts.
  * Image construction
  * Setup of environment files
  * Generation of the tarball

Then we can iterate over the multilibs to populate the environment files.

Finally, matching changes were needed in the toolchain-scripts file.  And
what I presume is an optimization of immediate evaluation for
TOOLCHAIN_CONFIGSITE_NOCACHE and ..._SYSROOTCACHE needed to be done at
runtime, otherwise the wrong values may be used.

(From OE-Core rev: 42545ffbb37f2646a2a8c20999c21d3300e24f59)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:58 +01:00
Mark Hatle 66d3d3b228 populate_sdk_base.bbclass: Change to using task specific depends
If we combine the do_populate_sdk with the image generation, we want
to avoid the dependency processing unless do_populate_sdk is run.

This requires the bitbake change to implement task based rdepends.

(From OE-Core rev: 5fa9f980248e7813ce74f48a29c4b7d94e308cf9)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:58 +01:00
Mark Hatle 41550ca5de populate_sdk: Allow for attempt only packages in the SDK
We want to be able to supply attempt only packages in the SDK in order to
support more advanced SDK images that more closely match specific image
recipes.

(From OE-Core rev: 9b9efa96537f4977b158c29151e53d02600d2294)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:58 +01:00
Mark Hatle 1d5271153d populate_sdk.bbclass: Split into two parts
populate_sdk was renamed to populate_sdk_base in order to allow for changes
that may break existing SDK recipes.  Any such changes need an analog
in populate_sdk (new version) to restore previous desired behavior.

In addition to the rename, one minor change was made.  The _base version
only had the do_populate_sdk as an added task, but no before or after defined.

For compatibility, populate_sdk has do_populate_sdk defined as "after"
do_install and before do_build, this is identical to the original behavior.

(From OE-Core rev: bde224ba44c16edc1892cea1b33ab973ae971115)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:58 +01:00
Mark Hatle 9870fbc9f8 Fix manual log file paths
When a recent change, the path to log files may be contained within an
arbitrary directory.  To generate the manual log files in the correct path
we should be using the ${BB_LOGFILE}'s path instead of always assuming the
logs go into ${WORKDIR}/temp.

(From OE-Core rev: 779db325d407f0bade84572ef99fdad4d0c88011)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:54:57 +01:00
Richard Purdie 58977a94dd package.bbclass: Add missing PKGR, PKGV, PKGE and ALTERNATIVE variables from PACKAGEVARS
These variables all take package name extensions and should be considered in sstate
dependency processing.

This may also fix some multilib alternatives issues (unconfirmed).

[YOCTO #2056]

(From OE-Core rev: 64422f7c5da160050a5454817c8fa9d070104b34)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:45 +01:00
Richard Purdie 91a077282f package_deb: When searching for E:, anchor expression
If we don't do this it will match on expressions like "NOTE:" which
are not fatal errors.

(From OE-Core rev: 8f4e160ce0b0c755545d62b06db14decd45b9f1e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:45 +01:00
Richard Purdie 4147d2e52f EXTRA_IMAGEDEPENDS is used to ensure things like qemu-native are built and these are not strictly dependencies of the do_rootfs task. This patch moves them to the do_build task allowing bitbake a little more flexibility about when things need to get built by.
I noticed this when qemu-native failed to build and a rootfs was not generated
which is not the intended behaviour.

Also update the syntax to use appendVarFlag instead of get/setVarFlag

(From OE-Core rev: fa13e83ec3f91dce866ac212e91b62db24b6486d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:45 +01:00
Robert P. J. Day 1d9e129c25 kernel-arch: Remove test for long-dead arm26 architecture.
(From OE-Core rev: ff3f912eed0270afa14d706fc1e57f8a1de2614b)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:44 +01:00
Robert Yang f64d68fb97 bitbake.conf: disable ccache explicitly if it is not enabled
The autogen-native built error on FC17:

ccache: failed to create /dev/null/.ccache

This is because the default gcc command of FC17 is a symlink to ccache,
so the ccache will always be used regardless to the setting of CCACHE,
ccache uses $HOME/.ccache as the CACHE_DIR by default, but autogen set
HOME=/dev/null, so the error happens.

Disable ccache explicitly if it is not enabled would fix the problem,
otherwise it would always use ccache regardless to the setting of CCACHE
on Fedora 17.

The ccache 3.1.7 has a bug, it would always create $CCCHE_DIR/.ccache
even CCACHE_DISABLE=1.

Unset CCACHE_DISABLE in ccache.bbclass, since ccache only checks whether
there is a CCACHE_DISABLE in the environment or not, it doesn't care about
its value, so we need unset it explicitly when enable ccache.

[YOCTO #2554]

(From OE-Core rev: dd2bab9b6a973d8086dfb6282e781fd79d30b05a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:32:57 +01:00
Xiaofeng Yan c3d8b100a2 archiver.bbclass: Add the function of filtering packages
This function can miss packages whose license is in
"COPYLEFT_LICENSE_EXCLUDE" and tarball packages with license in
"COPYLEFT_LICENSE_INCLUDE".

[YOCTO #2473]

(From OE-Core rev: 4800bed394ebd7fb50552a96d6a5f83d98fe790f)

Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:26:44 +01:00
Ross Burton d3343f7307 gconf.bbclass: don't register schemas in the install stage
Previously this was installing schemas in the sysroot, which is wrong for native
packages as nothing should touch the sysroot directly, and even more wrong for
non-native packages as the sysroot is irrelevant.

So, export the environment variable that stops the registration happening at
install time. The postinst script will handle the non-native case, and for the
sysroot I've opened #2648.  This isn't a massive problem as nothing to my
knowledge actually installs schemas to the sysroot.

[YOCTO #2245]

(From OE-Core rev: f9f2e0309a03a4dc9ed5e6cff7db6f29962b7d60)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:26:44 +01:00
Saul Wold 6b66a81ef7 native.bbclass: correct PATH to have native-intercept be prepended
This was needed since it was after the sysroots and thus in some cases
the native sysroot chown was being found and used instead of the script
provided by native-intercept/chown.  This was noticed by the non-gplv3
build since it's coreutils depends on coreutils-native.

(From OE-Core rev: bb5095d3f73a00222f50f9dd2cf8dc27cc72b4a2)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:26:44 +01:00
Bruce Ashfield 641a7091e4 kern-tools: add buildall and robustness fixes
Updating the kern-tools SRCREV to pickup the following functionality:

 - buildall: provides the ability to build all kernel branches
             without a build system, only a cross compiler and configme
             are required.

 - robustness/cleanups: obselete/unused code removal and general robustness
                        fixes from Paul Gortmaker and Bruce Ashfield

The following kern-tools commits are part of this series:

 b8dfd3d buildall: add whitelist/blacklist support
 0ef039c configme: catch errors found during fragment sanitization
 5b6498c buildall: remove all instances of it using/reading scc files
 2e57550 buildall: support semi seamless restarts
 4b5dd4d kconf_check: simplify cmdline args, dont store data per branch
 58fbb6e configme: relieve it of all knowledge of scc files
 a03e291 configme: strip out alternative meta series logic.
 96d2bcf kgit-init: check for valid branchpoint
 5598db6 buildall: allow a max cap on the number of builds done
 b46abec buildall: add support for randomizing build order
 68a04e9 buildall: dont copy failed build logs into main build dir
 5575d85 buildall: script to independently build all board kernels
 86d6200 configme: delete unused variable
 8d4e29d configme: delete unused KPROFILE setting
 7e15436 configme: ensure we have a valid machine type set
 152b9cb scc: remove depreciated/unused commands
 bb4e96a scc: allow includes within conditional statements
 7da7951 configme: derive path to tools from $0
 152dc45 configme: test for BUILD_DIR != ""
 129f7b0 kgit-scc: add warnings about bad input args.
 e977662 kgit-scc: add text for no arg and invalid arg case.

[YOCTO #843]

(From OE-Core rev: be3cff86d55db6255e036d68e943e527802b4f4c)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:26:43 +01:00
Lianhao Lu 41ed2e6532 classes/image: Allow openssh empty passwords login.
Allow empty passwords login so that the default root user can login in
through openssh.

(From OE-Core rev: 39ef0a705ca059f9a7c68aa1710c81411fb7c762)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-28 16:26:42 +01:00
Saul Wold f80dfacab0 distrodata: Fix missed VARIABLE name change
(From OE-Core rev: f0eba1569a16553d784f8234e5ce577ff2c66c38)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-25 16:35:53 +01:00
Darren Hart 288dcf4238 cml1.bbclass: Only delay exit if the command fails
Rather than pause for 5 seconds, test the return code of the command and
require user input before exiting on failure. This avoids pausing after
successful command execution as well as possibly not waiting long enough
if the user happens to be doing something else for 5 seconds.

(From OE-Core rev: d99cc2b70bbda9a0cbc09a4430b871c287113041)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-25 16:35:52 +01:00
Liang Li 6b9c19140c recipes-kernel: make perf a standalone package
perf has been coupled to the kernel packages via kernel.bbclass.
While maintaining the build of perf out of the kernel source tree
is desired the package coupling has proved to be awkward in
several situations such as:

  - when a kernel recipe doesn't want to build/provide perf
  - when licensing of dependencies would prohibit perf and hence
    the kernel from being built.

To solve some of these problems, this recipe is the extraction of
the linux-tools.inc provided perf compilation into a standalone
perf recipe that builds out of the kernel source, but is otherwise
independent.

No new functionality is provided above what the linux-tools.inc
variant provided, but the separate recipe provides baseline for
adding new functionality.

(From OE-Core rev: ab883d0c1a05bd99e97e5d71bc7bed05cb1ae8c8)

Signed-off-by: Liang Li <liang.li@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:04 +01:00
Bruce Ashfield a5b568eb37 kernel: save $kerndir/tools and $kerndir/lib from pruning
The kernel source tree in the sysroot has all unecessary source
code removed. The existing use case is to support module building
out of the sysroot, but as more toolsa are moved into the kernel
tree itself there are new use cases for the kernel sysroot source.

To avoid putting dependencies on the kernel, and to be able to
individually build and package these tools out of the source tree,
we can save $kerndir/tools and $kernddir/lib from being removed.
This enables tools like perf to be built our of the kernel source
in the sysroot, without significantly increasing the amount of
source in the sysroot.

(From OE-Core rev: e6cadd9074b18798f2df7c3f89dc35a98c29b6e5)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:03 +01:00
Robert Yang 9b8daa906f package_rpm.bbclass: fix incremental rpm generation
Fixes:
* Remove the "echo '# Remove manifest padding....' > remove.manifest,
  The remove.manifest would be used via "rpm -e `remove.manifest`",
  there would be error since there is no pkg called: Remove, manifest or
  padding

* The incremental.manifest can't be null when used by rpm, so check it
  before use.

* The rpm needs:
	--root "${target_rootfs}/install"
  when use:
	-D "_dbpath ${target_rootfs}/install"
  Otherwise it would use the ${target_rootfs} as the root, and use the
  ${target_rootfs}/var/lib/rpm as the dbpath, this is OK in a fresh
  installation, but there would be errors when increment rpm generation.

[YOCTO #2617]

(From OE-Core rev: 7d702c637b84c028c9763246b3ac355d10083ea3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:03 +01:00
Paul Eggleton 66123b9255 classes/cml1: ensure -c menuconfig forces a rebuild next time
Ensure the following results in the kernel being rebuilt, repackaged and
re-deployed in the final step:

bitbake virtual/kernel
bitbake -c menuconfig virtual/kernel
[ make changes to the kernel configuration and save ]
bitbake virtual/kernel

If there are no changes to the configuration saved, the rebuild will not
be triggered.

Note that this relies on a function recently added to BitBake and
requires full hashing (i.e. BB_SIGNATURE_HANDLER must be set to a
signature handler that inherits from BasicHash) - if this is not the
case or the function is not available in the version of BitBake being
used this change will do nothing.

Fixes [YOCTO #2256].

(From OE-Core rev: 9bf6b60e1599cf5dd87089d42584583cdfd6807a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:02 +01:00
Martin Jansa 262e5ac4bc kernel.bbclass: pass KERNEL_VERSION to depmod calls in postinst
* without this, kernel upgrades where KERNEL_VERSION is changed
  e.g. 3.4.2 -> 3.4.3 generate .dep for running 3.4.2 and after reboot user ends
  up without any module loaded to make it worse after reboot nothing is upgraded
  to trigger another kernel(-module) postinst to generate .dep for now running 3.4.3

(From OE-Core rev: 4bd5c17f55bc96ce6bbaccf6559aa4ea123ff4cb)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:02 +01:00
Saul Wold fd259b8894 bitbake.conf: add PN-bin and cleanup lib_package.bbclass
Since we now have PN as the end of the package list, we can almost get rid of
lib_package, each recipe can just add PACKAGES =+ PN-bin instead of the inherit

(From OE-Core rev: 7acdd6177fda4643d2f04f45eb7490e45a3d491e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:02:56 +01:00
Saul Wold b11e5d77bc lib_package: remove the -dev list
Since we have re-order the full PACKAGES list, we do not need to reset
the -dev list, we still need this since the -bin package needs to be inserted.

(From OE-Core rev: cb43d97988475646074c53a264f563bf0cb2907a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:02:56 +01:00
Saul Wold a5eb4d29a3 binconfig: add *-config files to the -dev package
This is part of the the package reorder, by having binconfig add -config
will the files first due to the order being greedy.

(From OE-Core rev: df651f5c30acb7cccbc0a0abf4b91a07f1a72e1f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:02:56 +01:00