Compare commits

...

566 Commits

Author SHA1 Message Date
Martin Jansa
247b6a3754 gstreamer, gst-plugins*: fix localdata
* all gst* packages were producing LC_MESSAGES/.mo instead of
  LC_MESSAGES/gst*.mo and it was leading to file conflicts between gst*
  packages too
* for more details see
  http://lists.linuxtogo.org/pipermail/openembedded-core/2012-November/032233.html
* buildhistory diff, confirms issue fixed
  f2c0888c0e
* Thanks to Enrico for simplier solution

(From OE-Core rev: f50e2984d9411a059b86d6c158e9416fceb84c3d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 15:25:33 +00:00
Laurentiu Palcu
f931aeb72e rootfs_ipk.bbclass: add missing --force_postinstall option
The force_postinstall option was missing and some packages were
configured on target rather than on host at rootfs time.

(From OE-Core rev: dfadfaa0b38678029ffebe14f15e2dbc148cb1fb)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 15:18:46 +00:00
Richard Purdie
9de050111b bitbake: build/siggen.py: Avoid removing too many stamps when cleaning
The "*" part of the mask is to ensure we clean both any stamp, and any
setscene varient. It turns out we would also trample other tasks,
e.g. do_package_write could trample do_package_write_rpm. do_package also
tramples do_package_write_* but this is less of an issue since the other
tasks depend on it.

Rather than use the wildcard, we can just use a list instead.

[YOCTO #3484]

(Bitbake rev: c14d831ea3f625e9a47266a0c4e6deefc924ca5a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 14:14:07 +00:00
Cristiana Voicu
4493b107a7 bitbake: hob: when BBLAYERS_NON_REMOVABLE is not set hob shows an error
(Bitbake rev: a40ceda3b349c4461f4b7bc0e18cd966fff5e3cf)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 09:19:46 +00:00
Li Wang
b629d94030 openssh: CVE-2011-4327
A security flaw was found in the way ssh-keysign,
a ssh helper program for host based authentication,
attempted to retrieve enough entropy information on configurations that
lacked a built-in entropy pool in OpenSSL (a ssh-rand-helper program would
be executed to retrieve the entropy from the system environment).
A local attacker could use this flaw to obtain unauthorized access to host keys
via ptrace(2) process trace attached to the 'ssh-rand-helper' program.

https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2011-4327
http://www.openssh.com/txt/portable-keysign-rand-helper.adv

[YOCTO #3493]

(From OE-Core rev: bdce08215396e5ab99ada5fa0f62c3b002a44582)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 07:41:26 +00:00
Mihai Lindner
8d1aed5dd2 upstream_tracking.inc: ltp and connman
Had my eyes in these areas lately and updates to upstream_tracking
were in order.

(From meta-yocto rev: a4ff07d0678f5cf395cb430a2e479d2b08f4ed9f)

Signed-off-by: Mihai Lindner <mihaix.lindner@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 07:00:59 +00:00
Ross Burton
d0f68a39f8 autogen: use pkg-config directly instead of guile-config
The autoconf macros in autogen use dpkg (!) and guile-config to determine
what/where Guile is.

If the build host has an installed guile, these can produce conflicting results.

More interestingly, if the Guile library source and compiled form have bad
timestamps (source newer than compiled) the configure scripts knows that Guile
is present but doesn't know what version it is, resulting in compile errors.

[ YOCTO #3370 (partially) ]

(From OE-Core rev: 8a4f07d5111feaa3114e039431785d6ad37529b2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-28 07:00:59 +00:00
Richard Purdie
75429c1dc8 local.conf.sample: Enable disk space monitoring by default
Running out of space is a serious issue and can corrupt the build. Since
we can prevent it at minimal overhead, we might as well enable it by default.

(From meta-yocto rev: 575d91ac64b76ea0f85266c46ee63b14707412ff)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-27 08:58:58 +00:00
Richard Purdie
82d05e2eca bitbake.conf: Change build output message to list BUILD_SYS, TARGET_SYS and NATIVELSBSTRING
The build summary is meant to reflect key configuration variables. Information
about the build system we're running on is important but currently missing
from the information displayed.

Printing TARGET_SYS removes the need to print TARGET_OS and TARGET_ARCH
and we add BUILD_SYS and NATIVELSBSTRING to show information about the
build system.

[YOCTO #3456]

(From OE-Core rev: 764cc1eb3043c84121f597d2271108b91052095e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-27 08:58:58 +00:00
Cristian Iorga
0060427f4e build-appliance-image: Updated to wget mixed-up commands fix
Fixes Hob network test failing inside BA.

(From OE-Core rev: 89884032c5c39d6343f7b30ed3e040052aeb87d9)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-27 08:45:19 +00:00
Cristiana Voicu
eeaad6f50c bblayers.conf: Add a new variable to prevent certain layers to be removed
[YOCTO #3372]
(From meta-yocto rev: 377e5ad099bb040f9bb96f2c1cae2ec2ff67165e)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 20:59:53 +00:00
Noor Ahsan
cc1fcf7e9f sysprof: Fixes undefined  reference to `rmb'
* Recipe already contains a patch for mips arch but not for mips64.
For mips64 arch 'mips' was not available in OVERRIDES, rather mips64
was there. So added the same patch for mips64 arch using mips64.

(From OE-Core rev: 5fa9f9b626daed83c8d31755040574c13ad25459)

Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 20:59:20 +00:00
Cristian Iorga
a0cf759537 bitbake: fetch2/wget: Fix for mixed-up wget commands
wget commands for check and resume were
mixed-up, leading to the following issues:

1. long running "NOTE: Preparing runqueue"
reason: objects were downloaded, not spidered on the mirror
2. Failing network test in Build Appliance, because wget 1.14
(in use in BA) will fail if a file already exists.
During the network connectivity test, index.php file was
actually downloaded, not spidered (checked for existence on
yoctoproject.org website), leading to wget failure.

(Bitbake rev: d7a5185cae975eaca50a9785c6605e895dc7bb51)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 20:57:30 +00:00
Richard Purdie
408a0d8b25 bitbake: fetch2/local: Fix bug introduced by expression ambiguity
The last changes introduced an error in some of the logic. Add brackets
to clarify the meaning of the expression and fix certain build failures.

(Bitbake rev: 87aea65bd5d553bd0495b0f1efe6d41d0bb2810f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 20:57:30 +00:00
Cristiana Voicu
73b9f64357 bitbake: hob: make some layers non removable
- there are some layers which cannot be removed; so ,I have used
a new variable called BBLAYERS_NON_REMOVABLE located in bblayers.conf,
which contains those layers which cannot be deleted
- "meta-hob" layer is added to this variable in hob code, like it's
added to BBLAYERS var

[YOCTO #3176]
(Bitbake rev: 05da1621eed4c6201cd65372d229f63ea8a44b6e)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 20:57:30 +00:00
Richard Purdie
c6dc0b9767 bitbake: Update version to 1.17.0
(Bitbake rev: cc7fdbdc607df530f5539b162831bf9998eb48d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:24 +00:00
Richard Purdie
6a2ce81fc6 bitbake: fetch2: Avoid using FILESDIR in unpack
Currently there is code which uses FILESDIR in unpack to ensure
parent directories are created, leading to differing behaviour depending on
which search path is used to locate the directory.

This change standardises the code and takes the data from the fetcher in
question meaning we can standardise the code and deprecate FILESDIR.

(Bitbake rev: 1cccb3bd01ed82e4978acfef0fda1bd797eef72a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:24 +00:00
Richard Purdie
7420cf5d67 bitbake: fetch2/local: Improve handling of wildcard matches
Currently wildcard matches end up working by FILESDIR being defined
in the metadata to a default of "." in FILESPATH which is hacky at best.

This patch adds the behaviour into the fetcher so its at least slightly
more explicit.

(Bitbake rev: 07b5f84133ac79aac4e939ea5f24390ad7f940a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:24 +00:00
Richard Purdie
13ecfdb331 packagegroup/allarch: Convert to use allarch class
Currently there is some odd behaviour of the packagegroup class in relation
to sstate since it sets PACKAGE_ARCH = "all" but does not use the allarch class
leading to it being undetected by sstate.

Previously it was not possible to use allarch as the recipe couldn't "undo"
settings made by the allarch class. Since this no longer happens when
PACKAGE_ARCH != all, we can use the allarch class.

This patch also fixes up one case we need to preserve TRANSLATED_TARGET_ARCH
and ensures sstate only assumes allarch when PACKAGE_ARCH is "all".

(From OE-Core rev: 591fa7c1ab9e9ff75fdce602c77ecdeda3a255d9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:24 +00:00
Richard Purdie
668f7e36fe allarch: Allow class to be included but overridden
We have cases where we'd like to inherit this class by default but allow
special cases to override it. This change makes the code of the class
conditional on PACKAGE_ARCH remaining set to "all", allowing it to be
overridden. packagegroup usage is one case this is desirable.

(From OE-Core rev: 7dd91402b719ac62b51088f234354f82bfa9c4b6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:23 +00:00
Richard Purdie
e8be466431 base.bbclass: Drop P and PN from FILESPATH
In the interests of simplifying things, remove P and PN from FILESPATH,
instead relying on the BP and BPN versions which work in 99% of cases.

In any problematic case such as a -native only recipe, either the patch
directory can be renamed or the recipe can set FILESPATH specifically.

(From OE-Core rev: fb359583b659cda643973fa285002aaffb729a51)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:23 +00:00
Richard Purdie
65145901af bitbake.conf: Simplify FILESPATH
Files are very rarely, if ever placed in ${PF}. If a recipe needs to do this,
it can easily append to FILESPATH so it makes sense to drop this from the
default search path.

Equally, using FILE_DIR as part of the search path leads to 'bad' SRC_URI
entries and/or file layouts which are not preferred. I'm therefore of the
opinion we should also remove this from FILESPATH and encourage people to
cleanup any places this breaks my correcting the layouts to match the standard
or worst case adding to FILESPATH in recipes that need it.

These changes work towards making the system more friendly as users won't be
greeted with huge search paths we rearely use making the "correct" layout
more obvious.

(From OE-Core rev: 3efa13cd76bbd5611805021945fc9def88d9fd93)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:23 +00:00
Richard Purdie
26978d8942 bitbake.conf: Drop obsolete FILESDIR setting
FILESPATH is the preferred way of finding files now. Having a value
for FILESDIR which defaults to paths which will have already been
searched is pointless at best. This is the final step in letting
us drop FILESDIR support entirely from bitbake at some future date.

(From OE-Core rev: d6e5ceafcaef06b8a3f9acc2aa826a40a016f913)

(From OE-Core rev: 3bb5c6bd51c91ada7fc17451627b8954dbe9c09c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:23 +00:00
Richard Purdie
e2edcd98b8 sanity.conf: Increase minimum bitbake version requirement to 1.17.0 for FILESDIR updates
(From OE-Core rev: a85f990efd62e50e5ffaddf5c6d2703f18f11071)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:23 +00:00
Marko Lindqvist
226e492705 automake: update to upstream version 1.12.5
(From OE-Core rev: b524595ec8feeb05aeedd360fca34536ac21faff)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:22 +00:00
Martin Jansa
54ee29e563 tune-*: define more generic DEFAULTTUNE to share feed between machines
* this is mostly for backwards compatibility and to share binary feed
  like it was before, but now without missing different -mtune in it
* if you want to build some package with -mtune add something like this
  to your distro config
  DEFAULTTUNE_qemuarm_pn-openssl = "arm926ejs"
  DEFAULTTUNE_qemuarmx_pn-openssl = "xscale"
  be aware that if you do this you should do it also for all packages
  which depends on openssl because if you dont and you build e.g. dhcp,
  then dhcp build for arm926ejs (even with DEFAULTTUNE armv5te) will
  depend on openssl with arm926ejs, so dhcp in armv5te feed will be
  rebuild after each MACHINE switch.
* cortexm3, cortexr4, iwmmx and ep9312 are using own DEFAULTTUNE because
  they define also different -march
* shared feeds are
  armv4t: arm920t, arm9tdmi
  armv5te: arm926ejs, xscale
  armv7a-neon: cortexa8, cortexa9

(From OE-Core rev: a11bdc36a1be18cc5aa14682b2a2c9ee83141f51)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:22 +00:00
Martin Jansa
2c300bccbd arch-arm: define different ARMPKGARCH when different CCARGS are used
* without this tune-xscale and tune-arm926ejs were both creating
  packages in armv5te feed, but each with different -mtune, with
  OEBasicHash enabled it was causing each package to rebuild with new
  -mtune after MACHINE switch, but that doesn't make sense with output
  stored in the same armv5te feed

* this makes different feed for each -mtune, but more generic one to be
  selected with DEFAULTTUNE

* tune-iwmmxt and tune-ep9312 were already using this, just move it
  bellow AVAILTUNES and use ARMPKGARCH_tune-foo syntax

* tune-cortexr4 and tune-cortexm3 are using armv7r/armv7m as ARMPKGARCH
  because there isn't another tune to use the same -march

(From OE-Core rev: cffda9a821a3b83a8529d643c567859e091c6846)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:22 +00:00
Martin Jansa
c5b670e4c9 arm/arch-arm*: define ARMPKGARCH_tune-* for default tunes
* tune-foo is not valid override, for it to work I had to add
  ARMPKGARCH = "${ARMPKGARCH_tune-${DEFAULTTUNE}}"
  but that doesn't work without value defined for every supported
  DEFAULTTUNE value, otherwise it's expanded like this
  TUNE_PKGARCH (${ARMPKGARCH_tune-armv5te}te).

(From OE-Core rev: 31e4f2dee990ee7f5d7491b65565e71d7d580209)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-26 10:01:22 +00:00
Richard Purdie
9be83df144 bitbake: knotty/msg: Avoid usage of curses initscr/endwin to avoid terminal corruption
Using curses initscr/endwin causes screen corruption if for example you
suspend bitbake and resume it. This changes the code to use a less
invasive approach to determining colour availability on the terminal.

(Bitbake rev: 4548a8f037eaf8d47a77052acc3e9ec264ac41e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:44 +00:00
Constantin Musca
8a3dd9e908 bitbake: hob/builder: Don't rerun sanity checks
Run the sanity check only once

[YOCTO #3377]

(Bitbake rev: 0db80d57d4d2b1bb97375444c439827450ff33d1)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:44 +00:00
Cristiana Voicu
f26d3e8d5f bitbake: hob: showing when build fails because out of disk space
-to enable this in hob, first you have to enable this in bitbake using
BB_DISKMON_DIRS and/or BB_DISKMON_WARNINTERVAL vars
-created "restart the build" action on the build_fail_top_bar

[YOCTO #3357]
(Bitbake rev: 964ac25d153ff4da144963289a32066db0e28b89)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:44 +00:00
Martin Jansa
7cbc3cf64b bitbake.conf: add TUNE_CCARGS[vardepvalue]
* we don't care about expression but value
* e.g. tune-xscale and tune-arm926ejs have different expression
  in TUNE_CCARGS but with the same DEFAULTTUNE the result is the same
  http://lists.linuxtogo.org/pipermail/openembedded-core/2012-September/030032.html

(From OE-Core rev: 03f1e34ea3ce80931e9c3cd2ab22824f28a7233b)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:43 +00:00
Martin Jansa
68c2a559a1 tune-cortexr4: fix march value
* probably copy&paste error from tune-cortexm3.conf
  commit 789dcb8e68a2ab9784ac10ab36815010c61af2fc
  Author: Richard Purdie <richard.purdie@linuxfoundation.org>
  Date:   Mon Jul 25 19:03:24 2011 +0100

    Add ARM tune file overhaul based largely on work from Mark Hatle

(From OE-Core rev: 4827232077e4a059d6aa818f89c83c42bb91949a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:43 +00:00
Martin Jansa
1c5fb74ad7 tune-xscale: replace TUNE_CCARGS for webkit-gtk and cairo only with xscale in TUNE_FEATURES
* without this you'll get different sstate checksum for webkit-gtk and
  cairo even when you build them with DEFAULTTUNE == armv5te
* maybe this isn't needed at all anymore or if it is then it should be
  applied in arm-armv5.inc for all armv5te devices, not only xscale?

(From OE-Core rev: c51643a510da6d1c3426b3de8f18ae864cb073a4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:43 +00:00
Gilbert Coville
99e0053a64 gst-plugins-base: add dep on libsm and libice
If libICE exists when this package configures, libICE and libSM are
added to the list of included libraries.  Adding libsm and libice to the
list of dependencies ensures they'll be present and makes the contents
of this package more deterministic.

(From OE-Core rev: 0d8adb1b57bf435f888c9357d40d1e2dae10d07f)

Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:42 +00:00
Flanagan, Elizabeth
6944a3bd58 license.bbclass: Collect LICENSE level packages
Some bad logic in license.bbclass misses certain package level
LICENSEs.

(From OE-Core rev: c5a171d5817233c0371e6f5b19f57f3c4b84f5ac)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-25 21:36:42 +00:00
Marcin Juszkiewicz
bc5bf6f0a0 archiver.bbclass: DISTRO is not required variable so deal with it
(From OE-Core rev: 3e7f411e6eb428f6d49a6f1a396e70a2bd1ceadc)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:37 +00:00
Jackie Huang
70e654af5d eglibc: always compile with optimization.
eglibc fails to compile if someone tries to compile an entire image as -O0:
error "glibc cannot be compiled without optimization"
so in this case, force to use -O2 and give a note about it.

[YOCTO #3405]

(From OE-Core rev: 9ca1c6120fad5dcae1694e8e37331c1b903f1fd0)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:36 +00:00
Jackie Huang
e63596e7b0 python-pygtk: add gtk-types.defs into gdk.c dependence
gdk.c depends on gtk-types.defs but
gdk/Makefile.am miss this. This will cause
build error sometimes when built
with multi-jobbing, so add gtk-types.defs into
gdk.c dependence.

[YOCTO #3460]

(From OE-Core rev: 0e97ef30c3819e22f43d88e817e8a8b39ca30e5d)

Signed-off-by: Song.Li <Song.Li@windriver.com>
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:36 +00:00
Marcin Juszkiewicz
6f605dee61 db: update gnu-config files in do_configure()
(From OE-Core rev: c675b53b9f3f3d858e2fa93170f731656d3fc3f6)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:36 +00:00
Marcin Juszkiewicz
40c0dbc1a5 strace: backport AArch64 support
This changeset updates existing OE patches to commits from upstream git
tree and adds everything needed to get AArch64 support working.

(From OE-Core rev: f67ad1c2634b3c7a46c43ebdbdffbe7a083e99ed)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:35 +00:00
Joe Slater
d48d44e25c curl: eliminate forced setting of -g0 when compiling
Do not invoke CURL_SET_COMPILER_DEBUG_OPTS in configure.ac.
This will allow debug options set in our CFLAGS to be
used.

(From OE-Core rev: ba151faad47e6874b295ebd9699ce154bc4ff741)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:35 +00:00
Joe Slater
5c1c26a250 unzip: pay some attention to our CFLAGS
Makefile makes use of CFLAGS_NOOPT.  If we set that
when calling make we can enable options like -g.  The
Makefile will override any optimization to -O3.

(From OE-Core rev: 7f26794dc9f2e78ee8aed1e23752acb709345c6f)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:35 +00:00
Joe Slater
0311826390 zip: pay some attention to our CFLAGS
Makefile makes use of CFLAGS_NOOPT.  If we set that
when calling make we can options like -g.  The Makefile
will override any optimization to -O3.

Upstream-Status: Pending

(From OE-Core rev: df2c260f9cda2e291c72f7debe1e6d53846ce058)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:35 +00:00
Joe Slater
eac24cbb8a mingetty: replace cflags hard-coded into Makefile
Add CFLAGS to EXTRA_OEMAKE to allow us control over
debugging and optimization.

(From OE-Core rev: 2e123bb1b3ee023a020798972821f32b1e0054e6)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:34 +00:00
Joe Slater
d241626215 iproute2: pass CFLAGS to Makefile\
Makefile computes CFLAGS, but we can see that our
defaults get included by using CCOPTS to pass them
to make.

Upstream-Status: Pending

(From OE-Core rev: 8d71f7d33c18bb0a975eb86d602bda42db4baa2c)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:34 +00:00
Roy Li
10baa59425 bind: make "/etc/init.d/bind stop" work
Add some configurations, make rndc command be able to controls
the named daemon.

(From OE-Core rev: 9ad8f7c2bae021269e9a8e35f9fc44a16d23bb6f)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:34 +00:00
Joe Slater
165ed25670 procps: pass CFLAGS to make
EXTRA_OEMAKE in the recipe currently discards the
environment CFLAGS when setting CFLAGS passed to make.
We change that to include these options.

(From OE-Core rev: 67924616963fee9cb9f2405d93c74a8cc10b6eab)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:34 +00:00
Laurentiu Palcu
a68c456e85 meta-toolchain-qte: add --sysroot option to OE_QMAKE_(CC|CXX|LD)
When building a QT application using OE_QMAKE_CC/OE_QMAKE_CXX, the
--sysroot was not included and the compilation would fail. The user had
to add the option manually which was not very user friendly. This
happened only when installing the SDK in another location than the
default one. Since CC/CXX/LD had this option already included, reuse them.

[YOCTO #3409]

(From OE-Core rev: 758f56523daa7d8c8b459757c70b50421d28b8dd)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:33 +00:00
Marko Lindqvist
5e744f510e gtk+: update to upstream version 2.24.13
(From OE-Core rev: 77cd1218bbd0760f674811eb748037deb4478db5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:33 +00:00
Martin Jansa
e0ca1c0e23 xf86-video-omap: drop RPROVIDES/RREPLACES/RCONFLICTS
* without _${PN} suffix they are invalid:
  opkg install bash-4.2# opkg install xf86-video-omapfb
  Package xf86-video-omap-doc is already installed on root.

* it's not upgrade to omapfb driver but different driver,
  so let BSP maintainers decide which one works for their MACHINE

* without this xf86-video-omap (or -doc, -dbg, ...) can be pulled
  to image even when XSERVER clearly says xf86-video-omapfb

(From OE-Core rev: ef0f8611001c435abab60c464d31134ef027d7c2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:33 +00:00
Martin Jansa
fb403f2952 xf86-video-omapfb: revive driver which actually works and is tested on real devices
* 0006-omapfb-port-to-new-xserver-video-API.patch added to port it to
  new xserver video API
* other patches just updated headers to be able to git am them

(From OE-Core rev: 58e600ae3cc955ebe30b2756540404a267c7cb26)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:32 +00:00
Martin Jansa
957b835f2a xserver-xorg: disable dri2 too when building without glx PACKAGECONFIG
* it was enabled when dri2proto was built before xserver-xorg

(From OE-Core rev: 1668b4d4f373292ea4d611712ef56148ededfce5)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:32 +00:00
Martin Jansa
554bc89627 xf86-video-omap: add xf86driproto dependency, drop --enable-neon and improve DESCRIPTION
* xf86driproto was missing
* --enable-neon isn't supported by omap driver
* DESCRIPTION merged from meta-ti
  http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/tree/recipes-graphics/xorg-driver/xf86-video-omap_git.bb?id=410dc026f2ee24a2346e7563a83f0181c79809cf
* this driver also depends PACKAGECONFIG[glx] used in xserver-xorg,
  without it dri2.h sometimes isn't built (it is autodetected only
  when dri2proto is built before xserver-xorg) and without dri2.h it now
  passes do_configure but fails later in do_compile

(From OE-Core rev: 19951d2583b4ed08bbc871128d90aefd062e7da9)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:32 +00:00
Laurentiu Palcu
df1a1dcb6d perl: use the exported LDDLFLAGS in generate_config_sh script
The perl shared libraries did not have RPATHs set and that made
autoreconf fail when using the SDK. The LDDLFLAGS environment variable
was already exported in the recipe but was not used when generating the
config.sh.

[YOCTO #3338]

(From OE-Core rev: f6f5bdace473d0dd1dd5b8bdc7ebbb24fc6ee90d)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:32 +00:00
Bruce Ashfield
3ac623802b kern-tools: report missing config fragments by name
If a configuration fragment was missing, the previous error output
was not clear about the error:

  | [INFO] doing kernel configme
  | [INFO] Configuring target/machine combo: "standard/atom-pc"
  | [INFO] collecting configs in ./meta/meta-series
  | ERROR: could not sanitize configuration fragments
  |    errors are logged in ... linux/meta/cfg/standard/atom-pc/config.log

but we know the name of the missing fragment and can improve the error
message to be this:

  | [ERROR] kernel configuration fragment fragment 'virto.cfg' cannot be found
  | ERROR. A meta series could not be created for branch yocto/standard/common-pc/atom-pc
  | ERROR. Could not locate meta series for atom-pc
  | ERROR. Could not apply patches for atom-pc.
  |        Patch failures can be resolved in the devshell (bitbake -c devshell linux-yocto)

[YOCTO #3473]

(From OE-Core rev: 8e5dc511ffce4f4b512457dbc5d3dd510f6e4a95)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:31 +00:00
Bruce Ashfield
8795797de9 linux-yocto-3.4: gcc optimization config feature
Updating the meta SRCREV to include a x86 gcc optimization feature, and
its use by several BSPs:

  1c59807 meta: rangeley: Remove the shortcut path
  b5477d0 meta: crystalforest: Enable GCC inline compiler option
  ab2b874 meta: rangeley: Enable GCC inline compiler option
  8287750 meta: Add New feature for GCC optimizing

(From OE-Core rev: b042d1cce535fe88dd6f5b5c0cd1a608a27afbd6)

Signed-off-by: Kishore Bodke <kishore.k.bodke@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:31 +00:00
Martin Jansa
002f483377 opkg: bump SRCREV and drop applied patches
* only change upstream which wasn't in oe-core is
  http://code.google.com/p/opkg/source/detail?r=635
  and added testcase for that

(From OE-Core rev: 5fd1d515db5966f45a3b2f936f3c4225f59186e2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:30 +00:00
Kang Kai
9f836a4595 lsbsetup: drop it
lsbsetup provides script LSB_Setup.sh to setup LSB test on image. But
script LSB_Test.sh provided by lsbtest replaces its function now. So
drop lsbsetup.

lsbsetup links /etc/localtime to HongKong zoneinfo file to make LSB
wcsftime test case pass(Yocto 1079). But the test case PASS without
this link, so remove the link.

Other 2 links are moved to packages lsb.

[Yocto 3278]

(From OE-Core rev: d991393207af90fe73de76f89ac6949ef291904e)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:30 +00:00
Kang Kai
1d8580bb55 packagegroup-core-lsb: remove lsbsetup
package lsbsetup has been dropped, so remove it from packagegroup
core-lsb.

(From OE-Core rev: 9b6ca9bd8dcf7e7d3eed9f0120a4ffcac80e441f)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:30 +00:00
Kang Kai
cffd1a933f lsb: move links from lsbsetup to here
Because package lsbsetup is dropped, move the links created for LSB test
to package lsb.

(From OE-Core rev: 7659ad17799672d48c4d8614e830b7e60a1e971a)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:30 +00:00
Colin Walters
d3dbfd6fe0 gcc: Add --enable-linker-build-id
See https://fedoraproject.org/wiki/Releases/FeatureBuildId for the
benefits this brings.  As far as I can tell from searching the
discussion archives, there doesn't appear to be a reason not to enable
this, and the benefits are real.

Both the Red Hat Enterprise Linux 6, all Fedora, and Ubuntu Quantal
GCC builds are configured with this on.  I plan to use it in
gnome-ostree.

(From OE-Core rev: f3be2b1e5e100a953d6d7fbbb19a77a5c4d547e1)

Signed-off-by: Colin Walters <walters@verbum.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:29 +00:00
Philip Balister
7a7f9489d3 insane.bbclass : Disable tests for unsafe references in binaries and scripts.
These test look for programs in / that depend on programs in /usr. After
a brief discussion in #oe, we decided these tests should be disabled so
we can focus on more serious QA issues.

If you are working on a system where / and /usr are on different partitions,
you should turn these tests back on and resolving the QA warnings.

(From OE-Core rev: 2fb58da56e8e7044de21fd10fe9164d204587236)

Signed-off-by: Philip Balister <philip@balister.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:29 +00:00
Laurentiu Palcu
f862f06f32 binutils-crosssdk: do not set .interp size to 0x1000 for partial linked objects
When building the SDK, the final .interp section size should be set to a
bigger value (0x1000) in order to be able to change the dynamic loader's
path later. However, we shouldn't do that for partial linked objects
(when -r or -rU is used). That's because those objects will then have an
.interp section of 0x1000 even if it contains no data and when the final
linking is done we will end up with a "cannot move location counter
backwards" error. That's because the linker will try to squeeze all the data in
the .interp sections found in various partial linked objects into one 0x1000
bytes final .interp section.

[YOCTO #3264]

(From OE-Core rev: b25d0c5fe286e44ded46aefdcbe35ed259087759)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:29 +00:00
Koen Kooi
e2143b3739 image classes: use PN for depends, not IMAGE_BASE_NAME
Some images override IMAGE_BASE_NAME in the recipe causing targets using image-{live,vmdk} to fail.

(From OE-Core rev: 7e000fef0bf917f27dcad66dd90fae6c155c4d1d)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:28 +00:00
Richard Purdie
5ce6418c13 gcc-cross: Explicitly depend on linux-libc-headers
gcc-cross cannot build without linux-libc-headers but doesn't explicitly depend on
it relying on the implied dependency through libc. With cases where pieces
can be installed through sstate, we now need this explicit dependency to
ensure builds with partial sstate work.

(From OE-Core rev: 65e5670ef429bb6c348decb1804e425f1c4d7c61)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:28 +00:00
Richard Purdie
4fbcd2403f sstate: Explicitly define populate_sysroot task relationships
Clean up and clarify the populate_sysroot task dependencies. Target sysroot
packages do need their dependencies installed, as do some target/cross
relationships. We can whitelist the *-initial dependencies as these are
never needed indirectly.

(From OE-Core rev: eeec307917234d97be2674beeadef71599fb1487)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:28 +00:00
Richard Purdie
4b45039be4 sstate: Add a rule for target sysroot requirements from cross dependencies
For example gcc-cross depends on linux-libc-headers and needs it to be present
to build/work correctly.

(From OE-Core rev: 43ce7a1d86bf82d976ad241057a4207b1a340b3b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:28 +00:00
Richard Purdie
cf61ea24d2 build-appliance-image: Add explict dependency on do_unpack
The code called by do_rootfs explicitly needs the code obtained during
do_unpack. If built from sstate, it might not be present so we ensure
it is by adding an explicit dependency. This fixes build failures when
building from sstate.

(From OE-Core rev: 53d3c3caf1894e088ebf10fdf233cdf109b04da6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:27 +00:00
Richard Purdie
56e3fcc387 scripts/sstate-cache-management.sh: Fix stamp handling after recent layout change
(From OE-Core rev: 8df3350d107322380582c807ccc92ea353b543ab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:27 +00:00
Richard Purdie
0c46dad46b scripts/cleanup-workdir: Adpat to new workdir layout
(From OE-Core rev: d967a498cb464c3858dc280db5e67b7e7b281b02)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:27 +00:00
Richard Purdie
14f7c9c9d8 Revert "kern-tools: report missing config fragments by name"
This reverts commit 46cc0d0a2f1486bf541c1a1b11075de3da396cc2 since
the revision in question isn't in the repository.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 08:59:24 +00:00
Constantin Musca
7e2d4ea465 maintainers.inc: Update ownership of recipes
Take Valentin's recipes because he's not working on the
project anymore.

(From meta-yocto rev: de6064a222e59df32e8052e7f11eebc106bba862)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 08:53:05 +00:00
Bruce Ashfield
37c752ab05 kern-tools: report missing config fragments by name
If a configuration fragment was missing, the previous error output
was not clear about the error:

  | [INFO] doing kernel configme
  | [INFO] Configuring target/machine combo: "standard/atom-pc"
  | [INFO] collecting configs in ./meta/meta-series
  | ERROR: could not sanitize configuration fragments
  |    errors are logged in ... linux/meta/cfg/standard/atom-pc/config.log

but we know the name of the missing fragment and can improve the error
message to be this:

  | [ERROR] kernel configuration fragment fragment 'virto.cfg' cannot be found
  | ERROR. A meta series could not be created for branch yocto/standard/common-pc/atom-pc
  | ERROR. Could not locate meta series for atom-pc
  | ERROR. Could not apply patches for atom-pc.
  |        Patch failures can be resolved in the devshell (bitbake -c devshell linux-yocto)

[YOCTO #3473]

(From OE-Core rev: 46cc0d0a2f1486bf541c1a1b11075de3da396cc2)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:33 +00:00
Bruce Ashfield
5fd5ba6a68 kernel-yocto: clarify KMETA branch comments
Having a meta branch is not strictly required by the tools (and
recipes like linux-yocto-custom do not have meta branches), but the
comments in the kernel-yocto.bbclass could lead someone to think that
it was required.

This commit clearifies the comment to the following:

  # We can fix up the kernel repository even if it wasn't a bare clone.
  # If KMETA is defined, the branch must exist, but a machine branch
  # can be missing since it may be created later by the tools.

[YOCTO #3422]

(From OE-Core rev: 421a2e2523a8f2c461479a1c0d44908cc1eaca6b)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:33 +00:00
Bruce Ashfield
01ff7003cd linux-yocto/3.4: uprobes: reinstate config options for 'uprobe' feature
bumping the meta SRCREV to import the following fix:

[
    uprobes: reinstate config options for 'uprobe' feature

    commit 17ec51adfff (meta: cleanup invalid/obselete 3.4 CONFIG options)
    removed the uprobes config options, this restores them.
]

(From OE-Core rev: 8c637986e063fcb087babecfc0192f96d3981515)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:33 +00:00
Bruce Ashfield
1e12ab7af6 linux-yocto/3.0: fix virtio configuration typo
The recent tools updates in master exposed a typo that has existed
in the 3.0 kernel meta data and that breaks the build for boards still
using the 3.0 kernel.

Bumping the meta SRCREV to pickup the following fix:

[
  commit fa9b8c24e84bb9d75d08d197c84c50ce4f99c424
  Author: Bruce Ashfield <bruce.ashfield@windriver.com>
  Date:   Wed Nov 21 09:24:46 2012 -0500

    meta: fix typo in virtio.scc

    virtio.scc was referring to an invalid/incorrect virto.cfg. Fixing
    this typo fixes the build for boards still using the 3.0 kernel.
]

(From OE-Core rev: b16d72a749ac73a2bd0434f36102c00f6c476bc1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:32 +00:00
Richard Purdie
fe21ace36e python-smart-backend: Remove bogus runtime virtual/
At runtime virtual/ providers make *no* sense at all. They also break debian
packaging since the "/" character is not allowed in debian package names.

This patch removes this runtime provider selection code since it is not
workable and breaks builds.

(From OE-Core rev: 887059e9c0082cb4e7fa8b5d7c9646207acd62a6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:32 +00:00
Richard Purdie
a01737e4b2 xf86-video-omapfb: drop
This driver has been superceeded by a dri omap driver. This driver
no longer builds against current versions of the xserver. If someone
wants to do the work to resurect it, that is fine but until that happens
there is no point in keeping broken code in the tree which won't even
compile. It can be easily brought back from git history.

(From OE-Core rev: 75858ad8cb19ee24f2c418515cb9d2b649a4de46)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:02 +00:00
Ross Burton
8043f458f5 xf86-video-omap: don't use AC_CHECK_FILE
Upstream uses AC_CHECK_FILE to find dri.h, but that errors out when
cross-compiling.  Until oe-core 1b0d9cb1801a8eb68c82dfcda5a1da420ac8dd83 this
wasn't a problem because we patched AC_CHECK_FILE to always pass, which was a
nasty hack.

Patch configure.ac to use pkg-config like it should, and not AC_CHECK_FILE.

(From OE-Core rev: a7fe0d17c50d9b38ce33fe39e677da349d1d358c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-22 07:53:02 +00:00
Cristian Iorga
0d7d413d64 build-appliance-image: Update to dee77eca39 commit
There are a lot of improvements in Hob
and a critical fix to bitbake affecting
Build Appliance, so the poky revision
is upped to include these changes.

(From OE-Core rev: 654d5816f8ff696d42d72cfb881d5e51330a79b6)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 20:40:43 +00:00
Cristian Iorga
06124dbeaf builder: fix adduser breakage with password
Build Appliance needs to have for the builder
user a password set. However, the useradd.bbclass
requires the last parameter to be the user's group
name. Previously, the password was the last
parameter to useradd command.
Fixed using the right order for parameters.

(From OE-Core rev: 29f2ae0305b9a3db9632a8fe078fedc88f89a9ad)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 20:40:43 +00:00
Richard Purdie
76950d32f1 Revert "bitbake.conf: Drop obsolete FILESDIR setting"
This reverts commit d6e5ceafcaef06b8a3f9acc2aa826a40a016f913 since
the value is clearly still being used in local file urls that are
only hit at do_unpack time.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 20:40:43 +00:00
Richard Purdie
1b4dcf10b0 ldconfig/cdrtools/icecc-create-env/linuxdoc-tools/python: Set FILESPATH to find -native files
In a small number of cases we need to have ${PN} in FILESPATH rather
than ${BPN}. Rather than hurt readability for all other recipes,
set FILESPATH in these recipes so we can prune the default.

(From OE-Core rev: d61ef6ce86abe5b484a2a2602982f4ded54b3f9a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:04 +00:00
Richard Purdie
e917c7b5a3 classes: Drop do_package stamp-extra-info
This was needed when do_package for target recipes was target specific
however since it now isn't we can remove these stale references.

(From OE-Core rev: 1c54d8c3639659bc8cf8fa2786a1aa9ed785b723)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:03 +00:00
Richard Purdie
73ef532777 utils: Optimise looping in base_set_filespath
Calling split on the same expression, once per loop iteration is
inefficent and pointless, particularly in a function called by
every recipe during parsing.

(From OE-Core rev: 566c0e874fc1610f3f97737b5601ef22026c918a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:03 +00:00
Richard Purdie
e6b313d68e libffi: Use a more standard layout for patch files
(From OE-Core rev: cc2d2abad25a82ce722ac255a631430058f8de30)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:03 +00:00
Richard Purdie
3e0cd7cb67 trace-cmd: Simplify SRC_URI patch entry
(From OE-Core rev: dd4cf48b5a5d181d507356a845fecdbb26f37390)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:02 +00:00
Richard Purdie
bb748a101b matchbox-panel-2: Use a more standard layout for patch files
(From OE-Core rev: 7e78c5901be4d684669146b2f9ab845507156034)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:02 +00:00
Richard Purdie
997ae2809d bitbake.conf: Drop obsolete FILESDIR setting
FILESPATH is the preferred way of finding files now. Having a value
for FILESDIR which defaults to paths which will have already been
searched is pointless at best. This is the final step in letting
us drop FILESDIR support entirely from bitbake at some future date.

(From OE-Core rev: d6e5ceafcaef06b8a3f9acc2aa826a40a016f913)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:02 +00:00
Richard Purdie
05041d3b50 x-load: Replace FILESDIR with FILESPATH
(From OE-Core rev: 0f7ca16c01f6206cd03d103861b77ce2b540c834)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:02 +00:00
Richard Purdie
42b99689de opkg: Drop unnecessary FILESDIR setting
(From OE-Core rev: e869731f80d8c0059b44a7029543b8943fd07653)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:01 +00:00
Richard Purdie
9ed25ef22f qemu_git: Drop unnecessary FILESDIR setting
(From OE-Core rev: 8afa069778aea414856a9f538171d9ab1a2e1dd8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:01 +00:00
Richard Purdie
6177bfb408 gcc: Use FILESPATH instead of FILESDIR and cleanup/simplify
(From OE-Core rev: 4cb359182da00e661fda11a8b31e3611b0df03cb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:01 +00:00
Richard Purdie
15743528b2 build-appliance-image: Simplify fetch/unpack execution
This provides a slightly neater way of ensuring fetch/unpack get
executed (image.bbclass marks them as noexec) since I found the
current approach harder to understand at first glance.

(From OE-Core rev: 84021fd694d0a7bb1e4f49c0f7c46a0fbd178924)

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-11-21 16:56:00 +00:00
Martin Jansa
eaa7c3a371 opkg: drop PACKAGE_ARCH setting for update-alternatives-cworth
* there is warning about update-alternatives-cworth ipk being
  overwritten in "all" feed when opkg is built for more architectures
* see https://bugzilla.yoctoproject.org/show_bug.cgi?id=3390 for details

(From OE-Core rev: 969d10d0aa5537a119ed9be9e8321dbd73d160fe)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:00 +00:00
Stefan Herbrechtsmeier
6809295d2f distutils-common-base: Create staticdev pacakge for static libraries
(From OE-Core rev: 0c4c3ebfedd06b2b8f36747bc0c0d986f05420cf)

Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:00 +00:00
Saul Wold
bf31c85279 gnutls: Update to 2.12.21
(From OE-Core rev: d55c435575410e1865748ba1914443c94ef9de27)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:00 +00:00
Saul Wold
34626c4880 libksba: Update to 1.3.0
Licensing files changes from 1 COPYING to be split.
The Code is marked LGPLv3 or GPLv2 or both in parallel

(From OE-Core rev: 96a29f346f89641eaccdb740e4d21cc4f732768d)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:59 +00:00
Saul Wold
3f42e20742 dhcp: Update to 4.2.4-P2
(From OE-Core rev: f3ca792a470437cb7fc91ca10f220a48da23d6f5)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:59 +00:00
Saul Wold
c6ea431eae libxml2: Update to 2.9.0
(From OE-Core rev: a65ea43e26866ddc60051c52b2eb226507fae346)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:59 +00:00
Saul Wold
787c8a7fb9 resolvconf: Update to 1.68
(From OE-Core rev: 5255d0ba318f1a24b3ea3947304f4b798a1562be)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:58 +00:00
Saul Wold
9a34da5969 mc: Update to 4.8.6
(From OE-Core rev: 27bb231a0a80ee39265ad54047d8dfb0feeeb2bc)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:58 +00:00
Saul Wold
5c93c69df4 man-pages: Update to 3.44
(From OE-Core rev: cdf782fab956f5a3b43b3eb256fa57748175b802)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:58 +00:00
Saul Wold
aae8d68b0f tiff: Update to 4.0.3
(From OE-Core rev: 90ad57fbd72edf44336d0ad2c2e3ec861a641fb3)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:58 +00:00
Saul Wold
3881a549a4 rt-tests/hwlatdetect: Update to 0.85
(From OE-Core rev: 42fc047daa524ce4f1b9b1b2937d75375d796e6f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:57 +00:00
Saul Wold
fbb1228a7f libdumpvalue-perl: Update to 1.17
LICENSE file updated Copyright year to 2012, no other change

(From OE-Core rev: 41f3104d1993f374e9e289ac74f821261808f833)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:57 +00:00
Saul Wold
d1f0ef5a4c libproxy: set LIBEXEC_INSTALL_DIR
This change fixes the following QA Warning

WARNING: QA Issue: libproxy: Files/directories were installed but not shipped
  /usr/libexec
  /usr/libexec/pxgsettings
  /usr/libexec/.debug
  /usr/libexec/.debug/pxgsettings

(From OE-Core rev: b11874ef0b80f8d5150681fc2d6a0ca7a2c8fa06)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:57 +00:00
Saul Wold
d48eac841b libtasn1: Update to 2.14
(From OE-Core rev: 74200da342a8888230a09e063bea396a8f611400)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:56 +00:00
Richard Purdie
e63c406e1d multilib.bbclass: Drop populate_sdk_base exclusion
With this recently introduced exclusion, <multilib>-meta-toolchain-sdk
throws errors about missing DEPENDS that don't exist since it needs the
PROVIDES/DEPENDS remapping. This patch tweaks the class tests to fix
the errors.

(From OE-Core rev: 9cc18fe12bd8d1c73df291b4057aab6167ef6b16)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:55:56 +00:00
Richard Purdie
c206007235 libcheck: Add missing rdepends on gawk and set path correctly
The new version of libcheck needs gawk and we need to ensure the paths are
not taken from the build system.

(From OE-Core rev: 120bea8043d3a05174ed034e20d9094784402824)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 14:43:13 +00:00
Richard Purdie
dee77eca39 bitbake: server/process.py: Change timeout error handling
In normal usage, we never hit the timeout issue. If we do, it becomes obvious
that the current error handling is not good enough. The request may have made it
to the server and the answer will get queued. This means the next command may get
the return value from the previous command with suitably puzzling results.

Without rewriting large sections of code, its not possible to avoid this problem.
It is better to increase the timeout to several seconds giving the server a chance
to respond and if it does timeout, hard exit since recovery is not possible with the
code base today.

I'd be happy to see the structure of this code improved but this quick fix at least
stops corrupted builds from happening which has to be a good thing.

(Bitbake rev: 410c11dd10736873f2dc587fbe9119c38831e693)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 09:22:22 +00:00
Richard Purdie
212397c87b package.bbclass: Adapt debugsrc code to workdir layout changes
With the change to WORKDIR layout, splutting PN and PV into two directories,
the debugsrc splutting code layout became suboptimal. This changes things to
include the information as it was before. Ideally this code would be written
to more generically support other layouts buts it not clear that the tools
would even support that right now so this is the best immediate fix.

(From OE-Core rev: 432cfbb403f0e864d1fad383c2bbb6f9bdb80770)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 09:10:02 +00:00
Ross Burton
6208572a7c mesa-dri: add correct RPROVIDES for the -dev packages
The -dev packages were RPROVIDEing the non-dev names, which is clearly wrong.

(From OE-Core rev: 8d224244a016adc889be132d9994d7c517f7eae3)

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-11-21 09:10:02 +00:00
Richard Purdie
66861cce91 Revert "gcc: Use FILESPATH instead of FILESDIR and cleanup/simplify"
This reverts commit 90616875b4. It was
never meant to be applied as its an incorrect previous development
verison of a patch in progress.
2012-11-20 16:47:11 +00:00
Ross Burton
39ab3f14f2 ia32-base: fix typo in XSERVER_IA32_EXT definition
(From OE-Core rev: 2948fcb2e85d71e3e686760f12e1082dc912f418)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 16:36:42 +00:00
Saul Wold
a859ba5661 maintainers: Tweak ownership of recipes
hwlatdetect -> Darren Hart
python-* -> Bogdan Marinescu
lttng-modules -> Bogdan Marinescu
mtdev -> Ross Burton

(From meta-yocto rev: 6bb4d4802bef31ec0e0ed1e7b6a82bb22af57462)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:58 +00:00
Ross Burton
f85e0ef324 qt4: remove qt4-x11-free bbappend
This bbappend is forcibly enabling OpenGL on atom-pc and mpc8315e-rdb, but as
Poky enables the OpenGL distro feature this option is on for all machines
anyway.

(From meta-yocto rev: cdfa38051f9f39730e612f39227bdee3ea06bf25)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:58 +00:00
Laurentiu Palcu
bad97653b9 yocto-bsp: upgdate configs after xf86-video-omapfb changed name
(From meta-yocto rev: 992c2c469861bfcab45a118ac9ab8887e81f1a11)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:58 +00:00
Laurentiu Palcu
5cea09e3d0 yocto-bsp: update configs after xorg upgrade
There were some changes in the xserver-xorg upstream project that need
to be reflected here too:
 * extmod module was removed completely as it became empty;
 * DRI1, DRI2, DBE (among others) were made built-in;

(From meta-yocto rev: ed681441a2cf06dc55e71035ecbfc637ff83640d)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:57 +00:00
Richard Purdie
9f5e0c6040 qt4-x11-free: Switch to 4.8.3
(From meta-yocto rev: c66e11d47a0419b6c1b2cb5ec6a57106df8e5fb3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:57 +00:00
Seth Bollinger
cbdc81456b bitbake: knotty: Colorize knotty interactive console output
Add bold color output to log level name and standard color output to log msg
when bitbake is run from an iteractive console.  Color output is only
enabled
if the terminal supports color.

Used Jason Wessel's recommendation for transparency on verbose, note and
plain.

(Bitbake rev: 2734240da2cc150f811129a6adf6eb4b2161b204)

Signed-off-by: Seth Bollinger <seth.boll@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:57 +00:00
Cristiana Voicu
e3bda7f986 bitbake: hob: warnings during the build should be displayed in the Issues tab
Any issues encountered during the build (fatal or not) is displayed
in the Issues tab, and the total number of issues is changed.

[YOCTO #3376]
(Bitbake rev: 64c662ab7f09c2e867445e8ba21ea63ae014d45b)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:56 +00:00
Richard Purdie
328f74a556 bitbake: runqueue: Allow partial setscene task coverage
When the setscene code was originally written it was thought that we'd
allow "partial" coverage. For example, if we just want to build the target
"bash:do_populate_sysroot" and its available from sstate, it makes no sense
to install gcc-cross's sstate package as its simply not needed.

Due to various other issues in the codebase, this functionality was
disabled/removed to allow the setscene code and sstate to stabilise and allow
us to concentrate on other problems.

The time has now come to enable "partial" coverage. There are two major changes
in this patch:

a) Creation of an unskippable list. This lists direct dependencies of
   build targets and hence things that cannot be skipped.

b) Addition of a handler which looks at a given setscene target and what depends
   on it and then decides whether its necessary.

(Bitbake rev: 2a937cd6a6c3110030b40bc4d85e349b85cb4db7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:56 +00:00
Richard Purdie
5de7744a49 bitbake: parse/cache/cooker: Preserve order in the file inclusion list
The data returned by get_file_depends() may me used in contexts like
checksums where order is important. The current usage of sets means
that some of the checksums can change in circumstances they should not.

This patch changes to use lists, thereby removing the problem.

(Bitbake rev: a44285fc4109236ab89f7aad0a1fc9220eec19b6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:56 +00:00
Saul Wold
e10bea36ac libcheck: Update to 0.9.9
(From OE-Core rev: 0d856639e8c4fd31c7af222cdb2f37d6a9bec1db)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:55 +00:00
Saul Wold
da3ac77b54 sqlite3: Update to 3.7.14.1
[YOCTO #3283]

(From OE-Core rev: 141ec5567de19d740e147786e25e17dd10e68001)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:55 +00:00
Saul Wold
12bfb5b9e7 builder: Add password for user
This is needed to allow openssh to work correctly for the Eclipse
plugin to have access to the build appliance to view/modify recipes
and lauch builds

Default password is "builder"

(From OE-Core rev: ccf86771bf65e9620385abf20049f355dca391df)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:55 +00:00
Saul Wold
9afb3fc346 sysstat: Update to 10.1.2
(From OE-Core rev: 6e1a032c6a2642399c5d32028c597a5affbedce1)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:55 +00:00
Ross Burton
d9fe5c5dc0 mesa: default to enabling EGL and GLES
Even on systems where Mesa has no hardware support, building the software
renderers is useful for build testing and limited functionality.

(From OE-Core rev: e79987bc4bac1d739f92790f8e9840cd02f073d3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:54 +00:00
Ross Burton
7e0efe18e5 mesa: add -mesa suffix to GL packages, RPROVIDE their generic names
When Debian-renaming, all packages that provide GL libraries get renamed to the
same name, and it's entirley possible for a feed to have multiple GL libraries
in.  This obviously creates conflicts.

Resolve this for Mesa by forcing the package names to be of the form libgl-mesa,
and RPROVIDE libgl.

(From OE-Core rev: 64c77bf395310e55b4d8e0ec754fa19e9034ab35)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:54 +00:00
Laurentiu Palcu
0ed7c53de9 xf86-video-omap: add new recipe to follow the maintained repo
This new recipe is needed because the old driver is unmaintained. This
new recipe will follow the new repo.

(From OE-Core rev: a1d93e6383396dc3ff7cd3a4fccf27895e80af8a)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:54 +00:00
Laurentiu Palcu
f2be9561d9 xf86-input-synaptics: add mtdev dependency
After upgrading xserver to 1.13, multitouch support is automatically
enabled in xf86-input-synaptics. Hence, the need for mtdev dependency.

(From OE-Core rev: 6b2ffa1637d9ae067753102efeb78d1eb42a0b8a)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:53 +00:00
Laurentiu Palcu
fe5256ded5 xf86-video-vmware: Add compat API
Needed after upgrading xserver to 1.13.

(From OE-Core rev: 6eebd1699f9efba834e51a0772eab253184af914)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:53 +00:00
Laurentiu Palcu
69f1b45915 xserver-xorg: upgrade to 1.13.0
The patch contains several aditional changes:
 * removed one backported patch (included in the new release);
 * changed mips64-compiler.patch to apply properly;
 * licence checksum for COPYING file changed: some copyright years have
   been changed;
 * bump PR in xorg-driver-common.inc so that all input/video drivers
   get rebuilt. That's becaue the ABI changed;

The following external modules are now built-in:
 * DBE
 * DRI2
 * DRI
 * RECORD

The extmod module was completely removed.

(From OE-Core rev: 506da0d139dd470475a1d6b2dd3ae62406c36816)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:53 +00:00
Laurentiu Palcu
cb758f9d32 libdrm: upgrade to 2.4.40
Other changes:
 * removed a backported patch;
 * activated libdrm-omap helper layer which is needed by the latest
   xf86-video-omap xorg driver;
 * split libdrm-drivers package into libdrm-radeon, libdrm-nouveau and
   libdrm-omap, libdrm-intel and libdrm-exynos;

(From OE-Core rev: 8b100befe8dcf7523148b6fc14fa2237d07fe556)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:53 +00:00
Laurentiu Palcu
3491c88dfb xkeyboard-config: upgrade to 2.7
A few extra changes:
 * changed the SRC_URI to the new, valid, one
 * added dependency of gettext (do_qa_configure detected is needed)
 * disable runtime dependency checks at configure time

(From OE-Core rev: c67b5e212244f1bac57e8491c6500656786df3a2)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:52 +00:00
Bruce Ashfield
989bc4e4c6 guilt: change upstream tgz location
The kernel.org mirror of the guilt tarball has been missing for a while
and the yocto mirrors have been keeping builds working. Switching to a
debian upstream is better than solely relying on the yocto mirrors for
serving the tgz.

(From OE-Core rev: 71f281f40e25bdd3ea052cb673d06c1a250e618f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:52 +00:00
Bruce Ashfield
e85911e936 kern-tools: flexibility and usability enhancements
Updating the SRCREV to import the following changes.

 [updateme: find the board description with the highest score]

   This removes the requirement that a custom linux-yocto .scc file have
   define KTYPE <foo>, where <foo> is typically "standard". The tools can
   now match on a .scc file that only matches the board, but will still
   chose one that matches the board and kernel type, if available.

 [updateme: allow for tabs or spaces in defines]

   define KMACHINE<tab>$MACHINE was missed by the regex.

 [scc/kgit-meta: detect and avoid duplicating patching]

   To allow feature description to be included multiple times, they were
   previously split into -enable and 'patch' descriptions. With this change
   the patches will be detected as already included, and skipped
   automatically. Removing the need to do this split. It also cleans up
   the ability to warn about multiple includes.

 [kconf_check: add "verify" configuration fragment type]

   This adds the ability for a BSP to have a kernel configuration
   fragment that lists options that must be present. If they are not
   present it is a hard error. "required" is a similar fragment, but
   it adds them to the build, and audits them at the end, but does
   not abort the build if they are present. This is a minor distinction,
   but one that is useful when creating flexible, shared kernel config
   structures.

 [kconf_check: improve kernel audit report formatting]
 [kconf_check: perform validity checks on non-hardware options]
 [kconf_check: cleanups and verbose flag]

   The existing output was verbose and not always useful to the reader.
   This change makes the output more compact, audits non-hardware options
   and gives information

     [invalid (54)]: meta/cfg/preempt-rt/common-pc/invalid.cfg
        This BSP sets config options that are not offered anywhere within this kernel

(From OE-Core rev: 2d328dc0f7dd763c45444394b681d2726b4f6c83)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:52 +00:00
Bruce Ashfield
41d09ca6f0 kern-tools: kconf_check: fix find warning
Bumping the kern-tools SRCREV to pickup the following change:

[
    kconf_check: fix find warning

    When searching for all available Kconfig files, kconf_check was using
    $meta_dir instead of $META_DIR. This resulted in a truncated path and
    the following warning:

      find: warning: -path $oe-path/linux/ will not match anything because it ends with /.

    Using the proper variable removes the warning and make sure that we
    do actually search all relevant directories.

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

[YOCTO #3226]

(From OE-Core rev: 5999ccebc7b071737f82709467e2a2ec152240f6)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:51 +00:00
Bruce Ashfield
2321677289 linux-yocto/3.2: update to v3.2.32 and 3.2.32-rt48
The 3.2 kernel was lagging behind on kernel.org -stable and -rt
updates. Even though no 1.3 BSPs directly use this kernel, it should be
updated for those that may use it.

Sanity test on qemu* for -rt and standard builds.

(From OE-Core rev: 7ad1c853e252bea024043dc79d89405178393c09)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:51 +00:00
Bruce Ashfield
04caf88ec3 linux-yocto/3.4: v3.4.17, v3.4.18, -rt and config changes
Bumping the linux-yocto/3.4 SRCREVs to incorporate the following updates:

  - v3.4.17
  - v3.4.18
  - 3.4.18-rt29

Also incorporating the following meta branch config changes:

  5bd6d0d rangeley: update include to use the new intel-dpdk feature
  4b277c2 dpdk: Add feature Intel DPDK
  3905e74 meta: rangeley: Enable Zlib Compression
  194c5f1 meta: Add a new feature for Zlib
  14cb04d meta: rangeley: Enable AES feature
  8e4dbf6 meta: Add new feature for Ciphers
  7e75c1f enable IPv6 Router Preference (RFC 4191) support
  dfd56d1 Create IPv4 and IPv6 IPSec fragments
  0a85061 rangeley: Add smp support
  1190856 rangeley: Add efi support
  b262e38 rangeley: Add PCI features
  80c9084 rangeley: Add uio and hugetlb support

(From OE-Core rev: 7cc39567cc91955eb3014da6fdbafffa5c3148c7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:51 +00:00
Bruce Ashfield
e5d08fa01c linux-yocto/3.4: bump kver to v3.4.16
The -stable 3.4 kernel has updated versions, so we import 3.4.16 and
make that our new baseline.

(From OE-Core rev: c476046368ed87a400b3a2fd4344fc48aacc0dbc)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:51 +00:00
Bruce Ashfield
a7cd6e3578 linux-yocto/3.4: efi/mmc fixes and fri2 updates
Updating the 3.4 SRCREVs to pick up the following two fixes:

 218bd8d efi: Add patch to fix 32bit EFI service mapping (rhbz 726701)
 b6d08f7 mmc: sdhci: Use DBG() instead of pr_warning() on large timeout

And the following meta branch config updates:

 68a635b fri2: Disable GPIO_PCH for preempt-rt
 2ec32d5 fri2: Add fri2-tiny support
 a7b9607 fri2: Required boot config for fri2
 bed2080 fri2: Remove graphics options from the core fri2 description

(From OE-Core rev: dbd49c9157f933fec9147280a48ce3cda7a697eb)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:50 +00:00
Bruce Ashfield
cd838e8e8a linux-yocto/3.4: nfsd, pci, fishriver and rangely config changes
Updating the 3.4 meta branch with the following configuration changes
and additions:

0541ba5 meta: Rangeley Machine Created
9e3bdb7 meta: Add nfsd kernel features
da9b37d CrystalForest: Enable PCI extended config space for CrystalForest Machine.
628cbe9 meta: Add a new feature for PCI devices.
9c3a2b3 meta: fishriver: remove meta-data

(From OE-Core rev: c11bf4359697f654ff38a32bda5eae71b097d3b8)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:50 +00:00
Richard Purdie
c6c0809aa6 license: We need to run this task before do_build, there is no dependency on do_package
This change means we have more flexibility about when to schedule the license
task and if it changes, we don't repackage everything (which is pointless).

(From OE-Core rev: ee1293446936c5444ece42b60e3ab94189b2fbc3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:50 +00:00
Richard Purdie
f93f43cbb3 bitbake.conf/sanity: Separate versions and PN stamp components into separate directories for WORKDIR and STAMP
This means some of the hacks we have to tell where the package name ends and
the version starts in the directory layout becomes obsolete, simplifying the
work of some of the cleanup scripts. It also makes the layout slightly more
intuitive to the user.

It does force a rebuild onto the user but it will reuse sstate successfully.

(From OE-Core rev: 05075cf3138d1c61f5cf4fe0e1a4587acc00c692)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:49 +00:00
Richard Purdie
265f69a593 image.bbclass: Add missing dependency on do_package data
Since the packaging functions now reference the pkgdata files written out during
do_package, we need to reference this dependency explicitly.

(From OE-Core rev: 1e9c9d164f8d12c8de205e04bf7c1dae3660f12a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:49 +00:00
Richard Purdie
f32ef56cda sstate: Implement a setscene dependency validation routine to allow skipping of some sstate installation
This is a first attempt at logic to determine when a sstate dependency needs
to be installed and when it does not. Its a start at the logic and errs on the
side of caution, as it gets wider testing, we can refine the logic as needed.

This code should allow a significant performance speedup to certain workflows, for
example "bitbake xxx-image -c rootfs" will not populate the target sysroot.

(From OE-Core rev: b43faba37816817edc5240a139361d16e07c6131)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:49 +00:00
Richard Purdie
077291583c scripts/pybootchart: Allow minimum task length to be configured from the commandline
Rather than hardcode the value of "8", allow the minimum task length to be
configured from the commandline using the -m option. "-m 0" means all
tasks will be graphed.

(From OE-Core rev: 30001153d3ce7dadf8f1ec79e634a638a9994518)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:48 +00:00
Richard Purdie
295f1608b0 scripts/pybootchart: Fix missing entries bug
If two entries have the same start time, the data store used will cause
all but one of the entries to be lost. This patch enhances the data
storage structure to avoid this problem and allow more than one
event to start at the same time.

(From OE-Core rev: 220b071fd8d1cc6bdbca58f75489e3c9b34921ca)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:48 +00:00
Ross Burton
6e6dcbe340 flac: fix text relocations
The recent sanity checks were flagging:

 ELF binary '.../libFLAC.so.8.2.0' has relocations in .text

This is caused by hand-written assembler being invoked badly.  Apply a patch
from upstream git that uses PIC instead of relocations.

[ YOCTO: #3461 ]

(From OE-Core rev: 9b5660ee0e507852a02ba5281b571f3e55dffc18)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:48 +00:00
Marcin Juszkiewicz
264ca0fdbe ncurses: update gnu-config files in do_configure()
(From OE-Core rev: 52d4c2cb6cd15f8ebaacc92ddf71274bf7a421d5)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:48 +00:00
Eric Bénard
9ee6b718c1 kmod: fix git repo URL
(From OE-Core rev: 156e0fca979585f72323041f8d8aeafcbd43dfc3)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:47 +00:00
Ross Burton
1f71583dac qt4: remove 4.8.1
(From OE-Core rev: 5f6d7d61d79215ffe38aa6b122ae5ac0af7e859a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:47 +00:00
Ross Burton
4e2de8f749 qt4: remove negative preference on 4.8.3
(From OE-Core rev: 36e42fa771ddd11e169d92dd31d213ba84538012)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-20 15:31:47 +00:00
Richard Purdie
90616875b4 gcc: Use FILESPATH instead of FILESDIR and cleanup/simplify
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-19 21:18:52 +00:00
Stefan Stanacar
9acfef9633 yocto-bsp: update qemu machine.conf template
Update the template with the changes from the last commits to meta/conf/machine/qemux86.conf
Building sato image for a machine created using yocto-bsp with qemux86/x86-64 templates fails because nothing RPROVIDES qemugl anymore so remove support from the template as well.
Also drop redundant glibc configure knobs (they are no longer optional and they don't exist in conf/machine/qemux86.conf anymore so for consistency the template shouldn't keep them).

(From meta-yocto rev: 644c201a8fb9e589cdda1f76385a0b41549ea057)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:10 +00:00
Gilbert Coville
a0123b0168 pulseaudio: explicitly disable xen, rather than letting it detect
(From OE-Core rev: d109b24ad354382cd40b28e86211e53929a0910f)

Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:10 +00:00
Enrico Scholz
527735d136 opkg: added alternatives-ln patch
Use 'ln -n' to avoid dereferencing links to host files.

(From OE-Core rev: e5aef500e11cbf7d1cd20b588fcea2c5fd6b5d0e)

Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:10 +00:00
Enrico Scholz
5a9b80bbb1 binutils: fixed --enable-targets option
There does not exist an '--enable-target=all' option

(From OE-Core rev: 60fe4e80ca5845a0d03f918b80d6e980c13378b9)

Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:09 +00:00
Ross Burton
c2cb4c0645 cmake.bbclass: use DEPENDS_prepend instead of += for cmake-native
Otherwise when a recipe using DEPENDS=, the cmake-native dependency disappears.

(From OE-Core rev: 2b35539d96325d8e687451543d4f52f1a07bf1c6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:09 +00:00
Ross Burton
2d234fbe3f default-providers: add default provider for make
remake PROVIDES make, so we need a default provider.

(From OE-Core rev: 9af884d433d18582b14977eb340cfdfa4801e7fe)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:09 +00:00
Richard Purdie
9e016c4b22 libcgroup/libxkbcommon: Use BPN in SRC_URI
If we don't do this, multilib and other varients using BBCLASSEXTEND
will fail.

(From OE-Core rev: 9a97367038a1e2431bf94211dabbc5aedbbee3bb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:08 +00:00
Jessica Zhang
0ef08c4593 Fix the first line typo of adt-installer
[YOCTO #3384]

(From OE-Core rev: 039e119590b2f3e1d912b446fa68b6cf936d21c2)

Signed-off-by: Jessica Zhang <jessica.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:08 +00:00
Saul Wold
ad0ea7e939 less: Update to 451
LICENSE file was changed to match the BSD-2 Clause

(From OE-Core rev: 4b6a70e60790a32d89e2e5cdded4af83e9d303ae)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:08 +00:00
Constantin Musca
86204fbc69 insane.bbclass: add qa package name check
Check if package names match the [a-z0-9.+-]+ regular
expression

[YOCTO #3139]

(From OE-Core rev: 55dd271be1aee21e36d130359f4f21841623c425)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:08 +00:00
Richard Purdie
2c82669988 sstate: Drop now unneeded python whitelist entries
(From OE-Core rev: 2a9a3e5e3e9229eb11f20eeabef7929014bccd11)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:07 +00:00
Richard Purdie
89bc43e1b2 python: Resolve intermediate staging issues
Its bad practise to poke into the sysroot without knowledge of sstate.

This adds a patch to python allowing us to account for cross compiling
and allow it to find the Makefile/pyconfig.h files without needing them
in the sysroot for do_compile/do_install to complete.

Tested on two architectures and compared with buildhistory with no
significant delta.

(From OE-Core rev: 16da4f75a75dc8020803df9ea73a2a7ead88cc5a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:07 +00:00
Saul Wold
dadb3a7fa7 packagegroup-self-hosted: add sftp server
Which is needed for integration with Eclispe plugin

(From OE-Core rev: 57127ff6f42145bb1a200c8c3267158df637fbfd)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:07 +00:00
Saul Wold
e803ac0bee psmisc: Update to 22.20
(From OE-Core rev: e4fc11305e2e09b2883cb455e0772a01e9f6dd4a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:06 +00:00
Saul Wold
bc80f0e507 kconfig-frontends: Update to 3.6
(From OE-Core rev: 3fb19c1044b46ee7b0d898af4fc6f46bbd957b2f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:06 +00:00
Saul Wold
113852387e mx: Update to 1.4.7
Source moved to GitHub

(From OE-Core rev: 1f2f35ba7607b503af2cdf51a459c6de786f554d)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:06 +00:00
Saul Wold
374960bd8c pulse: fix Bashism in string test
(From OE-Core rev: 342daf26eaf0d885278b06b8d820db238cbf4d61)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:05 +00:00
Richard Purdie
4d019c038c make-3.82: Add patch for archive expression expansion issues
bitbake make-native; MACHINE=qemuarm bitbake icu

would fail with:

*** No rule to make target `uconvmsg/libuconvmsg.a(uconvmsg/uconvmsg_dat.ao', needed by `uconvmsg/libuconvmsg.a'.  Stop

which is caused by a bug in make 3.82 which the attached patch fixes.

(From OE-Core rev: 06e64233a3a00a3c60fab7d92cbb18cd9feadc8d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:05 +00:00
Laurentiu Palcu
bd6c5ffaf5 xf86-input-synaptics: add mtdev dependency
After upgrading xserver to 1.13, multitouch support is automatically
enabled in xf86-input-synaptics. Hence, the need for mtdev dependency.

(From OE-Core rev: 03d787efe0d83b20155508811f901b05a910940c)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:05 +00:00
Laurentiu Palcu
394ba7abd0 mdadm: upgrade to 3.2.6
(From OE-Core rev: c7aacc09c4d3d68bdd6fa7419a7ea1c2b2a007ae)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:04 +00:00
Laurentiu Palcu
657ed11b29 fontconfig: upgrade to 2.10.1
A couple of changes:
 * licence snippet in fccache.c moved down the file;
 * new files appeared in this version, added them to fontconfig package

(From OE-Core rev: f6ca099d9cbd2ed1c181e8e91cc16d0550701f26)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:04 +00:00
Laurentiu Palcu
8b8fd8cc3a xcb-proto: upgrade to 1.8
(From OE-Core rev: dd378e8bd3419219585968158be1972bffa57247)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:04 +00:00
Laurentiu Palcu
2ef5965453 xf86-input-mouse: upgrade to 1.8.1
Licence chacksum changed because Red Hat added a copyright line.

(From OE-Core rev: 00c892acc24860c26fe658ff96cfa002a1c96410)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:03 +00:00
Laurentiu Palcu
9e4ef9e814 xf86-video-intel: upgrade to 2.20.12
(From OE-Core rev: 31ade27a9d6011ff3a96aa2ef81be662f83c640f)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:03 +00:00
Laurentiu Palcu
eed09cfb7f xf86-video-vesa: upgrade to 2.3.2
(From OE-Core rev: efdf6fc1cdbd5427eb94b034b2adc6a45a351b75)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:03 +00:00
Mark Hatle
a0d1ac7999 python-smartpm: Add basic knowledge of RPMSENSE_MISSINGOK
Currently smart does not support recommend dependencies.  Add the first set
of 'support' for RPMSENSE_MISSINGOK (the flag that makes something a
recommend).  This initial support ends up ignoring the recommendation, but is
written in a way that it will be the basis of eventual support.

(From OE-Core rev: 4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:03 +00:00
Mark Hatle
11af6b042c rpm: Add additional RPMSENSE values to python module
We add a number of additional RPMSENSE values to the python module to better
support the dependency calculations in SMART.

(From OE-Core rev: 431352d063b353ee0e0eaa5bfe24450962d71d6b)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:02 +00:00
Mark Hatle
3d8fd40f9f python-smartpm: Add smartpm recipe
This is the initial integration, basic functionality such as 'smart query'
has been tested.  Active use of remote feeds and such has not yet been
verified.

Thanks to Paul Eggleton for corrections and bug fixes for the initial
integration.

(From OE-Core rev: 92182ca88aff9cec04b2af5e9babaf33bf61f0af)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:02 +00:00
Mark Hatle
4dd9d39dca rpm: Slightly change the way python-rpm is constructed
If python support is enabled we want to make sure that the RPM python support
is packaged properly.

Move the components into the site-packages directory, move the .la files to a
new -dev package.

Add "rpm" as a dependency of python-rpm, otherwise rpm and the associated
libraries won't be available.

Fixup python wrapper to handle automatic relocation, as supported by the
vendor WINDRIVER configuration.  (Based on a patch from Paul Eggleton)

(From OE-Core rev: cd0473a145cec51be736b6141b0b18a82b64d483)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-18 16:42:02 +00:00
Richard Purdie
9e0d3c0faa sstate: Bump version number to deal with layout fixes
The recent preveeding sstate directory layout fixes made the code do what it
was originally intended to do, as can be clearly seen from the code.
Unfortunately this changed the contents and layout of the sstate files
themselves since the bug was leading to a directory prefix being missing.

This is now resulting in chaotic messages on the console since things
are getting confused with the two different layouts. The simplest way to
resolve this is to bump the version number, hence moving the new layout
into its own new namespace.

Its worth noting that whilst the failure messages are scary, the failure
mode is relatively harmless since it will just fall back to building the
data rather than installing from sstate.

Usually I'd give more notice of a change like this but under the
circumstances, I'm just going to push this in to resolve the failures
people are seeing. Initially I thought the problem was limited to
some of the -cross packages and therefore of low impact but that is
clearly not the case.

(From OE-Core rev: b53ea6687b6201c8c5ab5cb0d2a845ef7e7b2abe)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 23:37:45 +00:00
Christopher Larson
1fd9a16d2a bash: fix mkbuiltins build failure
On hosts with FORTIFY_SOURCES, stringize support is required, as it's used by
the macros to wrap functions (e.g. read and open in unistd.h). Those wrappers
use the STRING() macro from unistd.h. A header in the bash sources overrides
the unistd.h macro to 'x' when HAVE_STRINGIZE is not defined, causing the
wrappers to generate calls to 'xread' and 'xopen', which do not exist,
resulting in a failure to link.

Assume we have stringize support when cross-compiling, which works around the
issue.

It may be best for upstream to either give up on supporting compilers without
stringize support, or to not define STRING() at all when FORTIFY_SOURCES is
defined, letting the unistd.h one be used, instead.

(From OE-Core rev: f7a25dd72d1d463eb72d48c6f9dd968d376496c0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 15:58:08 +00:00
Richard Purdie
aa75269454 sstate: Fix various path manipulation issues
Fix missing parameter to endswith and pass paths through normpath to remove
any duplicate "/" characters which would corrupt other calls like basename.

(From OE-Core rev: 172a74c540378149eec493c37c030e9f42f9603d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 15:58:08 +00:00
Christopher Larson
c176e5a3fe bitbake: knotty: kill duplicated import of 'time'
The duplicated import could result in an UnboundLocalError.

(Bitbake rev: a098cebd5c33ebd704efd35d9e655262283cbe1f)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:39:07 +00:00
Richard Purdie
68b7f18edd utils.bbclass: Fix documentation of create_cmdline_wrapper
(From OE-Core rev: 56160ca49dd546b7db07ae2021eefef7279b0f10)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:28 +00:00
Richard Purdie
2c494b2090 classes: Be consistent about sstate-inputdirs/outputdirs ending with '/'
If sstate-inputdirs and sstate-outputdirs don't match with ending '/'
characters, the manifest file can end up corrupted. This change
ensures the metadata is consistent in ending do_populate_root tasks
with this character to avoid manifest file corruption.

(From OE-Core rev: 3910eaf88d14904eef85b9e391387547df7fc54e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:28 +00:00
Richard Purdie
19ecc264f8 sstate: Be consistent about sstate-inputdirs/outputdirs ending with '/'
The manifest file can become corrupted if sstate-inputdirs and sstate-outputdirs
don't have matching endings. This patch ensures that even if set incorrectly,
the code functions as intended, thereby handling manifest corruption safely.

(From OE-Core rev: 0109a3623a19f9ae289952a4f054e53c3eca4eaa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:28 +00:00
Richard Purdie
78ac027f2a python.inc: make lsb override more concise
No functionality change, just a readability improvement

(From OE-Core rev: 7a27f95c2800285d7f97fead616620bfd7dabbe3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:27 +00:00
Richard Purdie
745b146a37 libc-common: Ensure sysconfdir exists before installing files to it
Depending on the eglibc configuaration, the directory may or may not exist.

(From OE-Core rev: aa89b80a42297196c7bbba55fe2396ba1f98acc7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:27 +00:00
Denis 'GNUtoo' Carikli
c2ea0816af boost: Activate zlib and bzip2 because they now work.
This patch is needed for making wesnoth(will be sumbited
  in meta-games) work.

[RP: Add missing bzip2 dependency]
(From OE-Core rev: 9987998d7431fb33b12a7e210024a8193b43e717)

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:27 +00:00
Robert Yang
41125ddc86 bitbake: print clear message for "bitbake -e ASSUME_PROVIDED"
"bitbake -e ASSUME_PROVIDED" should fail, but the error message wasn't
clear enough in the past:

$ bitbake -e bzip2-native
[snip]
ERROR: Command execution failed: Traceback (most recent call last):
  File "/buildarea/lyang1/poky/bitbake/lib/bb/command.py", line 94, in
runAsyncCommand
    commandmethod(self.cmds_async, self, options)
  File "/buildarea/lyang1/poky/bitbake/lib/bb/command.py", line 323, in
showEnvironmentTarget
    command.cooker.showEnvironment(None, pkg)
  File "/buildarea/lyang1/poky/bitbake/lib/bb/cooker.py", line 325, in
showEnvironment
    fnid = taskdata.build_targets[targetid][0]
KeyError: 0
[snip]

With this patch, the massage will be:
[snip]
ERROR: bzip2-native is in ASSUME_PROVIDED
ERROR: Command execution failed: Exited with 1

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

[YOCTO #3392]

(Bitbake rev: f31447dac92454c822d4ebb7dd48e96c6c69dde4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-13 14:21:16 +00:00
Cristiana Voicu
4e2b5a5929 bitbake: hob: hob was freezing because it doesn't receives well the log file
-after pressing "build image" button, hob was freezing because it didn't
receive well the log file

[YOCTO #3398]
(Bitbake rev: e3619e34d43c3f7725fc83c362d8cbd07e153ebe)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-13 14:11:24 +00:00
Ross Burton
7e1e3066e3 mesa-demos: fix --with-glut check
The GLUT check was automatic and couldn't be disabled, so mesa-demos would gain
a GLUT dependency if it was present when built.

So, fix configure.ac so that --without-glut works as expected.

(From OE-Core rev: fa7fb44d1ca2b8a57509806bde19672c68ef157d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 22:32:08 +00:00
Ross Burton
fe16cbc6ed initrdscripts: fix udevd in the live boot init scripts
udevd moved location and isn't in $PATH anymore, so use an absolute path to
start it.

The control socket path moved too, so mkdir the directory it's in.

Mounts the new devtmpfs on /dev device tree.

(From OE-Core rev: 543606e5dc379497c34196d004a214e847f5db2d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Alexandru Damian <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 22:31:20 +00:00
Ross Burton
9cc79b2f4d libunique: fix compilation with GLib 2.34
The new GLib has deprecated some functions, and libunique was building with
-Werror.  Take a patch from upstream to update the build system and rationalise
the warning flags.

(From OE-Core rev: 713e1c82d32a477be84951d1dba8326b0342c8ca)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 22:31:20 +00:00
Richard Purdie
e5822cf6c8 poky.conf: Enable warning on textrel QA check
(From meta-yocto rev: 069e8eff981f0d38d3f5161b2b505273fd8e1b50)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:42 +00:00
Bogdan Marinescu
960331188d upstream_tracking.inc: update for 1.4 planning
Updated upstream_tracking.inc with the corresponding manually
checked packages.

(From meta-yocto rev: e4c95a964025e1d92a918b8e65ea40c5ad6bc627)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:41 +00:00
Cristian Iorga
eae032a255 upstream_tracking.inc: update according to YP 1.4
Updated upstream_tracking.inc with manually checked packages.

(From meta-yocto rev: 2d4099866273b9f7bcc01c350b1c69399227c70c)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:41 +00:00
Radu Moisan
8e0d0c545a upstream_tracking.inc: Update hdparm
(From meta-yocto rev: d416abd18cae5297b8bd0a0be0d26eb6a6e954ff)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:41 +00:00
Radu Moisan
5e517c8fc1 upstream_tracking: update for 1.4 planning
Updated upstream_tracking.inc, mainly CHECK_DATE.

(From meta-yocto rev: dc8b41b85505c6a488ce7095462d0df63c50bbb6)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:40 +00:00
Saul Wold
c476a8c9b7 upstream_tracking: Update for 1.4 Planning
The following need updating based on this review:
kconfig-frontends
libcheck
sqlite3
libmad
less
sysstat
psmisc

(From meta-yocto rev: eb8a7ae6e14545e2d7734568660450fa56ef5ec9)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:40 +00:00
Saul Wold
fd17ed4a8a maintainers: Update file with missing maintainers
(From meta-yocto rev: 289b4b5c1e660776270d2c72ffb9322758feaf96)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:40 +00:00
Phil Blundell
fa73df62c6 insane: detect and warn about relocations in .text
(From OE-Core rev: bc08838ddab0d16d889f81244529a0302a9240bc)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:39 +00:00
Constantin Musca
210839e7a5 libxslt: upgrade to 1.1.27
pkgconfig_fix.patch: adapted to the new version

(From OE-Core rev: 960ad0998a9edbefe57d08b6f587682f0dc9d768)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:39 +00:00
Constantin Musca
d69683f230 puzzles: upgrade to r9660
License checksum change due to diff:
4,5c4,5
< K�lker, Dariusz Olszewski, Michael Schierl, Lambros Lambrou and
< Bernd Schmidt.
> K�lker, Dariusz Olszewski, Michael Schierl, Lambros Lambrou, Bernd
> Schmidt and Steffen Bauer.

(From OE-Core rev: dbf89870ae2eade8210ef6bbc9c13be17336ea68)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:39 +00:00
Ross Burton
1815a99f9f mesa: remove python2 detection hack
Our python-native is 2.7.3 which ships python2, and we've been patching it in to
earlier versions since September 2011.

(From OE-Core rev: 1961ea1493caf5fe2959db2a11831a4a5a17eaeb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:39 +00:00
Laurentiu Palcu
c04f54352f populate_sdk_base.bbclass: use SDK_ARCH instead of SDKMACHINE
If SDKMACHINE is not set, the toolchain will be built but the tarball
installer will not run. A better choice is to use SDK_ARCH because, even
if SDKMACHINE is not set, SDK_ARCH is set, by default, to BUILD_HOST.

(From OE-Core rev: b6d391903ae8baf902fa142a58533857ade6afd3)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:39 +00:00
Ross Burton
35d5e2f67a glib-2.0: upgrade to latest stable, 2.34.1.
Also explicitly disable the test suite (as we can't run it), subsequently
dropping 60_wait-longer-for-threads-to-die.patch and nodbus.patch.

nolibelf.patch has been merged upstream, drop.

Upstream has dropped the pre-generated man pages, to generate them again we'd
need libxslt and the DocBook infrastructure.  We can live without the man pages
as those build-dependencies are non-trivial.

(From OE-Core rev: ce5fcad59fff19dbffc2d7b49c0c8bf3701d17ed)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:38 +00:00
Ross Burton
970aa6dd06 glib-2.0: remove zip build dependency
This dependency mysteriously appeared a long time ago for no good reason, remove
it.

(From OE-Core rev: 5e2fdfcbe71f0b6a786ef609e288c0999000e163)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:38 +00:00
Martin Jansa
7ee2410825 qt4: remove -lGLU from QMAKE_LIBS_OPENGL in our linux.conf
upstream does not need GLU since:
commit e7eed096a0c33607a7a37baaf06e5952dc9d556b
Author: Bj<C3><B8>rn Erik Nilsen <bjorn.nilsen@nokia.com>
Date:   Mon Aug 9 14:07:01 2010 +0200

    Remove dependency of OpenGL Utility Library (GLU).

    GLU is not part of standard OpenGL and is not used internally in Qt,
    so we should not depend on it.

    Task-number: QT-12227
    Reviewed-by: kim

(From OE-Core rev: 181874ba8033535bb4ce2b36725ae0a71c27b3bd)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:38 +00:00
Ross Burton
e828faf027 xorg-driver-common: remove AC_CHECK_FILE workaround
The drivers don't generally use AC_CHECK_FILE anymore, so remove this
brute-force kludge. Any subsequent breakage can be worked-around in the recipe
and fixes submitted upstream.

(From OE-Core rev: 1b0d9cb1801a8eb68c82dfcda5a1da420ac8dd83)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:37 +00:00
Ross Burton
7ea8496ce0 meta: remove redundant _FOR_BUILD variables
(From OE-Core rev: acabd2158d9004dedfdfad8c170b77d32684f3fc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:37 +00:00
Ross Burton
85bfe3c931 autotools: set _FOR_BUILD variables here
(From OE-Core rev: edf30561184ec42e5692a55fdf93304fac0fdb1b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:37 +00:00
Richard Purdie
78983e939a lib/oe/classextend: Ensure we don't extend expressions more than once
We could end up with MLPREFIX being prepended to variables like
PACKAGE_DYNAMIC. This patch avoids the problem and unbreaks builds.

[YOCTO #3389]

(From OE-Core rev: 5e4714a454f9f742bf8af70dad2aa66ccb87e3fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-06 09:34:47 +01:00
Richard Purdie
e421e95de0 gnome-desktop: Now we depend on gnome-common-native, use the correct sysroot
This fixes the build after gnomebase was changed to depend on
gnome-common-native.

(From OE-Core rev: e57278dfde1f975fa34e72354749bbc91380f36b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:32 +00:00
Ross Burton
f3fc98db52 gnomebase: depend on gnome-common-native
gnome-common is a build-only dependency so we should depend on the native
variant.  This also resolves an (incorrect) GPLv3 license issue in gnome-common
at build-time.

This will also remove the pointless gnome-common-dev RRECOMMENDS in any -dev
package that uses gnomebase.

(From OE-Core rev: 6a4f394bc1280f5d58d928a2f7cff7cce4eb3b2b)

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-11-02 16:18:31 +00:00
Laurentiu Palcu
ce7e817b49 populate_sdk_base.bbclass: check installation machine before installing SDK
Do not allow installer to continue if the installation machine architecture
does not match the intended SDK machine architecture.

[YOCTO: #3269]

(From OE-Core rev: 1f78e2c97f978f0f02e884870e7c495751f0802c)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:31 +00:00
Ross Burton
97469db0cb gnome-common: Fix license
gnome-common 2.28 is GPLv2+.  From Christian Persch, upstream:

  The licence is presumed GPL2+, although it's not there explicitly.  GPL2+
  because as far as I could figure out when I tried to, gnome-autogen started in
  gnome-core which had a GPL2 COPYING file.

(From OE-Core rev: 1d1532f495041ac58aeafd06781ac87ee3bd3f6a)

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-11-02 16:18:31 +00:00
Khem Raj
4260403c65 bitbake.conf: Add udev rules into ${PN} files by default
As we move to systemd, udev is not provided by systemd where the arch
independent files are stored in /lib and /usr/lib and not in
${base_libdir} and ${libdir} which means the files like udev rules
go into /lib/udev or /usr/lib/udev. This patch adds these paths
to be packaged into default ${PN} output package from a recipe

(From OE-Core rev: 6cbc0c7bf3f35e18f0abd29e5a704fba55f88ab2)

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-11-02 16:18:30 +00:00
Kang Kai
e48fe4ed7a create-recipe: update re pattern and output
In the URL, there may be more than just digits in the version section,
something like xz 5.1.2alpha. Update RE pattern to catch all the string
after package name and before '.tar' in URL as package version.

And error message which has been sent to /dev/null still shows on Ubuntu
12.10 with perl 5.14. Update the way to find source tar file to eraser
the error message.

configure files may rewrite the version section, and that is not necessary.
Test when version section has been set, omit the version value from
configure files.

And tweak for output to bb file.

(From OE-Core rev: 17f09ab713acc814ec0561b1c41fa87d9bf7b83f)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:30 +00:00
Chen Qi
7f6edde6af hwclock.sh: improve hwclock.sh script to use UTC variable
Make UTC variable in /etc/default/rcS has effect on hwclock.sh.
This variable declares whether the Hardware Clock is kept in UTC
or local time. Default its value to "yes" and change the comment.

[YOCTO #3341]

(From OE-Core rev: 2bda4bbda3f3033cfb324778ef88f2aedad4a83b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:30 +00:00
Robert Yang
aea2d8c02c recipes-devtools: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: bb67ddeb2eed3e25c626a279ef53a7e8c7bfe6f2)

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-11-02 16:18:29 +00:00
Robert Yang
d005b787df recipes-extended: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 528b4ab831c7b0bc1412318d29e2b7f9cf711d57)

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-11-02 16:18:29 +00:00
Robert Yang
cc1f50fca8 recipes-graphics: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: db1a03da3a6a6e7adb68e28883204adfaa8b3f47)

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-11-02 16:18:29 +00:00
Robert Yang
5ddf8570a1 recipes-support: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

NOTE:
There were 2 errors in libcap.inc, the BUILD_LDFLAGS_virtclass_native
should be BUILD_LDFLAGS_virtclass-native (the "_" should be "-"),
otherwise it doesn't work, and the value was: "-Wl,rpath=...", this is
incorrect, it shoudl be: "-Wl,-rpath=..." (lacked a - ), but we don't
need this line, since it is already in the default BUILD_LDFLAGS. Remove
it and we don't need to bump the PR since we just removed a unused line.

[YOCTO #3297]

(From OE-Core rev: cafb550fe9034754933f1708446dde155dcc3d51)

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-11-02 16:18:28 +00:00
Robert Yang
60c3bd4394 recipes-gnome: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: d37944fff256e9f52d05a56db3edb42c7a352cce)

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-11-02 16:18:28 +00:00
Robert Yang
a59b113c67 recipes-kernel: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 7c7da0af592647be0ab9ab37a8ad2a7ce4890a46)

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-11-02 16:18:28 +00:00
Robert Yang
841107b78c recipes-connectivity: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 37429a94133c0d0bfae71d1d4329aee6dd5eb98b)

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-11-02 16:18:28 +00:00
Robert Yang
51c7ad682f classes: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 9fbeab63315fef0dbcc91c5e7051665764758a6e)

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-11-02 16:18:27 +00:00
Robert Yang
ffec48ad4e conf: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 651c6fd6ef8be17ecba53f8054d24d1077198d5b)

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-11-02 16:18:27 +00:00
Robert Yang
5d94d29f55 recipes-core: replace virtclass-native(sdk) with class-native(sdk)
The overrides virtclass-native and virtclass-nativesdk are deprecated,
which should be replaced by class-native and class-nativesdk.

[YOCTO #3297]

(From OE-Core rev: 5193485a42dfb3396d0f12aaa7732c5db29d7338)

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-11-02 16:18:27 +00:00
Jack Mitchell
74bb195f9f babeltrace: fix depends
(From OE-Core rev: 0c1c0a890f6e99608eda3d20a6b89027a2c72e96)

Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:26 +00:00
Jack Mitchell
627fd60c8c packagegroup-core-tools-profile: include sysprof only if x11 is distro feature
(From OE-Core rev: 9dd277e3276aef918e4bb84322043db0b4e68e11)

Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:26 +00:00
Jack Mitchell
141ecebf2e latencytop: disable GTK and remove gtk+ dependacy
When DISTRO_FEATURES does not contain x11, disable GTK GUI and
also don't add gtk+ to the DEPENDS

(From OE-Core rev: 1b41a4660d0dd8f1863bb94d08562927cc108ee1)

Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:26 +00:00
Daniel Stone
662a445b30 mesa: Build separate GLU library
Mesa has removed GLU from the core tree upstream, so remove it from the
Mesa build and add the separate tarball as a new recipe.

(From OE-Core rev: 4395691a44b198ba0b9a969cbade669e8de07a4f)

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 16:18:25 +00:00
Richard Purdie
ad9ad06056 terminal: Ensure existing environment exports are preserved in devshell
After recent changes to terminal.bbclass, variables like PATH were no longer
preserved within the devshell. This change ensures they are inherited into
the environment of devshell and PATH for example has the correct values.

(From OE-Core rev: f2dfc50bdf403719d40d04488245fd37655b5480)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-02 11:27:54 +00:00
Richard Purdie
05a1f4a5a3 terminal.bbclass: Ensure parent environment is set
If this isn't done, various terminals fail to launch correctly
with "No such file or directory" errors. This adds back the environment
manipulation removed in the addition of "custom" terminal command
support but shouldn't regress that additional functionality

(From OE-Core rev: 424d2339b462081010af6e7525a71f64d97ff05e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-01 11:49:25 +00:00
Christopher Larson
c1c20c02a0 bitbake: command: add error to return of runCommand
Currently, command.py can return an error message from runCommand, due to
being unable to run the command, yet few of our UIs (just hob) can handle it
today. This can result in seeing a TypeError with traceback in certain rare
circumstances.

To resolve this, we need a clean way to get errors back from runCommand,
without having to isinstance() the return value. This implements such a thing
by making runCommand also return an error (or None if no error occurred).

As runCommand now has a method of returning errors, we can also alter the
getCmdLineAction bits such that the returned value is just the action, not an
additional message. If a sync command wants to return an error, it raises
CommandError(message), and the message will be passed to the caller
appropriately.

Example Usage:

    result, error = server.runCommand(...)
    if error:
        log.error('Unable to run command: %s' % error)
        return 1

(Bitbake rev: 717831b8315cb3904d9b590e633000bc897e8fb6)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-01 11:46:22 +00:00
Cristiana Voicu
99fa251b56 bitbake: hob: providing details about process state through porgress bar
-small changes to the text of the progress bar when parsing recipes

[YOCTO #3282]
(Bitbake rev: 90c0dfc39c3ce13e53c7c91168dc3401f7df476b)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-01 11:46:22 +00:00
Richard Purdie
e450b10c4c bitbake: bitbake/server: Remove dead console log code
This code is dead and doesn't do anything so lets remove it.

(Bitbake rev: 8d45739f49618757a5d7d79782deda355e3981ec)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-01 11:46:21 +00:00
Richard Purdie
f5acdd87bd bitbake: cooker.py: Don't dump the environment into the console log file
Dumping the environment data into the console log files directory is
invariably not what the user wants or expects and leads to confusion
when looking at the log directory.

This change forces the logs to be disabled by default when using
the -e option.

(Bitbake rev: 5d825b31d1133e41d3982db1b94f6a30a6fb99f7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-01 11:46:21 +00:00
Richard Purdie
62651064d1 bitbake: uihelper: Set update flag when start event encountered
Its a minor correctness detail but the update flag should be set
when Start events are encountered.

(Bitbake rev: 96683ed68e11672ff22fb4a291d2628676c136f0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 16:55:40 +00:00
Richard Purdie
44c5d3dc84 bitbake: knotty: Ensure last tasks are disaplyed correctly in the footer
There was an issue where the last tasks run by bitbake would not
correctly get displayed in the knotty footer. This was due to the
total count including active tasks. This change ensures the footer
is displayed if the are any running tasks.

(Bitbake rev: d787e4efc106589811651bc18ca48d5223443b95)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 16:55:39 +00:00
Phil Blundell
e9e3285e13 openssl: Use ${CFLAGS} not ${FULL_OPTIMIZATION}
The latter variable is only applicable for target builds and could
result in passing incompatible options (and/or failing to pass
required options) to ${BUILD_CC} for a virtclass-native build.

(From OE-Core rev: 0e90a303bc5cb0ede21ff4346843f9daeddfff45)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 11:06:38 +00:00
Richard Purdie
4801ed7915 udev: Ensure tmpfs are mounted and volatile/run exists
There is a race with udev where eiher the run directory can get replaced
during bootup leading to ude errors, or if the tmpfs was mounted and
populate-volatiles hasn't run, udev won't start at all.

This ensures that any tmpfs get mounted before udev starts and that the
default volatiles/run directory at least exists, fixing the races
and boot time errors caused after the recent udev upgrade.

(From OE-Core rev: fbec192f6bc41a335ede85843ba22a89d13501ab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 11:06:38 +00:00
Richard Purdie
656979f206 udev: Use correct variable in udev.conf for run_path
(From OE-Core rev: 6e4a1743a88fe6a002ca8f784b2dad3f493984b5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 11:06:37 +00:00
Phil Blundell
cecba78331 polkit: remove license.html from LIC_FILES_CHKSUM
This is a generated file and gets removed by "make clean" which then
causes subsequent rebuilds to fail.  Also, the content in this file
is taken verbatim from COPYING (which is already in LIC_FILES_CHKSUM)
so checking it for a second time doesn't accomplish much.

(From OE-Core rev: df7817649cc62bfef04a5c1aab97f7964e6bd76c)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-30 11:06:37 +00:00
Cristiana Voicu
93c04c16e4 bitbake: hob: reordering the layers in the Hob Layers dialog
-since the order of the layers can potentially impact
the build outcome, users should be able to reorder
the layers within the layers dialog;
-used TreeView Drag and Drop

[YOCTO #3270]
(Bitbake rev: 2bd9a00facb90f7d76a9bdaa86ca765fb2159e71)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:55:55 +01:00
Cristian Iorga
30d1943a79 bitbake: hob/hig: Hob doesn't save properly proxy settings
User introduced proxy settings were not saved
when a proxy details input dialog was opened.
The proxy settings were lost upon return, and
restored from the previously stored one.

Also:
Code cleanup:
details_cb() function duplicate definition
removed

Fixes [YOCTO #3240]

(Bitbake rev: aa64b2e472f8a9713e3dc25647aa2cae474e2622)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:55:55 +01:00
Cristiana Voicu
55cdbd516d bitbake: hob: during recipe parsing, progress bar text provides details about the process state
- indicating on progress bar that hob has gone from parsing
recipes to "Generating dependency tree"; this will provide
some visibility of what has caused the "stop" button state
to change

[YOCTO #3282]
(Bitbake rev: d964d04ff1f59a590bd3ab5430517d79e92536d0)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:55:54 +01:00
Cristiana Voicu
a9c563b1b5 bitbake: hob: add a progress indicator when you select 'view log'
- created a new file named "hobthreads.py", defining a thread
for opening the log file in a subprocess using subprocess module;
in the future I think we will add some other threads here, to
implement some other performance issues
- on "builddetailspage", "packageselectionpage" and "imagedetailspage"
I have changed the manner for opening the log file; it uses the thread
to open the file, and on main thread it creates a dialog to show a
progress bar, which pulses till the file is open
- this was added because when the log file is big, it takes time to
be opened; on the dialog you can use "Cancel" button to terminate the
process initiated to open the file

[YOCTO #2997]
(Bitbake rev: 165362a63f085991b6bab63ab90a0c7b9bf6b784)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:55:54 +01:00
Andy Ross
e281bb3e35 udev-extraconf: Don't mount root filesystem under /media
The mount.sh handler attempts to prevent already-mounted filesystems
from being mounted as dynamic/removable "/media".  But it misses the
case where the kernel has mounted the root filesystem (e.g. with
"root=/dev/sda1").  In that situation, /proc/mounts has a device name
of "/dev/root" instead of the proper $DEVNAME string exposed by udev.
So we must also test the root filesystem device number vs. the
$MAJOR/$MINOR udev tells us.

(From OE-Core rev: 3543d0db691e82098c1da7bf12f43e0c57551a3d)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:47:08 +01:00
Andy Ross
2e24eb2cb7 busybox: add /usr/bin/stat applet
The busybox defconfig lacks a stat tool, the functionality of which
cannot be reproduced in a way accessible to a shell script running in
a minimal configuration.  Enable, and modify the installation path to
/usr/bin/stat to match the coreutils tool for proper alternatives
handling.

(From OE-Core rev: ef7e1239b95dbef4e461007d6d0612c27a7919ec)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:47:07 +01:00
Tom Zanussi
4b40886d4c lttng-modules: remove unused lttng-syscalls patch
commit b7e184508 (lttng-2.0: fix srcrev/pv to match the recipe
filenames) removed the
lttng-sycalls-protect-is_compat_task-from-redefiniti.patch from the
SRC_URI but forgot to remove the patch itself.

(From OE-Core rev: 6745b927a40e523cfda4ce2ca6422d69a6791e8a)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:45:00 +01:00
Khem Raj
ddd4dd8aa6 bitbake.conf: Change systemd_unitdir definition
systemd_unitdir indicates the arch independent
files which are basically scripts and unit files
and systemd wants then to be in /lib always even
when base_libdir is  /lib64, hence we have to reflect
that and not use base_libdir to define it. Otherwise
on architectures where base_libdir is lib64 e.g. ppc64
or multilibbed x86_64 this wont work

(From OE-Core rev: 50e713d4ae35f9b5f5f2a515a95d77573610d707)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:45:00 +01:00
Mihai Lindner
b4e48cc66c distro_identifier: replace slash with hyphen
Use "-" instead of "/" in "n/a" strings ("Distributor ID" and/or
"Release"), provided by `lsb_release`.
This leads to directories and subdirectories created in ./sstate-cache/
e.g. Distro-n/a/ where "Distro-n" is dir and "a" is subdir.

(From OE-Core rev: c2a9f0c330f0da82792f87e3860b06c25b986983)

Signed-off-by: Mihai Lindner <mihaix.lindner@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:59 +01:00
Fabien Proriol
32cec3214f populate_sdk_base: allow SDK path of various level
In the previous version, tar extraction use the --strip-component
option with "4" hard coded value.
If we set another SDKPATH, with a different depth, the sdk installation
fails.

This patch computes the level from the SDKPATH value.

(From OE-Core rev: 7aee4e9438755c230e1399bd5226d6c8e7fcca31)

Signed-off-by: Fabien Proriol <fabien.proriol@jdsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:59 +01:00
Saul Wold
39e8e068c5 ltp: add perl to RDEPENDS
Some of the ltp scripts are perl, this was not seen in the
past because ltp is normally installed in an -sdk build with
perl already there.

(From OE-Core rev: 930216cb9092904642c0419d3475fc731ab0694b)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:59 +01:00
Saul Wold
6ec5640e59 sstate: add manifest info for shared file matches
Present the manifest file that contains the matches for
files being installed to a location that already contains
that file. This will help to determine which is the correct
recipe to fix when this occurs.

[YOCTO #3191]

(From OE-Core rev: 56268f6e4ed1fc11143173bb1717a8be78c728a5)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:58 +01:00
Saul Wold
115076c0d8 gst-meta-base: include ximagesink plugin when x11 is a feature
(From OE-Core rev: 6e44bf71fd4645ea09b3e34b907b17e92b5225e3)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:58 +01:00
Ross Burton
5bef184eb6 pulseaudio: remove libpulse-browse, removed upstream in 2011
(From OE-Core rev: 24bf52ec5e53339f15573e9c9789b7ce14f743bd)

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-10-27 09:44:58 +01:00
Ross Burton
6b2db8b388 pulseaudio: fix library packaging
libpulsecommon has moved into libdir/pulse.

libpulsedsp is an internal library for padsp so put that into pulseaudio-misc
along with padsp.

(From OE-Core rev: 01b9b1edcc82e0c8cb2240359daa5b14d2c0146b)

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-10-27 09:44:57 +01:00
Ross Burton
24807c6bf5 pulseaudio: move helper binaries into the relevant module packages
proximity-helper is only used by the bluetooth-proximity module, and
gconf-helper is only used by the gconf module.  Clarify the packaging and clean
up dependencies by shipping the helper binaries with the modules that spawn
them.

(From OE-Core rev: 039170824cb77c1a68ec91d9f4dc1ae12f701b87)

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-10-27 09:44:56 +01:00
Ross Burton
8d4b851f5e pulseaudio: add GConf dependency
Add explicit build-dependency on GConf as currently it's an implicit dependency
and so vunerable to races at build time.

(From OE-Core rev: 558705735aa9a2d640d1114bd809ca4ea7f0130d)

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-10-27 09:44:56 +01:00
Peter Seebach
8d98171dc2 insane.bbclass and friends: Fix sanity checks and multlib headers for n32
The n32 architecture is odd, in that it's a mips64 ABI which happens
to be 32-bit. To handle this, we need something in the environment
which can be used to distinguish it. The obvious place to stash this
is the ABI suffix, so we use "n32" as an ABI suffix. This allows
a couple of improved checks:

1. In insane.bbclass, we can use "linux-gnun32" to discern that it's
okay for a mips64 binary to be a 32-bit binary in some cases.
2. In multilib_header, we can check for the n32 ABI, and use a distinct
value.
3. In siteinfo, add linux-gnun32 as a synonym for linux, similar to
what's done for linux-gnux32, and tell the mips*-linux-gnun32 variants
to pick up the corresponding mips-linux site configs.

Note that the multilib header wrapper already has n32 hooks in it, there
was just nothing creating -n32 header variants.

(From OE-Core rev: c8e8e8ba22eaa335ac72f0e5b317f804035133e2)

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-10-27 09:44:56 +01:00
Mark Hatle
4940be556c populate_sdk_base: Ensure that the multilib cross-canadian tools are used
Update the host toolchain list, for cross-canadian toolchains, to ensure
that all of the supported multilibs are built and installed.  This
dynamically generates the dependnecy set based on the current multilib
configuration.

(From OE-Core rev: 54bc658416ea5679bbfdc76e3ef8767c0a15211c)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:55 +01:00
Mark Hatle
26d966f34e populate_sdk_base: Update extraction script for multilibs
When multilibs are enabled, there will be more then one environment
file created.  We need to be sure to process each environment file.
The next function can simply use the last environment file processed
to get the magic value(s) that it requires.

(From OE-Core rev: 6f0537c835c35dcff5154de0bec066ec3e71a4f8)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:55 +01:00
Mark Hatle
7e2ff7c012 multilib - crosssdk: Stop building multilib for crosssdk packages
Crosssdk packages are not actually multilib packages, so treat them
the same as other nativesdk packages in the multilib, base, and
classextend components.

(From OE-Core rev: 15834451525453e0f7ceac25d4f98117f1825f37)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:55 +01:00
Mark Hatle
ea22010560 multilib: Add support for cross-canadian multilib packages
Add support for the generation of cross-canadian packages.

Each cross-canadian package has:
 PN = "pkg-cross-canadian-${TRANSLATED_TARGET_ARCH}"

in order for that to be evaluated properly with multilibs enabled, it was
necessary to detect both the presence of the cross-canadian packages and
then update the vars using the OVERRIDE for the multilib.  Additional checks
were made to ensure that any dependency that sais "cross-canadian" did not
get prefixed with the MLPREFIX.

Also, make sure that even when building multilib cross-canadian packages,
we only use the single SDK PACKAGE_ARCH, we don't want or need variants.

(From OE-Core rev: 132a182e2f6c330aa645de42c1aeb386e43bddd3)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-27 09:44:54 +01:00
Paul Eggleton
511f7f9d04 zeroconf: remove
We already have avahi in OE-Core and some cursory research suggests that
avahi is preferred over this package, which has apparently not seen a
release since 2006. Nothing in OE-Core actually refers to it, so let's just
remove it.

CC: Cristian Iorga <cristian.iorga@intel.com>
(From OE-Core rev: 88b4ec0b8c7c75b8570fc201c705937b459bb43e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-26 14:12:55 +01:00
Richard Purdie
3f14eb3674 poky.conf: Add multiarch to DISTRO_FEATURES
It makes sense to support a variety of different archiectures in utilities such as
binutils so add multiarch to DISTRO_FEATURES.

[YOCTO #3120]

(From meta-yocto rev: 2912fb5a9f24a5d114c4e5a11d64610a839235c3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-25 17:50:19 +01:00
Cristian Iorga
59943ca967 bitbake: bitbake: hob/builder: Hob crashes because of bad init
Image selection is not properly initialized to none,
and it used before having a chance to have a value.
Due to dynamic nature of Python, variable is used before
it exists, in this case. This causes a crash.
Bug introduced during the fix of [YOCTO #3228]

Fixes [YOCTO #3334]

(Bitbake rev: 1c540541c5397c38dca880a79df9ebfcda576d4c)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-25 17:50:19 +01:00
Alexandru DAMIAN
4d7b2d2944 udev: upgrade to 182
This is the final upgrade of udev. Futher upgrades will only
come in conjunction with systemd.

The v4l1 removal patch is deprecated as the bug is fixed inside udev.
There is a new patch fixing the path for default sh interpreter.
New debug binaries are generated, and udev.inc is modified to package
those correctly.
The install locations changed for udevd and udevadm, so the scripts
are updated accordingly.

(From OE-Core rev: 3cbe52b94c4d559a037347ac419fafee5af84fe6)

(From OE-Core rev: 8fc73baecf1b21b1a3e7eff478e25d2a7cae2879)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>

Conflicts:

	meta/recipes-core/udev/udev_164.bb

sgw - Fixed up DEPENDS += and added some OECONF options that where in the
meta-oe version and make sense to be included.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-25 17:50:19 +01:00
Ross Burton
ad39133c4c diffutils: fix rebuilds
If diffutils rebuilds it tries to remove with "rm" files that don't exist
anymore, resulting in an error.

Use rm -f so the removal always succeeds.

(From OE-Core rev: becd38412a95f3f9f6c3450a87a7204be032d2e6)

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-10-25 17:50:19 +01:00
Kang Kai
c65e88b3f2 perl: update dependencies
Update dependencies for perl modules again. When only install
perl-module-file-glob, run perl script with "require File::Glob;" will
fail. Update dependencies to fix that.

[Yocto 3069]

(From OE-Core rev: 1554e690d8d074f3bbe484d2acfebde4b94e3738)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-25 17:50:18 +01:00
Richard Purdie
c1da202993 cogl/clutter: Explicitly depend on libdrm for GLX
cogl and clutter explicitly rely on libdrm being present when using the glx
backend. If its not listed in DEPENDS and an alternative to mesa is used, it
may not actually be present. This patch ensures it is and fixes a build
race condition which could see dependencies like clutter-box2d failing to
compile due to missing pkgconfig dependencies.

(From OE-Core rev: afb3ee76cef109c7ba4a760d834839ef277e30fc)

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-10-25 17:50:18 +01:00
Cristiana Voicu
33440ee706 bitbake: hob/settings: add a scroll bar for the box with mirrors
- added a scroll bar in the shared state tab from settings
- added a signal on it, so when you add a new mirror, it will
auto-scroll to the end of the list

[YOCTO #3229]
(Bitbake rev: 00afd6a25c0cc0a4fcddd9f7c26a17ef6c47cbd2)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:08 +01:00
Cristian Iorga
8cad1e343e bitbake: bitbake: hob/builder: Image selection is remembered while changing adv settings
Image selection is remembered correctly even after
advanced settings have been changed.
Selected image was reset even when it was not the case.

Fixes [YOCTO #3228]

(Bitbake rev: 93fb0a2c56100b2bbc8769af9ae2343c05e72193)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:08 +01:00
Cristiana Voicu
a975e6bb19 bitbake: hob/builddetailspage: set "Log" page as default
- when you do a build you should see "Log" page, not
"Build configuration" page

[YOCTO #2569]

(Bitbake rev: 431cb80d4d5222f832f6141b8578291f2f14a131)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:08 +01:00
Cristiana Voicu
62e9f768cd bitbake: hob/imageconfigurationpage: progress bar shows when recipe parsing is stopped
-when the recipe parsing process is stopped, the progress bar shows
"Stopping recipe parsing"

[YOCTO #3259]
(Bitbake rev: d20626bd717bb8f5cfd73b91337af880198db247)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:07 +01:00
Cristian Iorga
4a3b0d7287 bitbake: bitbake: hob/hobwidget: "Brought in by" column is now displayed correctly
In "Edit Recipes" and "Edit packages" pages, the "Brought in by"
column is displayed correctly, with the right number of additional
packages and a proper title.

Fixes [YOCTO #2195].

(Bitbake rev: 4d1d3e5a54eb718e2eee02f734d929f15ccf99ce)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:07 +01:00
Andrei Dinu
b3374dbfd0 bitbake: hob: stop build without percentage shown
added a method in progressbar.py that doesn't update the
percentage in the progress bar shown in hob.

the call of the method is done in builder.py.

(Bitbake rev: 7ab5775fceda1055b86bdc3313fc4bf928bf5155)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:07 +01:00
Cristiana Voicu
9cf610680f bitbake: hob: change behavior for "cancel" button from the Recipe selection page
-when returned to the Image configuration page, after canceling on the
Recipe selection page, the image selected previously is now shown corectly

[YOCTO #3205}
(Bitbake rev: 0a755026661a18ae386eb64b807e9e9e8f0dfe4c)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:07 +01:00
Andrei Dinu
759dadf80a bitbake: hob: image size displayed wrong size in edit packages screen
size_str = '%.1f' % (size*1.0/(1024*1024)) + ' MB'
    from /bitbake/lib/bb/ui/crumbs/hobpages.py file transformed
    the size in MB. In our file it was again multiplied by 1024
    instead of doing a division by 1024, which brought a faulty size on
    the edit packages screen.

(Bitbake rev: 7dcea3884a45973ae332695dc8a53814b701151f)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:07 +01:00
Bogdan Marinescu
6cc2f06d43 bitbake: event/hob: Add a button for network tests in the proxy settings
This patch allows the user to check the network connectivity in
the "Proxy" page ("Settings" dialog) by adding a button which provides
this functionality. It also disables retrigerring sanity checks if the
proxy values are changed, since now the proxy checks are explicit.
Note that this patch depends on a patch in oe-core
("sanity.bbclass: trigger network tests explicitly"). It will
not work properly if the patch in oe-core is not merged.

[YOCTO #3026]

(Bitbake rev: cb1354d29c0be27aee57b9783c724457ef6725fb)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 21:13:06 +01:00
Kang Kai
d93898b2c5 automake: update dependencies
Remove the RDEPENDS for nativesdk because the nativesdk-automake also
needs perl modules.

Add dependencies perl-module-thread-queue and perl-module-threads.

Remove redundant dependencies that they are already required by autoconf
and autoconf is required by automake.

In this removed list, "-->" present "required by":

  perl-module-cwd --> perl-module-file-path --> autoconf
  perl-module-dynaloader --> perl-module-xsloader --> perl-module-fcntl
    			--> perl-module-file-stat --> autoconf
  perl-module-exporter-heavy --> perl-module-exporter --> autoconf
  perl-module-constant --> autoconf
  perl-module-errno --> autoconf
  perl-module-file-basename --> autoconf
  perl-module-file-compare --> autoconf
  perl-module-file-copy --> autoconf
  perl-module-file-glob --> autoconf
  perl-module-file-spec-unix --> perl-module-file-spec
    			    --> perl-module-io-file --> autoconf
  perl-module-file-stat --> autoconf
  perl-module-getopt-long --> autoconf
  perl-module-io --> perl-module-IO-handle --> perl-module-IO-seekable
    		--> perl-module-io-file --> autoconf
  perl-module-io-file --> autoconf
  perl-module-posix --> autoconf

Bump up PR.

(From OE-Core rev: cd15622712c517dc72242c1066ca6eb4bc5094a8)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:49 +01:00
Kang Kai
3533e801ee autoconf: update runtime dependencies
Update autoconf runtime dependencies on perl and perl modules. And
remove RDEPENDS for nativesdk because the nativesdk-autoconf has same
dependencies with autoconf.

Then fixes autoreconf runs failed both on target and toolchain.

Bump up PR.

[Yocto 3100]

(From OE-Core rev: 19a4d6498b262a53456f43fabb66d821014d2656)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:49 +01:00
Kang Kai
f816625bf2 perl: update dependencies among modules
Run autoreconf fails because it uses several perl modules and they
requires other perl modules. So update these dependencies for:
  perl-module-exporter
  perl-module-file-glob
  perl-module-file-path
  perl-module-file-spec
  perl-module-file-stat
  perl-module-io-file
  perl-module-io-handle
  perl-module-io-seekable
  perl-module-posix

And RDEPENDS rules in file perl-rdepends_5.14.2.inc don't work for
nativesdk perl module packages. Replace all "perl" with "${PN}" in the
file to fix that.

In nativesdk.bbclass it calls
oe.classextend.NativesdkClassExtender().map_packagevars() to map package
vars include var RDEPENDS. In map_packagevars():

  for pkg in (self.d.getVar("PACKAGES", True).split() + [""]):

the value of var "PACKAGES" may not be calculated correctly, so for
all the nativesdk packages created by

  PACKAGES_DYNAMIC_virtclass-nativesdk += "^nativesdk-perl-module-.*"

dependencies are wrong.

This is similar with 51cbb5ae76.

Bump up PR.

(From OE-Core rev: c1f1368a680ae596e4d974a2cbbd253abc5118f8)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:48 +01:00
Andreas Müller
645ba0309d sato-icon-theme: merge sato-icon-theme.inc into recipe
nothing else needs sato-icon-theme.inc

(From OE-Core rev: b6bbfcfa329ea2695f1da53f880ae1f2cf2cf2e1)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:48 +01:00
Andreas Müller
5b1d45c9fb sato-icon-theme: fix build
| Can't locate XML/Simple.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /home/andreas/tmp/oe-core-eglibc/sysroots/x86_64-linux/usr/lib/icon-naming-utils/icon-name-mapping line 12.
| BEGIN failed--compilation aborted at /home/andreas/tmp/oe-core-eglibc/sysroots/x86_64-linux/usr/lib/icon-naming-utils/icon-name-mapping line 12.
| make[3]: *** [install-data-local] Error 2
| make[3]: Leaving directory `/home/andreas/tmp/oe-core-eglibc/work/all-angstrom-linux/sato-icon-theme-0.4.1-r5/sato-icon-theme-0.4.1/16x16/actions'
| make[2]: *** [install-am] Error 2
| make[2]: Leaving directory `/home/andreas/tmp/oe-core-eglibc/work/all-angstrom-linux/sato-icon-theme-0.4.1-r5/sato-icon-theme-0.4.1/16x16/actions'
| make[1]: *** [install-recursive] Error 1
| make[1]: Leaving directory `/home/andreas/tmp/oe-core-eglibc/work/all-angstrom-linux/sato-icon-theme-0.4.1-r5/sato-icon-theme-0.4.1/16x16'
| make: *** [install-recursive] Error 1
| ERROR: oe_runmake failed
| ERROR: Function failed: do_install (see /home/andreas/tmp/oe-core-eglibc/work/all-angstrom-linux/sato-icon-theme-0.4.1-r5/temp/log.do_install.21502 for further information)

(From OE-Core rev: 61233b05ad299a34b5d3c06fe3c0162cba8fb273)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:48 +01:00
Andreas Müller
c8e2f1447d gnome-icon-theme: remove unused configure variable
configure: WARNING: unrecognized options: --disable-silent-rules, --with-libtool-sysroot, --disable-hicolor-check

(From OE-Core rev: 5f559a8c94c38a6caeb6dae31be2f5a9cea6a1f4)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:48 +01:00
Andreas Müller
be3add2604 gnome-icon-theme: fix icon mapping
Multiple errors in log.do_install as:
Can't locate XML/Simple.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /home/andreas/tmp/oe-core-eglibc/sysroots/x86_64-linux/usr/lib/../libexec/icon-name-mapping line 12.

(From OE-Core rev: 40b3945c89c0c6fc1dc3a72a83bfcba1ad94b562)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:47 +01:00
Martin Jansa
feaff11484 opkg-utils: bump SRCREV to latest
(From OE-Core rev: 29da69b1d6f986ff186a7e97cb2e1d41cc7c2349)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:47 +01:00
Ross Burton
fdd6fb5372 gst-plugins-good: disable taglib explicitly
This was being detected automatically so the build wasn't deterministic.

(From OE-Core rev: 855c6aa2043afa3b9c7fcc0a251b1ae78da441e9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:47 +01:00
Robert Yang
df9bc287e4 bitbake.conf: break three very long lines
Break the following 3 very long lines into 3 pieces, make a line under
80 characters, will modify BB_HASHBASE_WHITELIST and
BB_HASHCONFIG_WHITELIST in the next patch:

BB_HASHBASE_WHITELIST
BB_HASHCONFIG_WHITELIST
BB_SIGNATURE_EXCLUDE_FLAGS

[YOCTO #3299]

(From OE-Core rev: 1417f606982c591178dd408a7ef79f449a6e2554)

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-10-24 12:50:47 +01:00
Ross Burton
662189deb6 xorg-driver: add xserver driver ABI dependencies
At build time extract the xserver driver ABI versions that we're building
against and add RDEPENDs on them, so the driver isn't used against an xserver
with a different ABI (which won't work).

(From OE-Core rev: a17faa832798f5c76e344d2662ffdb470974bfe3)

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-10-24 12:50:47 +01:00
Robert Yang
553d9dbe0e rootfs_rpm.bbclass: maybe no rpm postinst script
There maybe no rpm postinst script (e.g., core-image-minimal), then the
"*" is not expanded, and there would be error:

head: cannot open `rpm-postinsts/*' for reading: No such file or directory

Check whether it exists or not will fix the problem.

[YOCTO #3172]

(From OE-Core rev: 966c72e00c8d378d7d189f0e4b626f6782d23a25)

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-10-24 12:50:46 +01:00
Morten Minde Neergaard
c45a7d127e terminal: Add support for running custom terminals.
Example config:
OE_TERMINAL = "custom"
OE_TERMINAL_CUSTOMCMD = "mysuperterm"

(From OE-Core rev: c76da87511d2668479745c2f18b8a9b8116c7489)

Signed-off-by: Morten Minde Neergaard <mneergaa@cisco.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:46 +01:00
Marcin Juszkiewicz
6309eea2a8 shadow-securetty: add ARM AMBA serial ports
(From OE-Core rev: 77cc57b88a7377e40361428dba52cf35fb7e9e58)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:46 +01:00
Ross Burton
04d6b2084b linux-firmare: upgrade to latest commit
(From OE-Core rev: 5b822610e8559c42edb16d5f34d77951f95b8d57)

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-10-24 12:50:46 +01:00
Samuel Stirtzel
54d42c1427 gtk-immodules-cache: Add initial class to update gtk inputmethod module cache
This is used by:
openembedded-core/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb
meta-openembedded/meta-oe/recipes-support/maliit/maliit-framework_git.bb

(From OE-Core rev: c67f64e5846bb2a6774e61a4f3719c5f82fc3bd8)

Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:45 +01:00
Robert Yang
dfc39d7bd5 nativesdk-ncurses 5.9: files were installed but not shipped
There is an warning:

$ bitbake nativesdk-ncurses

WARNING: QA Issue: nativesdk-ncurses: Files/directories were installed
but not shipped
  /opt/poky/1.3+snapshot/sysroots/i686-pokysdk-linux/usr/bin/clear.ncurses
  /opt/poky/1.3+snapshot/sysroots/i686-pokysdk-linux/usr/bin/reset.ncurses
NOTE: Tasks Summary: Attempted 533 tasks of which 521 didn't need to be
rerun and all succeeded.

And there is no clear or reset tool in the SDK.

This is caused by:
ALTERNATIVE_ncurses-tools = "clear reset"

It creates clear.ncurses and reset.ncurses which are used for avoiding
the conflicts with the target busybox, but SDK doesn't need them since
there is no nativesdk-busybox (then no conflicts), so:

ALTERNATIVE_ncurses-tools_class-target = "clear reset"

will fix the problem.

[YOCTO #3325]

(From OE-Core rev: a4a9d2acb60ef4ec9ae8d2ad3ca222e99fb6e986)

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-10-24 12:50:45 +01:00
Christopher Larson
b7e184508f lttng-2.0: fix srcrev/pv to match the recipe filenames
Somehow the recipe names got bumped, but the SRCREV and PVs in the recipes
didn't get updated, so they were still building old versions.

(From OE-Core rev: b3bffb0d34f99f31b65ddb886d80f71786120bbf)

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-10-24 12:50:45 +01:00
Tom Zanussi
683d54a605 packagegroup-core-tools-profile: replace 'legacy' lttng with lttng 2.0
packagegroup-core-tools-profile currently pulls in the 'legacy' lttng
packages, which are useless without legacy lttng support in the kernel.

This makes packagegroup-core-tools-profile pull in the lttng 2.0
packages instead, which don't need any kernel modifications to work.

(From OE-Core rev: f1f9d08ea8b32b0a51a1e3f7bcf488ba7e9dc21e)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:45 +01:00
Andrei Gherzan
bb753ad6d6 opkg-utils: Add needed python modules as RDEPENDS
(From OE-Core rev: ec4553832251615cee65e01e3fd261f5c7863b2e)

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-10-24 12:50:44 +01:00
Ross Burton
3cabe899c1 libxkbcommon: new window system-independent XKB library
Used by Wayland, Clutter, and more.

(From OE-Core rev: 2e4b2d2b8d6f2aeb37654f305bcf6c1c2ffc04f9)

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-10-24 12:50:44 +01:00
Richard Purdie
fa471acc00 qemugl: Remove since support for it was removed from qemu
(From OE-Core rev: 0195a08f77fe0e01b2d7548ccffeaf89d2d780e1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:44 +01:00
Darren Hart
952b879de5 yocto-bsp: Fix git url parsing, allowing for local mirrors
The git URLs used in bitbake recipes are not compatible directly with git.  In
bitbake-speak, all git URLs start with git:// and the protocol is optionally
specified in the SRC_URI. Local git mirrors are specified like so:

    git:///path/to/local/mirror.git;protocol=file

The URL that git requires would be:

    file:///path/to/local/mirror.git

Update the yocto-bsp kernel.py to make the necessary adjustment when parsing
the SRC_URI to extract the git URL.

(From meta-yocto rev: 30506f51cc95f0994cf54144295832e931d15f61)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
CC: Tom Zanussi <tom.zanussi@intel.com>
CC: evadeflow@gmail.com
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:48:24 +01:00
Ross Burton
a3d5e9e6b7 libical: remove
This was only used by evolution-data-server and is now maintained in
meta-oe/meta-gnome.

(From OE-Core rev: 754ddbf1c57e6b9d0650498538840effebe4f7a2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:34 +01:00
Ross Burton
543b33d818 evolution-data-server: remove
Remove evolution-data-server, this is now maintained in meta-oe/meta-gnome and
is not needed by the GMAE SDK anymore.

(From OE-Core rev: a7cf593d351e678c6c6f3429ab4bbd37c032b9cb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:34 +01:00
Ross Burton
b39ca7e26d gmae: remove Evolution Data Server
Evolution Data Server is now maintained in meta-oe/meta-gnome and GMAE is dead,
so continue pruning the sdk-gmae package group until we can remove it entirely.

(From OE-Core rev: d443a09c6e2f960fb8c4705bb36625c05b18e384)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:34 +01:00
Aristov Maxim
616642f094 uClibc: Resolve conflicting options when building for mips32
(From OE-Core rev: c096d57d7c55f97897956c192c9ccef2c9cbbe44)

Signed-off-by: Aristov Maxim <m@ximilian.ru>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:33 +01:00
Denis 'GNUtoo' Carikli
72d7f8dc27 libsdl: fix inconditional alsa disabling.
Without that fix ALSA is inconditionally disabled,
  reguardless of the fact that alsa is in the distribution
  feature or not.

This patch has been tested on the om-gta04 target with both
  alsa distribution feature enabled(libsdl can then play sound),
  and disabled(it fails to play some sound trough alsa).

(From OE-Core rev: b635e47a2b8b711d5ddae3b3e5a5656402aee845)

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:33 +01:00
Andrei Gherzan
8255558613 rootfs_ipk.bbclass: Some extra spaces / tabs were removed / formated
(From OE-Core rev: 414822d2caec720319c026324edd59234d0134ff)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:33 +01:00
Andrei Gherzan
e7f1ec945b rootfs_ipk.bbclass: Don't duplicate remove_packaging_data_files code
While removing packaging data files in rootfs_ipk_do_rootfs use the
remove_packaging_data_files function. By using this function we ensure
that /var/lib/opkg directory is created. opkg needs this directory to
create lock files.

(From OE-Core rev: 1f3300766b827ed73daaa01572017775305105b2)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:33 +01:00
Andrei Gherzan
dd03773977 opkg: Don't print empty PROVIDES
Every package provides itself. While printing package information all
fields are printed only if there is any relevant info for them. For
example: a package with no "Replaces" won't get this printed at all.
Packages which provide only themselves, were printing this field but with
no values. This patch skips this field if the package provides only
itself.

(From OE-Core rev: 19af022c73ebc53f7008a016c1e7c584fb7b0054)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:32 +01:00
Andrei Gherzan
e702a1abff opkg: Add patch to fix removing packages with recommends
While removing a package with opkg, the process shouldn't be blocked if
another package RECOMMENDS the package wanted to be removed. This is
because, while generating the dependencies, opkg adds dependencies to
depended_upon_by even if dependency's type is RECOMMEND. The fix is to
skip dependencies of type RECOMMEND while constructing depended_upon_by.

[YOCTO: #2431]

(From OE-Core rev: 08a5ef44c7aa58ffcad0457e8dda3504f2c3192b)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:32 +01:00
Ross Burton
2df8db417d insane: add a check for Xorg driver ABI dependencies
Now that xserver provides driver ABI names, all drivers should depend on the ABI
version that they have been built against.

All drivers that include xorg-driver-input.inc or xorg-driver-video.inc will get
these automatically, so this should only impact binary drivers.

(From OE-Core rev: 800b256390b22c3d3d8d6a69f6fb668376a5030b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:32 +01:00
Ross Burton
bc41dfb9cd xserver-xorg: add runtime provides for the driver ABI version
The xserver driver ABIs can and do change in a way that is unrelated to the
version of xserver, so it's entirely possible to build an image that has a
mismatch between the server ABI version and the version that the drivers were
built against.  xserver detects this and refuses to load the modules.

By adding RPROVIDEs to the xserver package that describe the ABI versions it has
(such as xorg-abi-video-13, xorg-abi-input-11), drivers can RDEPEND on the
version that they were built against.  This means that when the ABIs change,
there will be package dependency errors at image time instead of images that
build fine but don't work.

(From OE-Core rev: 8ef5f205aec04140198d5ba0f5c405ae6e977dbe)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:32 +01:00
Damien Lespiau
e7bae18e9d mtdev: New recipe for mtdev
(From OE-Core rev: 5ae7825ed7b8221d1c37e3d053404a3f2f7d27f2)

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:31 +01:00
Phil Blundell
9af29d8cb8 cpan-base: Add more debug paths to FILES
We seem to be mostly installing modules into vendor_perl nowadays.
Make sure that the .debug data from there is captured appropriately.

Also, expand ${PERLLIBDIRS} at the point of assignment so we don't
call the python again and again.

[RP: Fixup to whitespace]
(From OE-Core rev: ed7690bf5cc964b5cee55f5ef13c10c75d8e3463)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:31 +01:00
Daniel Stone
c25ed8278a atk: Update to 2.6.0
Newer Clutter releases want 2.5.3+, so upgrade to the stable 2.6.0.

(From OE-Core rev: 01ecc9fbf59712d0f8e8a9b212171efc9d28ac57)

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:31 +01:00
Richard Purdie
d59d4306fc package: Hardlink debug source to improve performance
When copying the source files needed for the -dbg package, use hardlinks
where possible. This saves some disk space and hence helps performance
of the builds.

(From OE-Core rev: 6775feb9fe935ab01fd9cae2b2d3fce5824a9a72)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:31 +01:00
Scott Rifenbark
60a26d2496 documentation: yocto-project-qs - Final changes before the 1.3 lockdown
Fixed used of "Source Directory" and Build Directory.

(From yocto-docs rev: a4d79c5a7e73003fc99c274d876fbea453a80d20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:14 +01:00
Scott Rifenbark
a73fde8caf documentation: poky-ref-manual - Final changes before the 1.3 lockdown.
various changes as required.

(From yocto-docs rev: 7f166508337c9d4aadad23997470a8871c5e42a4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:14 +01:00
Scott Rifenbark
2b51188de6 documentation: dev-manual - Final changes before 1.3 lockdown.
Made minor changes as needed due to some new sections, links,
and capitalization standards.

(From yocto-docs rev: bc966e5a78dadd14ecf1896a36e40a9b256bae77)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
f3c1226cc8 documentation: bsp-guide - Final edits before 1.3 lockdown
Updated some example text based on the latest source
repositories for crown bay.  Replaced fishriver example with
fri2. Updated some capitalization usage for source directory
and build directory.

(From yocto-docs rev: 65973f7b30699fbb82b4d7f1b907e947489ba7d0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
c26d20e7be documentation: adt-manual - final edits before 1.3 lockdown.
Made some minor edits to the book before locking down the
files for 1.3.

(From yocto-docs rev: 2b941103585a31b5dbcb65b784cc3381467ed697)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
3374926849 documentation: dev-manual - fixed capitalization on Source Directory.
(From yocto-docs rev: 8cfbd4eb519b2b966626c9a1ffd8515c198c2abd)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
9137117b3f documentation: kernel-manual - minor edits before lockdown
Fixed a few references and links.  Also standardized on the
capitalization for the term "Source Directory" where it
refers to the YP poky structure on the development machine.

(From yocto-docs rev: 1a20418d8791d754ad66c5a059e65bd68a4c6b32)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
450f438012 documentation: dev-manual - Updates to Git workflow and kernel patch
I updated the sections on the "Git Workflow" in Chapter 4 and
the "Patching the Kernel" section in Chapter 5 per Tom
Zanussi's review comments.  Minor technical changes.

(From yocto-docs rev: fd8a291349c06328adebd37f8a9bbeaa49adb44c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:13 +01:00
Scott Rifenbark
205db48480 documentation: poky-ref-manual - new variable and edited variable
Added the DISTRO_EXTRAS_RDEPENDS variable to the glossary and
updated the DISTRO_EXTRAS_RRECOMMENDS variable per Paul
Eggleton's review.

(From yocto-docs rev: bb27fcb3b990bb335176d5da9fec420fdc31bf22)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:12 +01:00
Ross Burton
8ce23f5695 xorg: remove XF86 BigFont extension
This has been disabled by default upstream since 2007, nothing uses it.

(From OE-Core rev: 06d27cf0fbcc4004e6f456880eca49893c9290bf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:30 +01:00
Holger Hans Peter Freyther
b5591d0b49 kernel.bbclass: Do not chdir to /boot before running update-alternatives
The symlink from uImage-3... to uImage is not created at image creation
time and not properly update on kernel upgrades. This is fixed by removing
the chdir. The other users of update-alternative do not change the directory
before calling it.

(From OE-Core rev: c77ca9ee901468c93570b5264b226f7d17a41c16)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:30 +01:00
Khem Raj
394f284beb eglibc-2.16: Use tar ball instead of svn SRC_URI
Adapt the recipes to fetch a tarball.
Tarball is generated from latest 2.16 branch
which has e500-math_private.patch already applied
hence we remove that patch.

(From OE-Core rev: 77ee4d7d88976c7bb2bb25b57e06b83edaacbd4c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:30 +01:00
Phil Blundell
59e3a13604 eglibc: Move perl- and bash-using scripts to separate recipes
This removes the dependency of eglibc.bb itself on perl and bash
which, in turn, eliminates the need to build those two recipes if the
scripts which need them are not going to be installed.

Also provide dummy do_evacuate_scripts() for all variants of eglibc-initial
otherwise the nativesdk and multilib variants might crash trying to
copy a non-existent mtrace script.

(From OE-Core rev: 74b5f8943b2b29c7b3b62be7d81fb2b3a86b9584)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:29 +01:00
Richard Purdie
92b44ec00e package.bbclass: Exclude the PKGTRIPLETS variable
Without this, we'd rerun packaging for every machine since this variable contains
a machine specific component.

(From OE-Core rev: 61131828c59178c923b3d5b5fcacf0dbcba275a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:29 +01:00
Richard Purdie
c4c37bcf1d multilib/clsextend: Improve handling of regexps in PACKAGES_DYNAMIC
Now that PACKAGES_DYNAMIC is more standardised, starting with ^ anchors,
the variable manipulations performed by clsextend for multilib don't work.

This patch at least improves it to hack around the problem and enable
mulitlib builds to work again. If this code doesn't do the right thing, the
recipe is free to override the variable with the correct multilib case.

(From OE-Core rev: 593faec6e0155bdd7a43ee84c24de8ee20287681)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 14:59:29 +01:00
Tom Zanussi
f07be9d2b6 yocto-bsp: set branches_base for list_property_values()
yocto_bsp_list_property_values() is missing the context it needs to
properly filter choicelists, so add it to the context object.

Fixes [YOCTO #3233]

(From meta-yocto rev: 064b15f76c5b52899f4c3fdef06412c3063062a5)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 12:15:55 +01:00
Scott Rifenbark
7090cbe2c9 documentation: dev-manual - removed the wip.png figure
this figure used to be at the end of the development manual.
I have removed it from both figures directories and taken
it out of the TARFILE list in the Makefile.

(From yocto-docs rev: ad8fcfc4bddb6bcee0e1a4ece78cd87ab0d51b6c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:49:08 +01:00
Scott Rifenbark
2889498dbb documentation: poky-ref-manual - Updates to DEPENDS and RDEPENDS
Suggested changes to help clear up what the list of items
in each of these variables should be and how automatic
handling of libraries is dealt with.

Richard Purdie reviewed the changes.

(From yocto-docs rev: 53865f904d5d4675286419a57bbb9282edfc1d0b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:49:08 +01:00
Richard Purdie
50247c8f6e sstate: Improve handling of machine specific manifests
Now do_package isn't machine specific, we're only left with do_populate_sysroot as a
machine specific task. This change marks only the machine specific manifests as machine
specific, defaulting to PACKAGE_ARCH for everything else.

This means we do less work where there are multiple machines using the same
core package architecture and we can start to clean up the sstate duplicate files
whitelist.

(From OE-Core rev: febeaf3d1b8917b660c7279b008d8b03337568e9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:47:48 +01:00
Richard Purdie
a68c7c792e package.bbclass: Switch shlibs to pkgdata directory and make package non-machine specific
Currently, do_package is machine specific since the shlibs data is installed
into each machine specific sysroot. This change moves the shlibs data to the
pkgdata structure, at the expense of having to iterate over a set of shlibs
directories instead of a single one.

It turns out this isn't any particular hardship for the code and as a result,
do_package stops being machine specific leading to optimisations for builds
that use a common PACKAGE_ARCH.

(From OE-Core rev: cc088489d70fb27d460c3dbe35d6ea382123c134)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:47:47 +01:00
Richard Purdie
9da9e5d8ae lib/oe/packagedata: Use the PKGMLTRIPLETS variable
(From OE-Core rev: 26e16a5e5ee1059fb8e55ab915ae9cb8e2b54dcd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:47:46 +01:00
Richard Purdie
0c2c3b7656 base.bbclass: Add PKGTRIPLETS and PKGMLTRIPLETS variables
These variables correspond to the PACKAGE_ARCH list combined with the TARGET_VENDOR
and TARGET_OS values. These can be used to traverse the pkgdata structure.

Setting these once in base.bbclass stops pkgdata needing to recalculate the values
and is also useful for the reworked shlibs code in a patch that will follow this.

(From OE-Core rev: f91322edc8b9f2a5906f3908bde2508ae97f2816)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:47:46 +01:00
Richard Purdie
072a6d352f perl: Fix perl module dependency issues
With the move of the strict/vars/config/warnings modules to the main perl
recipe, we need to RPROVIDE those modules to ensure that package dependencies
on those modules continue to work correctly.

(From OE-Core rev: fe88ae8605f22d9075e4200159aa66605ec36587)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:47:46 +01:00
Martin Jansa
caba9cbfce kernel.bbclass: add kernel-modules to PACKAGES
* kernel-modules is always added to PACKAGES later in python code and
  needed to be defined as PACKAGES_DYNAMIC
* add it to PACKAGES directly and set
  ALLOW_EMPTY_kernel-modules
  FILES_kernel-modules
  DESCRIPTION_kernel-modules
  outside populate_packages_prepend like for other packages and set only
  RDEPENDS_kernel-modules from python code

(From OE-Core rev: 0884bdbbf39f2b3a8a342918812f29ddcd3b1e6f)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 23:06:26 +01:00
Martin Jansa
fadb407901 PACKAGES_DYNAMIC: use += instead of = in most cases
* to keep ${PN}-locale from
  bitbake.conf:PACKAGES_DYNAMIC = "^${PN}-locale-.*"

(From OE-Core rev: 73252b16b501c0986b0ca0895e4534895a9ba3db)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 18:02:26 +01:00
Martin Jansa
33b31640bf PACKAGES_DYNAMIC: use regexp not glob
* bitbake uses PACKAGES_DYNAMIC as regexp
  ^ could make matching faster (and it will be more clear that we're expecting regexp not glob)
  * made all those last '-' optional, use .* (or nothing)

(From OE-Core rev: 2f3ebdfa5f42dae51063b043cc4b0fbe20b40064)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 18:02:26 +01:00
Scott Rifenbark
e993851624 documentation: poky-ref-manual - edits to SUMMARY and DESCRIPTION
Some final edits to these two variable descriptions from
Paul Eggleton.

(From yocto-docs rev: b606eed0f6a326ef572cd831b642312bb827a8c5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:53 +01:00
Scott Rifenbark
07884bdfff documenation: poky-ref-manual - updates to the LICENSE variable.
(From yocto-docs rev: 68bb94ccb879401d65e652746f138a139eaa0ca4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:53 +01:00
Scott Rifenbark
bff24c5a6a documentation: poky-ref-manual - updated the DESCRIPTION variable.
(From yocto-docs rev: 170ed775df6d22b9570806367cbc17e6050d1493)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:53 +01:00
Scott Rifenbark
c3e04b62ef documentation: poky-ref-manual - Updated SUMMARY variable description.
(From yocto-docs rev: 13e38a7cd887f03ce6fde688c89ac989587123ef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:52 +01:00
Scott Rifenbark
acbb9157ce documentation: dev-manual - Updated compliance section.
Applied legal changes per Karen Copenhaver's suggestions.

(From yocto-docs rev: 73b68aa349530f6604c7edc87b503f1b614b2c46)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:52 +01:00
Scott Rifenbark
014f91cb3f documentation: poky-ref-manual - Edits to feature backfill
Final edits (I think) to this section from Paul Eggleton.

(From yocto-docs rev: 95fd830ffb668109631205df4538454ccf023b20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:52 +01:00
Scott Rifenbark
c6ce06b172 documentation: poky-ref-manual - Backfill variables updated.
Updated the MACHINE_FEATURES_BACKFILL,
MACHINE_FEATURES_BACKFILL_CONSIDERED,
DISTRO_FEATURES_BACKFILL, and
DISTRO_FEATURES_BACKFILL_CONSIDERED variables to have
more comprehensive information.

(From yocto-docs rev: 355eb3ebe02fbe4a340adaf83bf29a46f7c8230f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:52 +01:00
Scott Rifenbark
a048ed22df documenation: poky-ref-manual - updates to variables.
Did some re-wording on the WiFi example in both the
MACHINE_EXTRA_RDEPENDS and MACHINE_EXTRA_RRECOMMENDS
variables.  Clunkiness fixed.

(From yocto-docs rev: 0c76ae0ee14cce62ff02b728b1c9ac21f4f3b385)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:51 +01:00
Scott Rifenbark
bbd299dee9 documentation: poky-ref-manual - updates to distros and machines
The sections that list the features you can provide with the
MACHINE_FEATURES and DISTR_FEATURES variables implied that
the set was finite.  It is not.  I added wording to that
effect.

(From yocto-docs rev: d8e79fdf909ba5586dc45320b7cca03de639f49b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:51 +01:00
Scott Rifenbark
9ea29196ee documentation: poky-ref-manual - edits to the features backfill section.
(From yocto-docs rev: 7507d73501830896602bb18677eb7b0710794f55)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:51 +01:00
Scott Rifenbark
1e642b1e0d documentation: poky-ref-manual - edits to *_FEATURES glossary
Changed wording so that the lists of features do not seem
to be finite.  But rather, the set shipped with YP.

(From yocto-docs rev: 68e1eba075819863d8137be0b4c70935b88cb1a3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:50 +01:00
Scott Rifenbark
45b98aa561 documentation: poky-ref-manual - updates to feature backfill section.
(From yocto-docs rev: aaf1156398033d50add5ac3944aa575917c7f7de)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:50 +01:00
Scott Rifenbark
93ecafc466 documentation: poky-ref-manual - Updates to MACHINE glossary entry.
(From yocto-docs rev: 666562a428f5db2b2fc18c7cd21d17247479b24c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:50 +01:00
Richard Purdie
f5ea427fa5 console-tools: Fix build issues with make 3.82
The intl directory is part of older gettext and has macros which no
longer get expanded with recent gettext versions. This simply removes
the intl directory from the equation since we'd never need it.

(From OE-Core rev: 199298b6b114db09fd8ff100642ae101050a2e9a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:01 +01:00
Bruce Ashfield
4211de44e0 kernel.bbclass: remove explicit version.h target
The compilation routine for the kernel has an explicit call to
build version.h, which works fine for most kernels, but the
location of it has recently changes.

commit d183e6f5 [UAPI: Move linux/version.h]
commit 10b63956 [UAPI: Plumb the UAPI Kbuilds into the user
                 header installation and checking]

moves the file to include/generated/linux/version.h and then to
include/generated/uapi/linux/version.h.

As a result kernel builds of 3.7 or bisection builds of intermediate
kernel commits will fail with:

  make[2]: *** No rule to make target `include/linux/version.h'.  Stop.

Making the explicit version.h build conditional on the version, or
via a file test would fix the problem, but it introduces some complexity
to the build.

Even without an explicit call to build version.h, it is always produced
by the kernel build, so it can simply be removed.

This extra make line was originally so that the kernel version could be
determined, so that then different instructions could be executed depending
on whether it was a 2.4 or 2.6 kernel. Since we no longer support 2.4, this
code is no longer needed.

[YOCTO: #3293]

(From OE-Core rev: 4cb20fa89e571ffbc448c579a758db0b9074acf4)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:26:14 +01:00
Robert Yang
51cbb5ae76 perl: fix dependecies
This patch fixes 2 problems.

The first one is that when run "perl -V" on target, it fails with lack
of some .pm files. So add these perl module files to package perl itself
to fix this failure.

The second problem is that package nativesdk-perl-modules doesn't depends
on the single perl modules.

In the .bb file, dependencies of perl-modules are set by:

RRECOMMENDS_perl-modules = "${@d.getVar('PACKAGES', True)...}"

The PACKAGES would be reset by do_split_packages since:

PACKAGES_DYNAMIC = "perl-module-*"
PACKAGES_DYNAMIC_virtclass-nativesdk = "nativesdk-perl-module-*"

Then:
1) The target perl-modules RRECOMMENDS on perl-module-*, this is what
   we expect.

2) But the nativesdk-perl-modules doesn't RRECOMMENDS on
   nativesdk-perl-module-*, this is not what we expect.

The value of PACKAGES after do_split_packages has been set correctly (it
contains the nativesdk-perl-module-* packages)

But the:

RRECOMMENDS_perl-modules = "${@d.getVar('PACKAGES', True)...}"

doesn't work correctly for nativesdk, the

d.getVar('RRECOMMENDS_perl-modules', True)

doesn't get the new value of the PACKAGES, it gets the value of PACKAGES
before the do_split_packages.

This patch will fix the problem.

(From OE-Core rev: d50be1876f7a41822ef7e73207fdf8cccd39e400)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:26:14 +01:00
Richard Purdie
ee8d3fb19f bison: Fix gplv2 version to work with recent gettext
(From OE-Core rev: 4b132d440ed97053dbef5a4deeb39e37e1167def)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 14:06:10 +01:00
Richard Purdie
e2dfa38b4a diffutils: Fix gplv2 version to work with recent gettext
(From OE-Core rev: c3e086805649bbe782ac76670acf5858536d8801)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 14:06:10 +01:00
Richard Purdie
fac5ca9539 sed: Fix gplv2 version to work with recent gettext
(From OE-Core rev: 3c32d9c53f1789bdb072a5957ddd83e5c4e16914)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 14:06:10 +01:00
Richard Purdie
1096942a75 grep: Fix gplv2 version to work with recent gettext
(From OE-Core rev: 2433846255767d5a22fb2c7b2b723f290ac12fbf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 14:06:09 +01:00
Richard Purdie
d497fe9f96 autotools: Use STAGING_DATADIR_NATIVE for config.rpath
For builds that don't use gettext, config.rpath may not exist in the target
datadir. This change uses the native directory where it will always
be present due to gettext-minimal-native (which allows us to autoreconf
recipes using gettext even if we don't have gettext built).

(From OE-Core rev: 0ea24447842e6b76ccfee0881f557e1a82e89ef1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 13:35:16 +01:00
Scott Rifenbark
e6e2b9bd66 documentation: poky-ref-manual - edits to MACHINE type variables.
Did some editing that helps clarify variables that deal with
the MACHINE.

(From yocto-docs rev: f1f63acffc952cc7d755fc6dd555379572fddaf0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:15:04 +01:00
Scott Rifenbark
747088a285 documentation: poky-ref-manual - quoted section reference
For consistency.

(From yocto-docs rev: 7b51db2d3409d6a9c74a7a9b0b2cc39cf6622033)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:15:04 +01:00
Scott Rifenbark
fe5636108f documentation: poky-ref-manual - Updated build/conf/local.conf
I added the BB_NUMBER_THREAD and PARALLEL_MAKE variables into
the description for suggested variables to set if you edit
local.conf.

(From yocto-docs rev: 7345bbf6c10b823e6364e85a4e75a7ec60a29aef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:15:03 +01:00
Scott Rifenbark
6339d903f2 documentation: poky-ref-manual - updated the STAMP glossary description.
(From yocto-docs rev: 63720ee98bc9dd4eaa574784e7aa1ccd20822e80)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:15:03 +01:00
Ross Burton
3bf1848cb7 sstate: when warnings about sysroot overwrites, say what the recipe was
(From OE-Core rev: 936e2868bb9973213630477ab9c880dbdf4aac09)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:50 +01:00
Phil Blundell
a008df240c gconf: Avoid error when trying to delete files that don't exist
Use "rm -f" in do_install_append() so we don't fail if the files we're
trying to delete have already been removed.  This can happen if the
distro policy suppresses both static libs and .la files.

(From OE-Core rev: 2ee9601ae590b2964d1c44b131188a80cc5198a9)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:50 +01:00
Phil Blundell
f0a56f6d15 lib/oe/qa: Trap exceptions when running objdump
This avoids propagating a failure if we encounter an ELF file
that objdump can't parse for any reason.  Some versions and/or
configurations of objdump will refuse to read files for "the
wrong" architecture.

(From OE-Core rev: 11f5998e539f7b884ae1387252f8995b2dc7437f)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:49 +01:00
Phil Blundell
0fd014eada insane: Don't try to run objdump on symlinks
If the link is absolute then we might end up reading from a host binary
or a nonexistent path, neither of which will produce useful results and
may result in objdump failure and python backtrace spew.  If the link
does point to a binary within the installation root then we will scan the
pointed-to file at some point anyway so there is no need to do it again.

(From OE-Core rev: 91769af1c1175ac9bb43d16d05fb1c8736dd9287)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:49 +01:00
Phil Blundell
f8c90bce73 insane: Rationalise phdrs-based QA checks
Various different QA checks are based on essentially the same data from
the ELF program headers.  Calling objdump to extract it repeatedly is
inefficient, particularly if the shell is involved.  Instead, let's
cache the output from objdump inside the qa.elf object and allow it to
be reused by multiple tests.

Also, using objdump instead of scanelf to check for bad RPATHs (in the
same way that the useless-rpaths check was doing already) allows the
dependency on pax-utils-native to be dropped.

(From OE-Core rev: bf19eeb9f65e91bf2b5d89e7c0b099c55d7c15ff)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:49 +01:00
Saul Wold
96b8d721e9 gnome-icon-theme: update mapping program location
When we changed the /usr/libexec default to be /usr/lib/<pn>,
the icon name mapping needed to be updated also.

(From OE-Core rev: d05e63c6c936a9ff209efd1341401ef7cd2ec0c1)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:49 +01:00
Saul Wold
f0ec93caff sato-icon-theme: update mapping program location
When we changed the /usr/libexec default to be
/usr/lib/<pn>, the icon name mapping needed to
be updated also.

(From OE-Core rev: 58b20de32f4b6ca684120d1b87a7aece2df6f0a6)

(From OE-Core rev: b3ff57c7a15c8509397d4b8e84410aab08ea4d1c)

(From OE-Core rev: 49d8f5d2257f00f02437b95e624960ba4aadd9d4)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:48 +01:00
Saul Wold
e5f9a9fa3e qemu: don't ignore libexecdir in configure
This allow the relocation of libexecdir to be done correctly
for the qemu-brigde-helper.

(From OE-Core rev: 945c8f5c687ec61c312209e075edc402f6272186)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:48 +01:00
Saul Wold
c07e4ab325 perf: set the perfexecdir
This allows the files installed into /usr/libexec to be
relocated to ${libexecdir}. removed unneded prefix=/usr,
which would prevent ${prefix} relocation.

(From OE-Core rev: 10d28438c1e7d793bc398a0ad484782e5baa4877)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:48 +01:00
Ross Burton
d92cff6569 ia32-base.inc: don't depend on mesa-dri
mesa-dri is an empty package, so depending on it doesn't achieve anything.

(From OE-Core rev: a41f8341971a958cf55c07f3c91e1742570053cd)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:48 +01:00
Andy Ross
4445ffe1f3 sysklogd: fix update-rc.d handling
The sysklogd recipe had a cut-n-paste version of the
update-rc.d.bbclass code which didn't work, but this was hidden
because all images contain the busybox version which does.  Building a
busybox-free image unmasked the issue and syslogd wouldn't start on
first boot.

The comments seem to be wrong/stale.  AFAICT update-rc.d and
update-alternatives work fine with each other, though there is an
ordering constraint (alternatives must be specified last, so it
"wraps" update-rc.d).  This version builds and works both with and
without busybox.

(From OE-Core rev: 644673631bf57bd8d0e152b5fe7621344b5ad24f)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:48 +01:00
Ross Burton
789ebb5498 pulseaudio: add missing switch-on-port-available dependency to the server
The PulseAudio server recently added a dependency by default on the
switch-if-port-available module, but this was not enforced by the package
dependencies so the server won't start.

(From OE-Core rev: b0fd984dd132e332056863dcc11b312141d443fd)

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-10-18 12:13:47 +01:00
Vladimir Zapolskiy
ec0279a586 lttng: support more compatible hosts
THis change extends COMAPTIBLE_HOST matchings, which allows to include more
hosts with TARGET_OS like linux-gnuspe or linux-gnueabi etc.

(From OE-Core rev: 76138d4b183eff28c678ab13cb1a6da358be2340)

Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:47 +01:00
Martin Jansa
e7f2b639e0 qt4: use extra variable for more QT_CONFIG_FLAGS fragments
* qt4-embedded was forcing -DQT_KEYPAD_NAVIGATION which depends on feature-completer
* separate variable makes it easier to not enable QT_KEYPAD_NAVIGATION in some upper layer where we have disabled feature-completer

(From OE-Core rev: 0479242a18661cb7fc3d76d208c82fe6ae4378ce)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:47 +01:00
Phil Blundell
2be7032d63 gtk-doc.bbclass: Run gtkdocize in ${S} not ${B}
Otherwise it will fail if these two directories are not the same.

(From OE-Core rev: 491823fdc65d124093f1fed5a56173917443e1d6)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:47 +01:00
Saul Wold
ef9eac29a5 build-appliance: ensure zip file is linked locally
This makes the symbolic link portable with the dated zip file, otherwise
the link still points to the original deploy directory.

(From OE-Core rev: 0fc83102eeb48b85027c5b1202d8a584f51679a7)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Otavio Salvador
9fe0f62411 buildhistory.bbclass: Fix hostname print for 'No changes' case
(From OE-Core rev: f9e3745d8eeef0df7e6dba3ba17d0b00645c92fa)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Richard Purdie
7950bdf88d autotools.bbclass: Fix gettext macro versions issues
gettext m4 macros don't use the usual versioning/serial mechanism used by
aclocal. It therefore won't update them over and above any local version of
the macro. Equally, we don't run gettextize due to it doing slightly crazy
things to the build.

When we put the aclocal directory as a -I option to aclocal, if this was
found first compared to any recipe provided macros, the correct version
of the gettext macro would still "win". With the switch so correctly override
the system directory, older recipe provided macros may get used.

This patch manually removes the problematic m4 macros in the case we're using
gettext and need to use the correct m4 macros.

This patch also always ensures the gettext manipulations happen, even in the
-native case since missing or stale gettext files could cause build failures.

(From OE-Core rev: e9645d2bbeabaa5251d49edd659ab320fd66d0ee)

(From OE-Core rev: 841ea3c1c18e50e77fccbd5f44d6a79a50913b67)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Richard Purdie
c0bf723089 autotools: Fix race over aclocal macro directory
The previous steps taken to address races over the aclocal macro directory and the removal
of files hasn't been sufficient since aclocal still looks at that directory as part of its
default search path. This patch passes the aclocal-copy directory into aclocal as its system
directory, removing any chance of it accessing the original aclocal directory.

Hopefully this should therefore fix the race issues once and for all.

In order to do this, cp-noerror needs to not error if the directory already exists.

Its also been noticed that aclocal defaults to using STAGING_DATADIR_NATIVE even when
building for the target. Only using the target directory would cause errors such as
missing pkgconfig macros (since we only depend on pkgconfig-native, not pkgconfig).
This patch processes both sets of macros maintaining existing behaviour. At a future
date we could look into potentially optimsing this.

[YOCTO #3216]

(From OE-Core rev: ad29b331e0d61708e68ef772cdb19154956fa67e)

(From OE-Core rev: f362cc419e5a480acd16c71c802636dbedc932d9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Richard Purdie
81be7c898b scripts/cp-noerror: Try and use hardlinks if possible
Since we generally have lots of copies of the directories created using this tool, use
hardlinks where possible. This should save a little disk space and improve performance
slightly.

(From OE-Core rev: bfa11c028c2da093f7b4e6b7b1d611da90ae052f)

(From OE-Core rev: 8c5544c2311b080bb212efb7f6b804db63e125f5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Richard Purdie
e8338b7b14 scripts/cp-noerror: Copy the code from shutils.copytree, update not to error if the mkdir fails
(From OE-Core rev: 08542718504d2b53d140a9e6be73c84cc0e047e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:46 +01:00
Richard Purdie
25e060dde1 texi2html: Add check for directory existence
Without this, if configure fails, it won't be able to run again as the directory
already exists.

(From OE-Core rev: 71a3ba536d022eea3a199cf4d6c5c791d91603a0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:45 +01:00
Richard Purdie
1a731b5f31 diffutils: Remove rather bizzare gettext macros
diffutils has a rather confused set of getext macros with different names and
strange conflicting version requirements. This patch removes the problematic
macros allowing it to 'gettextize' to the latest standard gettext code without
issue.

(From OE-Core rev: a40b89333652ca22a6e6957ab8a2a4e41b87b4c0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:45 +01:00
Richard Purdie
eabcd3108f kexec-tools: Add dependency on xz
kexec-tools optionally looks for the lzma code provided by xz. Since this
is generally useful for lzma compressed kernels, add the dependency and
make builds determinstic.

(From OE-Core rev: accea64234124f25345a9288c0739c433de671f8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:45 +01:00
Richard Purdie
216b88fa8f gettext: Add config.rpath and Makefile.in.in to gettext-minimal-native
We need gettext-minimal-native to be able to install config.rpath and
Makefile.in.in so that we don't get version mismatch errors when subsequently
using the reconfigured software.

This patch moves the two files to be provided by minimal-native so
that we can better 'gettextize' software without needing the full
gettext-native when using --disable-nls.

(From OE-Core rev: 6b12d4cd39bacb087654b59e25f5052a4e839b26)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:44 +01:00
Richard Purdie
9ecacde57d console-tools: Clean up recipe
This cleans up various bits of nastiness in this recipe:
  * Drop unneeded m4 macros
  * Update to a recent version of gettext (needs addition of Makevars file)
  * Drop split do_compile and SUBDIRS hacks, just patch out the docs
  * Remove some of the configure.in hacks since they seem unneeded now
    and break gettext (the AC_OUTPUT change).
  * Wipe out acinclude.m4 since it has corrisive contents

(From OE-Core rev: 87a9a3b3b2603516704a38fccc8c396e547ac101)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:44 +01:00
Richard Purdie
2ddf822049 qemu: Explicitly disable bluez, its not in DEPENDS
(From OE-Core rev: d5745cdc01f7d21999c5983bae5983072e3e8f30)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:44 +01:00
Saul Wold
1d18224b24 bitbake.conf: change libexecdir to ${libdir}/${BPN}
In order to be more compliant with the Filesystem Hierarchs
Standard (FHS), this change removes the /usr/libexec default
in favor of ${libdir}/${BPN} (which is typically /usr/lib).

http://www.pathname.com/fhs/pub/fhs-2.3.html

This also address the native and STAGING variations

[YOCTO #2915]

(From OE-Core rev: 68c31b095a1cb20bd297df596024fc568614f5e8)

(From OE-Core rev: 406bd38b4232f9f399ef5ffe0b4fac72ed605a23)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:44 +01:00
Ross Burton
aee0f321ef xorg-proto: remove evieext
It was removed from xserver in 2008.

(From OE-Core rev: 574843864dcdb65d28bc2c3753339f123a9bc528)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:43 +01:00
Ross Burton
9b9fad3c5f xorg: remove xf86rushproto
The dependency in xserver is spurious and was removed in 2005.

(From OE-Core rev: aad06196254f1d08696ea0fcf50007ce3be933ac)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:43 +01:00
Bogdan Marinescu
a3720a51c9 sanity.bbclass: trigger network tests explicitly
The network tests in sanity.bbclass can now be trigerred explicitly
by firing the NetworkTest event. This is part of the fix for bug #3026.

[YOCTO #3026]

(From OE-Core rev: f1f43d55dbb020a0145c58731d4259fd906d9d1e)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:43 +01:00
Richard Purdie
2d89cff42a sstate: Use -m option to tar when unpacking sstate
We've noticed failures on the project autobuilders where a shared sstate
directory is used across multiple builders and the clocks become skewed.

Most of the time this causes harmless building but if this happens where
an environment is changed (make install vs make in qt4-x11-free for example),
the build can fail.

This avoids modification times in the future and should make builds safer
in shared environments sstate was designed for.

(From OE-Core rev: 8f1bdb4f4afd7f5f4c121be8ba82f4675f73e300)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:43 +01:00
Daniel Stone
eb8a8fe503 libdrm: Add --disable-cairo-tests switch and update to upstream patch
Rather than implicitly relying on Cairo being disabled through not being
present, add a configure switch to forcibly disable it.

The updates the code to use a patch backported from upstream git
instead of our custom version.

(From OE-Core rev: fa9ccb23e5788f331cc868ce4bad4abd1eaeee9c)

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:43 +01:00
Daniel Stone
4ebe9d1ebe libdrm: Bump git recipe to latest 2.4.39+ revision
(From OE-Core rev: 14c4c1de25b73c918a7ebb074359160290e9642f)

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:42 +01:00
Richard Purdie
214ad32077 scipts/combo-layer: Fix check_rev_branch() for cases where the revision is on more than one branch
If a revision is in more than one branch, the check_rev_branch() function can't
cope with it and the tool returns incorrect errror messages. This patch
ensures it copes with this situation.

(From OE-Core rev: 14bd101c6a86dd048da98817f47694fb21504209)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:42 +01:00
Saul Wold
1a57708ba8 lttng-tools: skip new libexec insane test
Because lttng-tools installs files into /usr/lib/lttng/libexec, the test matches
and throws a false positive, so use INSANE_SKIP

(From OE-Core rev: 01300254d710c91b3dbcded9c42f6dcf21b75462)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:42 +01:00
Saul Wold
c57b610d70 qemu: add libexecdir to configure call
This address the following when libexecdir is not set to /usr/libexec

WARNING: QA Issue: qemu: Files/directories were installed but not shipped
  /usr/libexec
  /usr/libexec/qemu-bridge-helper
  /usr/libexec/.debug
  /usr/libexec/.debug/qemu-bridge-helper

(From OE-Core rev: e2fa821033785a44f80002eafac73b7e110023ce)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:42 +01:00
Saul Wold
a6052d6e77 insane.conf: add new libexec test
This tests for /usr/libexec as we are moving things to /lib/.
the test is ignored if the distro defaults to /usr/libexec.

Currently this test will be disabled by default since the current
value of ${libexecdir} is "/usr/libexec".  Also this tests needs
to be enabled in the WARN_QA list.

[YOCTO #2915]

(From OE-Core rev: 4c60c2779dde6962f342f9c9b61713cf2d3a564c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:41 +01:00
Joe Slater
7087e82079 chkconfig: pass CFLAGS to Makefile
The environment CFLAGS is not used by the chkconfig
Makefile, so debug and optimization options are ignored.
So, we use RPM_OPT_FLAGS to pass CFLAGS into Makefile.

Upstream-Status:  Inappropriate [configuration]

(From OE-Core rev: ecdb24c21b7b90b83748cbe5891437b2183321d7)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:41 +01:00
Marcin Juszkiewicz
ca8edd6999 packagegroup-self-hosted: recommend kernel modules instead of depending on them
Requested kernel modules may be integrated in kernel or totally disabled
as not needed on target.

(From OE-Core rev: 2129b793bc7875d929a91e22be72108d4d15e081)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:40 +01:00
Evade Flow
ed79d5ee3a Move 'tag=' to SRCREV in mtd-utils recipe
(From OE-Core rev: 1713cef886274b8992977900da1110390d7940d3)

Signed-off-by: Evade Flow <evadeflow@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:40 +01:00
Evade Flow
026ad495de Move 'tag=' to SRCREV in btrfs-tools recipe
(From OE-Core rev: acb942dbaf118b8021100df95a68fe49dcc77858)

Signed-off-by: Evade Flow <evadeflow@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:40 +01:00
Thomas Kristensen
bfa0fcdce9 populate_sdk_base.bbclass: Make it possible to override the create_shar method of populate_sdk_base.
If you wish to change the install/unpack method of the sdk, this can now be done by making
your own create_shar method, and setting a SDK_PACKAGING_FUNC variable to your
new create_shar function.

(From OE-Core rev: 3955c8eced352226bb4c9ceb710dbe02474b9024)

Signed-off-by: Thomas Kristensen <thkriste@cisco.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:40 +01:00
Andrei Dinu
7817d91970 gypsy: removed gypsy from meta/recipes-connectivity
removed also entry from meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc

(From OE-Core rev: 817c4e661da1e9baa947a420d690248971301102)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:39 +01:00
Phil Blundell
2b5acdc0bc recipe_sanity: Don't bother checking LICENSE
Since e3d7890cac or so, base.bbclass has
considered invalid LICENSE settings to be a fatal error.  This means we
will never see them so there is no point checking for that.

(From OE-Core rev: e2d71503847f72f55666143a2a320925838fd26f)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:39 +01:00
Constantin Musca
36d4dcfe6a libnss-mdns: fix mDNS resolving speed
We need to fix the "hosts: files dns mdns4" nsswitch.conf line
because for a .local lookup it does a DNS lookup first which will fail.
The recommended solution is:
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

[YOCTO #2502]

(From OE-Core rev: dbb350b90417962f2da4c1064ab0174badeb0f26)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:39 +01:00
Marcin Juszkiewicz
27def85517 gnu-config: update to 2012.08.14 to get support for AArch64 architecture
(From OE-Core rev: fd082d328f1312847097794dea588ed670206cb4)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:39 +01:00
Marcin Juszkiewicz
5ba60ce64c pcmanfm: mark AArch64 as compatible
(From OE-Core rev: 468c074ba15cd4b93600d5ba5a1fdc032718d7c3)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:38 +01:00
Marcin Juszkiewicz
59e0301b7a packagegroups: disable kexec, valgrind, lttng, systemtap on AArch64
(From OE-Core rev: c9514779de7fa6ea4cfa0c911cff25ea8c6a5152)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:38 +01:00
Marcin Juszkiewicz
c489cb6f84 util-linux: add AArch64 support
(From OE-Core rev: 1dbf17d221ee9d50c5de8c04144c92fdc78d6d73)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:38 +01:00
Marcin Juszkiewicz
1523d50e9f openssl: add AArch64 support
(From OE-Core rev: 490b12126aff7e8e59569ebb471ce04ba4962b7c)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:38 +01:00
Marcin Juszkiewicz
72188f5b8d insane.bbclass: add AArch64 support
(From OE-Core rev: 39d71c8c41276091688decb64d418e1e3637e2b6)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:37 +01:00
Marcin Juszkiewicz
128c3903cd kernel-arch.bblass: add AArch64 support
(From OE-Core rev: 9583a46221580ba46ebfd6d561d3a4d6b0d42eea)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:37 +01:00
Marcin Juszkiewicz
2715432e01 siteinfo.bbclass: add AArch64 support
(From OE-Core rev: fde788cf5b0e480a675d2aa256af0915a120bc65)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:37 +01:00
Ross Burton
3f516bbcc5 xorg: remove fontcache support
This was removed from the Xorg server in 2008.

(From OE-Core rev: 02fc0a197ca16e983becb0aedeb9238a0aeb6661)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:37 +01:00
Ross Burton
546f280184 libxfont: remove spurious dependency on fontcacheproto
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:36 +01:00
Ross Burton
d6dc72c048 xorg: remove all traces of XPrint
The XPrint server was removed from Xorg in 2008.

(From OE-Core rev: 5b3748d463a6666c0d8e2624092619da8d8e6328)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:36 +01:00
Ross Burton
f29e000832 xserver-xorg: use INC_PR in PR
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:36 +01:00
Ross Burton
1e533aec87 xorg: remove XTrap
This functionality was broken upstream so it was removed.

(From OE-Core rev: 7661d15957525885e5e9b1129da7a99eef19f4be)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:36 +01:00
Ross Burton
e7ee5be072 mesa: remove libegl-dbg, put all debugging into mesa-dri-dbg
(From OE-Core rev: c914495e1431ad56fcd81460fa4f675be3b4be3b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:35 +01:00
Ross Burton
9cc8a94fcc mesa: remove mesa-dri dependency in mesa-dri-dev
mesa-dri is empty, so instead of allowing an empty package, remove the default
dependency on mesa-dri and let the system not generate mesa-dri.

(From OE-Core rev: 5d6596321a996278ffbaa111247367ec9e50d721)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:35 +01:00
Ross Burton
30f53b5e0e xf86-video-intel: bump to latest release
(From OE-Core rev: fa248f86105ddd4a1b0be039ee8e85ab275c4e44)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:35 +01:00
Ross Burton
9d765590cf xserver-xorg: upgrade to 1.11.4
gcc-47-warning.patch was integrated, so drop.

Add pkgconfig-deps.patch, a backport of a commit to fix bad exposed library
dependencies (which resulted in the keyboard driver depending on pixman).

(From OE-Core rev: 723e81af2a5b07024ab744c14cdccc12f554ef12)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:34 +01:00
Phil Blundell
fda7103eb6 strace: Don't package strace-graph
Commit 9c9ea24b115a9bb87df1323b5f185ce426262aec made strace depend on perl because the
strace-graph script needs it.  However, this cost of the dependency is large (building
all of perl) and the value of the script is marginal.  Let's just delete the script
instead and remove the dependency again.

If anybody wants strace-graph then it should be packaged in its own recipe and that one
can be made to depend on perl without disrupting the main strace package.

(From OE-Core rev: 2e887af1c81f9b373684180f61a7c25163ed0e2c)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:34 +01:00
Phil Blundell
0aad466276 module.bbclass: Move do_make_scripts() to module-base
It's sometimes useful to have this function available to recipes which
don't wish to use module.bbclass for whatever reason.

(From OE-Core rev: 7632b44e7f487180811d47fbe9c29aa8e58868a2)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:34 +01:00
Ross Burton
c942d527cc xf86-input-keyboard: upgrade to 1.6.2
(From OE-Core rev: 1c2ffdf26bdb2e1443dddb143e0e96760e6572bf)

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-10-18 12:13:33 +01:00
Phil Blundell
8f85691860 kernel.bbclass, module.bbclass: Make update-modules optional
The update-modules mechanism is something of a historical relic and it isn't
entirely clear that it has a great deal of value nowadays.  Also, it causes a
problem when building a read-only rootfs since update-modules itself refuses
to configure offline.

Allow DISTROs to circumvent this whole thing by declaring (via DISTRO_FEATURES)
that they don't wish to use update-modules.  This is backfilled for existing
distributions and will have to be marked as CONSIDERED by those who actually
don't want it.

(From OE-Core rev: 14bf8ed115453077b4d4042b4b70ed6b3bca2a9f)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:33 +01:00
Phil Blundell
895994afd8 gettext: Remove spurious-looking dependencies on libxml2-native
These were added in aae5021101224344a2b1a3af5becf74291fbbfe5, ostensibly to resolve
some sort of "host contamination" issue.  However, that commit contains no information
about what contamination was being observed or how the dependencies help.

gettext-native is being configured --with-included-libxml so it shouldn't be using
libxml2 from either the host or the sysroot, in which case the dependency would seem
to be useless.  Using the included copy of libxml2 is in any case preferable to adding
a dependency on libxml2-native because the latter brings quite a large stack of other
dependencies with it.

(From OE-Core rev: 132d329638ae32b98c36b9498c470cf0ffdcedb3)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:33 +01:00
Ross Burton
545f680d5a xf86-video-fbdev: bump to 0.4.3
(From OE-Core rev: 6157644e3ca06a97bee2294d1a55c5c17b0f52b1)

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-10-18 12:13:14 +01:00
Ross Burton
f1d73fd0b2 xf86-input-evdev: bump to latest release
(From OE-Core rev: 1f73a2ded611de659be05efe734753f538fd84a1)

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-10-18 12:13:14 +01:00
Phil Blundell
2637809901 cpan_build: Unify directory layout for native and target builds
There seems to be no benefit in having them be different and this
appears to cause a certain amount of confusion about paths for
the native modules.

(From OE-Core rev: 3926a45a26c2d23d9c2fc9c3956f780f607ec7a4)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:13 +01:00
Colin Walters
bf97b1a311 Add packagegroup-core-buildessential
[Not heavily tested, but sent for discussion]

task-core-sdk is too big - for example, I simply don't want to ship tcl, ever =)
Historically distcc caused a large dependency graph explosion because it has
a utility which uses gtk+, although that was fixed.

packagegroup-core-sdk also includes coreutils, which is a bit
confusing; conceptually things dependent on coreutils should pull it
in explicitly, or possibly we just declare coreutils to be in the
minimal build set.

So packagegroup-core-buildessential is intended to be similar to
Debian's "build-essential" package.  It's the stuff needed by say 80+%
of components, not worth repeating over and over.

(From OE-Core rev: 7d6cc169c95fecf6388a275281eb8b8f5d8eb4a2)

Signed-off-by: Colin Walters <walters@verbum.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:13 +01:00
Richard Purdie
bf3b8506a1 libtool: Ensure the paths to sed are not hardcoded
If you:

bitbake sed-native
bitbake libtool-cross

then libtool-cross has SED="/path/to/sysroot/sed" which is incorrect. If that
is reused from sstate or sed-native is cleaned, the build will fail.

This patch simply sets sed to be "sed" since we're not on systems where
the sed from PATH is broken.

(From OE-Core rev: 86c6fa8175482283268dfa8782c6643a3510e0fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:13 +01:00
Richard Purdie
bcc73d26dd pkgconfig: Drop automatic pkgconfig RDEPENDS
Just because a recipe uses pkgconfig, it doesn't mean that it's -dev
package should RDEPENDS on pkgconfig. I can understand the thinking
that lead to this but it makes sense to be able to install the package
when pkgconfig hasn't been built.

Currently you can also get failures where pkgconfig wasn't built yet
a -dev package is included that depends on it leading to rootfs failures.

I considered making this a RRECOMMENDS but it should probably be an
RSUGGESTS at best given the tenuous pkgconfig requirement any given
-dev package has.

(From OE-Core rev: 8f41b69578eef5ea750e8f93dcd9d37375ce7d88)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:12 +01:00
Richard Purdie
a6f6d4faba package: Recommend virtual-locale-*, don't depend on it
The virtual-locale-* packages are provided by libc which may or
may not have a matching locale for any given recipes's provided locales.
Certainly, we shouldn't get a failure if the locale package isn't
available.

This patch therefore makes the dependency optional rather than
required, allowing the locale packages in question to install. This
resolves errors like:

	virtual-locale-eo is needed by bash-locale-eo-4.2-r5.i586
	virtual-locale-en+boldquot is needed by bash-locale-en+boldquot-4.2-r5.i586
	virtual-locale-en+quot is needed by bash-locale-en+quot-4.2-r5.i586

(From OE-Core rev: 2be67f95abaa7e8655a1ca8f4ffe66b3e099a650)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:12 +01:00
Richard Purdie
d38f055593 libc-package: Drop bogus replacement operation
The names used to generate the binary-localdata packages need to match the location
the dependencies are added. In one case the dash replacement is made, in the other it
is not leading to packages which cannot be installed:

	eglibc-binary-localedata-af-za.iso88591 is needed by locale-base-af-za.iso-8859-1-2.16-r22.i586
	eglibc-binary-localedata-cs-cz.iso88592 is needed by locale-base-cs-cz.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-ru-ru.koi8r is needed by locale-base-ru-ru.koi8-r-2.16-r22.i586
	eglibc-binary-localedata-pl-pl.iso88592 is needed by locale-base-pl-pl.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-hu-hu.iso88592 is needed by locale-base-hu-hu.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-de-at+euro.iso885915 is needed by locale-base-de-at+euro.iso-8859-15-2.16-r22.i586
	eglibc-binary-localedata-sv-fi.iso88591 is needed by locale-base-sv-fi.iso-8859-1-2.16-r22.i586

This fixes things so the names are consistent.

(From OE-Core rev: 17e1bfe2b1260add9749b5ff73c72d57c0215fdc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:12 +01:00
Scott Rifenbark
8b6e9b8df9 documentation: poky-ref-manual - small edit in wording.
Better wording for MULTIMACH_TARGET_SYS.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:47 +01:00
Scott Rifenbark
ac7a354e9a documentation: poky-ref-manual - Added and updated variables.
Fixes [YOCTO_#3262]

* Added correct information to the STAMP variable glossary
  entry.

* Created a new variable glossary item for the
  MULTIMACH_TARGET_SYS variable.

* Created a new variable glossary item for the
  EXTENDPE variable.

Reported-by: Patrick Turley <patrickturley@gamestop.com>
(From yocto-docs rev: ea50e41dc71d3876dd1b00aeec663400ac4a5ced)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:46 +01:00
Scott Rifenbark
90b7c0cb5b documentation: dev-manual - Edits to "Patching the Kernel" section.
Edits according to Darren Hart's feedback.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:46 +01:00
Scott Rifenbark
0163821ef7 documentation: dev-manual - lttng and Git workflow changes
* Updates to the Git Workflow section based on feedback from
  Darren Hart.  These changes simplify the flow and make it
  generic.

* Updates to the lttng user space tool used from within
  Eclipse.  The legacy version of the tool is no longer supported
  so it had to be edited out of the description and replaced
  with the 2.0 version.

(From yocto-docs rev: 81d2b79035fc99f92364bfef2c76076738cbaa52)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:46 +01:00
Robert P. J. Day
ca144a6abe documentation: bsp-guide - minor edits.
One change resulted in changing out "include" for "require"
in code from the Crown Bay example.

(From yocto-docs rev: 69b21d5f62ad9020646a26ce13d349af50aee419)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:46 +01:00
Scott Rifenbark
fc76b3e43a documentation: poky-ref-manual - changes to required variables for recipes
Several variables are no longer needed in this section.  I have
removed them.

Reported-by: Paul Eggleton <paul.eggleton@intel.com>
(From yocto-docs rev: b627269d18d9c8b4342f8465966d780756ff5a22)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:45 +01:00
Scott Rifenbark
3463593ed3 documentation: dev-manual - small edit to compliance section.
(From yocto-docs rev: 4c80b414645b1cb8750dd877a1f857807a9f1259)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:45 +01:00
Scott Rifenbark
b0c10abb60 documentation: dev-manual - edits to the compliance section.
Feedback from Paul Eggleton suggested to not use the linked
term "Source Directory" in the last paragraph of this section.
Reasoning being that it is mis-leading in this case. People
reading this will be thinking more along the lines of traditional
source code rather than our establishe "Source Directory" term,
which in the doc set refers to either the unpacked poky tarball
or the cloned poky Git repository.

Reported-by: Paul Eggleton <paul.eggleton@intel.com>
(From yocto-docs rev: f9bfcdebf85481839df01442ee81c4c9e8ee559a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:45 +01:00
Scott Rifenbark
aab60fad6d documentation: poky-ref-manual - added note about PATH
Added a note explaining why "PATH" is needed when using
SSTATE_MIRRORS if the shared state directory structure on
the mirror is the same as SSTATE_DIR.

(From yocto-docs rev: 94b8a45827d2bf7f16ec530de694ec5e4e6ed164)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:44 +01:00
Scott Rifenbark
f42d97bba7 documentation: Release date updated.
Updated the release month in all the manual revision history
tables to say "October 2012" from "Sometime in 2012".

(From yocto-docs rev: 1fc9313fe6c69db3d8cece6d940f78a2f0dc8386)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:44 +01:00
Scott Rifenbark
f1bb3fae4f documentation: poky-ref-manual - edits to migration chapter.
Paul Eggleton's review comments applied.

(From yocto-docs rev: b7d9a547218f1d79ae5802a41df11911bc9b7e9f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:44 +01:00
Scott Rifenbark
915b01ea60 documentation: dev-manual - Removed whitespace.
(From yocto-docs rev: 8f6479e8e04a54929e704064ecb44e3fee3cf8b3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:43 +01:00
Scott Rifenbark
eed512b6b0 documentation: poky-ref-manual - New chapter on migration added.
Created a new chapter dedicated to migration information for
the user updgrading from a previous YP release. Also had to
include the new chapter in the poky-ref-manual.xml manual so
that it will build.

(From yocto-docs rev: df8e02c17bc8157ad4abd1e4954f762ccde8915c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:43 +01:00
Scott Rifenbark
81a4c1dcc6 documentation: poky-ref-manual - moved SSTATE_DIR.
This entry was situated so that it was not in alphabetical
order.  I moved it.

(From yocto-docs rev: f545414ead63ff58557142acdf416bd5e58d5c45)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:43 +01:00
Scott Rifenbark
a117b4dbf6 documentation: poky-ref-manual - New glossary entry SSTATE_MIRRORS.
(From yocto-docs rev: acf9ce9105636b54e6846026edb8d49cd65c0e0b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-17 17:32:43 +01:00
Andrea Galbusera
83448c4b31 documentation: kernel-manual - Fixed typo.
(From yocto-docs rev: 0ec3c614bc7fad0cf67ddc2cd802cd0e5b0adf95)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:16 +01:00
Scott Rifenbark
bd83f6a66f documentation: dev-manual - edits to kernel section and compliance
* Edits to get the patching the kernel section more sane.

* A tweak to the opening sentence of the compliance section to
  rid it of the split-infinitives.

(From yocto-docs rev: 8e2ff293e85a602efd98aceb20da5a2ea5f2a34d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:15 +01:00
Scott Rifenbark
4c35e5a983 documentation: dev-manual - edits to the license compliance section.
Implemented Beth Flanagan's review comments.

(From yocto-docs rev: d480c8525861db4383ce1b656168c01d01c26b2e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:15 +01:00
Scott Rifenbark
715456acb8 documentation: dev-manual - edits to the patching the kernel and model sections.
Made changes to try and clean up the process.

(From yocto-docs rev: 9c4fbcb473dc594647ba8779162379a745f8f8d6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:15 +01:00
Scott Rifenbark
e44de7bbb9 documentation: poky-ref-manual, yocto-project-qs - supported distros
Created the new section in the reference manual that lists the
distributions that support YP.

Updated the section in the QS to reference the new section in
the reference manual.

(From yocto-docs rev: ff85945574466b2e6431fbaa0026cdea9d96ac9b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:14 +01:00
Scott Rifenbark
277e463dfd documentation: poky-ref-manual - Updates to the BPN variable.
(From yocto-docs rev: ae0be8b69e3acfd423d5d062ec32621eb3dce4c5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:14 +01:00
Scott Rifenbark
c75c152ec4 documentation: dev-manual - Added license compliance section.
(From yocto-docs rev: a94b34506152f3494f1acce7b03318d3b5a0a283)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:14 +01:00
Paul Eggleton
3ec994ee3e documentation: poky-ref-manual - Updates to the poky structure
* Add meta-yocto, meta-yocto-bsp and meta-hob
* Remove meta-rt - this was merged into OE-Core (meta)
* Remove meta-demoapps - this was dropped

(From yocto-docs rev: c90a8f85f4462caa49c7da2e7ec4541534bee57a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:13 +01:00
Paul Eggleton
059cfe176c documentation: poky-ref-manual - wording changes
Some wording changes from "packages" to "recipe" as appropriate
in some of the variable glossary entries.

(From yocto-docs rev: 8f3d72dad9b68f78987a497092d74ff3f7e35b28)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:13 +01:00
Paul Eggleton
87fb43c266 documentation: poky-ref-manual - change support to opkg from ipkg
We haven't supported ipkg for some time now - it was replaced by opkg
(whilst still using the ipk package format).

(From yocto-docs rev: 07b3dd9a73be25f31c919ed750ca320c7507eff0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:13 +01:00
Paul Eggleton
9888c09554 documentation: poky-ref-manual - Edits to fix default description
* Use correct/up-to-date names of package systems
* SUMMARY does not default to the value of DESCRIPTION, it's the other
  way around (although the logic may be improved in future so that this
  is the effect).

(From yocto-docs rev: 4ec095f0f45cb3a62a8dfdd1a098b23cbe1dc7b5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:12 +01:00
Paul Eggleton
88924d6dea documentation: poky-ref-manual - New backfill variables and section.
Document DISTRO_FEATURES_BACKFILL and MACHINE_FEATURES_BACKFILL. We may
wish to expand upon this in future, but at least this explains what
these variables are for and how to use them.

Also add a link from the DISTRO_FEATURES entry to the section that lists
valid DISTRO_FEATURES items.

(From yocto-docs rev: 018af5c28b44464ae66646780ade910bdcab2bef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:12 +01:00
Paul Eggleton
5abdefd89c documentation: poky-ref-manual - DISTRO description extended.
Extend the description of the DISTRO variable so that it mentions that
this points to a .conf file under conf/distro and mentions what happens
if the value is left blank.

(From yocto-docs rev: 50f8f0394d8d849e0a227d6c9ffcdc3cccb7e307)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:12 +01:00
Paul Eggleton
c4659cd17c documentation: poky-ref-manual - New PACKAGECONFIG glossary entry.
Add a description of the PACKAGECONFIG variable to the variable
glossary.

(From yocto-docs rev: 07d08314d3151de7073567a7800156f69fdb549e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:11 +01:00
Paul Eggleton
56bdedd1da documentation: poky-ref-manual - MACHINE definition extended.
Extend the description of the MACHINE variable so that it mentions that
this points to a .conf file under conf/machine.

(From yocto-docs rev: dd82b176bb059d03faec1abdd406e4cf8f0e5afb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:11 +01:00
Paul Eggleton
65159bbb54 documentation: poky-ref-manual - Variable descriptions edited.
Adjust the descriptions so that it is clearer that these are specific
to a machine and should appear in the machine's .conf file, and are
intended to affect the image contents, not the dependencies of a
specific package. Also change the examples so that they demonstrate more
realistic usage scenarios for these variables.

(From yocto-docs rev: 3c3b8b117b09d78637ae8c4d27f77194cf197ea9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:11 +01:00
Paul Eggleton
1b67411dca documentation: poky-ref-manual - LICENSE_PATH not LICENSE_DIR.
Fixes [YOCTO_#3118]

LICENSE_PATH is the correct variable to use for 1.3 - see:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=3118

(From yocto-docs rev: 96b93175d662696c3c2f25c0d8aa73ab6c5abdd3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:10 +01:00
Paul Eggleton
fa0415052f documentation: dev-manual - Typo fixed.
(From yocto-docs rev: f64babca3cce710718bbc6b4199ae6ad4002d209)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:10 +01:00
Scott Rifenbark
c134f28bfb documentation: Makefile, dev-manual - edits to patching kernel
Made some general edits to the new "Patching the Kernel" section.
Also had to remove a couple of images no longer used in the section
from the Makefile "TARFILES" variable.

(From yocto-docs rev: ac61e22e2f89926fbbda56fbaa4384c3c5156360)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:45:10 +01:00
Paul Eggleton
cf83accd42 local.conf.sample: add PATH to SSTATE_MIRRORS comments
The shared state cache as pointed to by SSTATE_DIR by default now has
two-character subdirectories to prevent there being an issue with too
many files in the same directory; also, native sstate packages will go
into a subdirectory named using the distro ID string. If you copy the
newly structured sstate cache to a mirror location (either local or
remote) and then point to it in SSTATE_MIRRORS, you need to append
"PATH" to the end of the mirror URL so that the path used by bitbake
before the mirror substitution is appended to the path used to access
the mirror.

(From meta-yocto rev: 259935016e5e0400e49026c85bd5727bf09edfa2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:43:45 +01:00
Richard Purdie
0260bb5c69 gitignore: Fix for poky repository
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-11 13:52:14 +01:00
Saul Wold
df127c9cef distro_alias: Update for Internal BOM tracking
(From meta-yocto rev: 70b1616ef32b668ee4e2ebe11dd99e6f8fd067eb)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-11 11:51:23 +01:00
Richard Purdie
a691562e5d gdbm: Resolve host contamination issue
The autoconf macros detect the presence of -ldbm or -lndbm on the host
system and add the library to link against, for now good reason I can
explain.

This patch makes the build behave determinstically whether they're
present or not. Other than the extra linkage, there doesn't appear to be
any other change in behaviour from these options and they look like
dead code.

The extra linkage can cause problems where sstate is used on a machine
where the extra librbary isn't present causing build failures.

(From OE-Core rev: f609bf5525450bfdb8e0864d44c41cce7f9319c9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 22:46:29 +01:00
Elizabeth Flanagan
d13e633272 poky.conf: Bumping DISTRO/SDK values
With 1.3 coming soon, it's time to bump DISTRO_NAME, DISTRO_VERSION
SDK_VERSION and SANITY_TESTED_DISTROS

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-10-10 11:01:09 -07:00
Richard Purdie
c874b99075 pkgconfig: Drop the RREPLACES for pkgconfig-dev
This line causes pkgconfig-dev to replace pkgconfig so the package with all the files
in is replaced by one with no files. This makes no sense and hence we should just
remove this broken line.

At this point in the release, this is the safest way to fix this even if an empty -dev
package is left available.

[YOCTO #2878]

(From OE-Core rev: 5bed2bb831b379a8fbf2f725435af4b7c934359e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 18:28:57 +01:00
Saul Wold
33aaa20229 eglibc: force make to use /bin/bash
The eglibc core build still has a number of issues with /bin/dash.
Recently found is both sysdeps/unix/make-syscalls.sh and it's output,
which make calls via SHELL do not play well with /bin/dash. By force
make to use /bin/bash via SHELL setting it works correctly.

Currenly known issues are: make-syscalls.sh line with a bad substitution,
which can be corrected by:
     vdso_symver="$(printf '%s\n' ${vdso_symver} | sed 's/\./_/')"

Following that there is an issue with emiting a '\n' through a second
echo and then to the compiler. There maybe more issues beyond that.

[YOCTO #3080]

(From OE-Core rev: 9d002f7cdc5309c4d850a76e4fd73ff04c980a07)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 18:28:57 +01:00
Scott Rifenbark
c2543b7ff5 documentation: poky-ref-manual - Formatting fixes for variable names.
(From yocto-docs rev: 71c726194142821eaaf7a222001f2f5047369686)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:14 +01:00
Scott Rifenbark
3c260e5f33 documentation: poky-ref-manual - new glossary entry for "T".
Fixes [YOCTO_#3261]

(From yocto-docs rev: 3f6de40fcdd364728a2b62f59940a9ae4019d1d5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:14 +01:00
Scott Rifenbark
c201ab4985 documentation: dev-manual - fixed typo.
(From yocto-docs rev: 902db5c68b1b0670600f06731b95e1e32c687475)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:13 +01:00
Scott Rifenbark
dc8c3c7b6e documentation: dev-manual - edits to patching kernel section plus others
Removed the temporary text in the new "Patching the Kernel" section
that was copied from the old appendix A.  Fixed the PRINC variable
in the creating a new layer example.

(From yocto-docs rev: 3eba77a81d3460866638a2f2d6b7c27d9dd1a2be)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:13 +01:00
Scott Rifenbark
3108942c6d documentation: dev-manual, mega-manual - removed figure
Removed the "kernel-example-repos-generic.png" file as it describes
the bare clone method for kernel modification.  We are removing
that from this manual.

(From yocto-docs rev: c25c4f662c2f8a83fd9b09583646be9dbe01424c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:13 +01:00
Scott Rifenbark
68431a807e documentation: mega-manual - copied in new kernel flow diagram.
Moved the simpler version of the kernel workflow diagram to the
figures folder.

(From yocto-docs rev: c856fe320a0e70701f14312439fec6ccb707f9bd)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:13 +01:00
Scott Rifenbark
0bd73012ee documentation: dev-manual, bsp-guide, kernel-manual - kernel workflow
The kernel workflow section was re-written to reflect that the
kernel appendix has been removed.  Also, changes to the flow in
general no longer make reference to the bare clone and the copy
of the bare clone as a method used to modify the kernel.

Many links were modified in other manuals as well.

(From yocto-docs rev: 38adbcb00d4305029cfa94e5ef047da41823f021)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:12 +01:00
Scott Rifenbark
8461d4ad85 documentation: dev-manual - Removed figures no longer needed.
The figure that shows the bare clone and the copy of the bare
clone are no longer needed.  The description for the kernel
workflow has been reduced to discussing only modification of
the temporary source files.  We are no longer talking about
creating a bare clone and copying it as a way to modify the
kernel in this manual.  That topic will be described elsewhere.

(From yocto-docs rev: f6a25e5e3763ea7a1f8a81ce377e3b520143b852)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:12 +01:00
Scott Rifenbark
e3f344965c documentation: poky-ref-manual - variables defined.
Fixes [YOCTO_#3245]

New glossary terms for SPECIAL_PKGSUFFIX, and MLPREFIX.

Also improved the definition of the BPN variable.

(From yocto-docs rev: d9eb38122967a5729f3a6aff1dae00427a22f579)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:12 +01:00
Scott Rifenbark
b31fa1bbbe documenation: dev-manual - re-ordered chapters.
The "Common Tasks" chapter is better suited as the last chapter in
this manual.  So I moved the development workflows up a chapter.

(From yocto-docs rev: 19f0a6411c065388b5bd0083338b164b43baff0e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:11 +01:00
Scott Rifenbark
8e337746e9 documentation: dev-manual - removed Appendix A.
The kernel example appendix is now gone.

(From yocto-docs rev: d744e76034ff2711a8c40b9bb1982971d28a04b1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:11 +01:00
Scott Rifenbark
e0f0335467 documentation: dev-manual, bsp-guide - Removing/Moving Appendix A
The kernel example appendix is being removed.  This broke a lot
of links.  For now I have moved the information into a new section
called "Patching the Kernel".  I have preserved the information
by adding the old appendix file as kerne-appendix-orig.xml.

(From yocto-docs rev: 994235a69362dfb0114ef9001ea7f2f2e2fdc5c3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:11 +01:00
Scott Rifenbark
274095d4c2 documentation: dev-manual - Updates to configuring Kernel section
Eliminated the section A.2, which had an example of how to use
menuconfig in the kerenl example appendix.  The information is
now merged into the similar section in Chapter 4 "Common
Tasks."  It was decided that the Appendix A examples in the
manual were too detailed for a general development guide.

(From yocto-docs rev: f88ec421b257657f02cc0f132ec2580c17f07cef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:18:11 +01:00
Tom Zanussi
d38325cbca perl: add archlib_exp variable used to generate ARCHLIB_EXP in config.h
perl.c uses an ARCHLIB_EXP define to generate compile-time code that
adds the archlibexp path to @INC during run-time initialization of a
new perl interpreter.

Because we've changed this value in a temporary way to make it
possible to use ExtUtils::Embed in the target build (the temporary
value in config.sh gets re-stripped out during packaging), the
ARCHLIB_EXP value that gets generated still uses the temporary version
instead of the original expected version (i.e. becauses it's in the
generated config.h, it doesn't get stripped out during packaging like
the others in config.sh).

This creates an unmodified version called archlib_exp that gets used
by a modified config_h.SH to get the correct value into config.h

This patch uses an unmodified version of archlibexp called
archlib_exp, introduced to config.sh, which is used to generate the
correct value of ARCHLIB_EXP into config.h

Fixes [YOCTO #3099].

(From OE-Core rev: cbcfdeb1d55e2e76f199750bda401bad126ae234)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:13:40 +01:00
Martin Jansa
c5fa8e29af sstate-cache-management: hide error message when one of possible layer location doesn't exist
* fixes [YOCTO #3116]

(From OE-Core rev: bde88116d9d7e86ca7ecac4cf990689f972b0b1c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:13:40 +01:00
Andrei Dinu
cf24179d65 bitbake: hob-toolchain: task-core-standalone-sdk-target renamed to packagegroup-core-standalone-sdk-target
This change also applies to task-core-standalone-sdk-target-dbg and resolves
build failures caused by the missing packages.

(Bitbake rev: 4cd0200e96fb282980a945b80af641a6e022e0b4)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:06:12 +01:00
Flanagan, Elizabeth
5f531361a3 bzip license: bzip2 not bzip.
The name of the license for bzip2 is wrong causing warnings
to be thrown.

(From OE-Core rev: 566c6101cc7a8d90973eb22478ffc77eac23f81c)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:06:12 +01:00
Richard Purdie
52e67c5f75 gcc-cross-canadian: Fix gettext dependency
There was a problem in commit ad23395cd1 since
gettext-nativesdk was translated to gettext instead of nativesdk-gettext.

This fixes to use the correct dependency.

(From OE-Core rev: a6e325342cb489e05927d6cb2bb0a24fa6c20ef8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:06:12 +01:00
Cristiana Voicu
2c3e8280e6 bitbake: hob/imageconfigurationpage: a 'hob-image' appears listed in the base image combo box
-remove this image from image combo box

[YOCTO #3230]

(Bitbake rev: 90fd57ee3cb2856c10bda1f5af4879d2b7cf2668)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 16:23:34 +01:00
Constantin Musca
8d019a77d7 bitbake: hob/hobeventhandler: Describe the runCommand failure exception
[YOCTO #1245]

(Bitbake rev: 17f28f09452f70dfb67fce9a397a99deec84dfe5)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 16:23:33 +01:00
Bruce Ashfield
a08139b7ac linux-yocto-bsps/3.4: perf: parallel build and tools fixes
korg commit 42dcd1f4e [perf tools: Fix parallel build] fixes parallel
build issues that are being seen in the autobuilder.

We also have a fix from Tom:

[
    perf annotate: replace 'expand' with equivalent sed expression

    We don't have 'expand' in our userspace so we need to accomplish the
    same thing using 'sed', which we do have.
]

So we apply it to all BSP branches and kernel types.

(From meta-yocto rev: 54fc1fd107f907a208b41a66c0a7b9b40cb428c7)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 16:22:32 +01:00
Bruce Ashfield
df9800cf08 linux-yocto/3.4: perf: parallel build and tools fixes
korg commit 42dcd1f4e [perf tools: Fix parallel build] fixes parallel
build issues that are being seen in the autobuilder.

We also have a fix from Tom:

[
    perf annotate: replace 'expand' with equivalent sed expression

    We don't have 'expand' in our userspace so we need to accomplish the
    same thing using 'sed', which we do have.
]

So we apply it to all BSP branches and kernel types.

(From OE-Core rev: f06e7d38db35c56c71a42264361ec45fb3777a14)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 16:22:32 +01:00
Darren Hart
04232f5908 poky-tiny: Update the default kernel to linux-yocto-tiny_3.4
The 3.4 linux-yocto-tiny kernel successfully boots to a prompt for
qemux86.

(From meta-yocto rev: e24ea77ca40e096f294649e3f85c8ec47efcbb87)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:57 +01:00
Bruce Ashfield
292f79af44 linux-yocto-bsps: update hardware reference BSPs to v3.4.11
The hardware reference BSPs are missing the update to 3.4.11
that the qemu* machines received several weeks ago.

Bumping to 3.4.11 specifically addresses the segfaults being
seen with rpm on the beagleboard.

[YOCTO #3186]

(From meta-yocto rev: f2d93f4e79d0c8c0035774cfa7dc4beb197899f4)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:57 +01:00
Richard Purdie
792ae8d597 sstate: Also add datadir/sgl to sstate whitelist to avoid openjade warning
(From OE-Core rev: e0ff54db5a5ab171ee1d0dbcf7f267235c21e601)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:57 +01:00
Richard Purdie
18be56bfee qemu: When applying qemu-mips workaround, check the file exists first
If qemu-mips was disabled as done in some distros, this wrapper would fail.
Therefore check if the file exists before wrapping it.

(From OE-Core rev: 9ec1c06915b10d142bf5646396c4e91bb61a40a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:56 +01:00
Darren Hart
ae681c2fee linux-yocto-tiny: Add tiny recipe for the 3.4 linux-yocto kernel
This recipe builds the "tiny" kernel type defined by the linux-yocto
meta-data. Support is defined for the qemux86 machine via
common-pc-tiny.scc in the linux-yocto meta branch. The resulting
kernel is 1.8 MB and boots to a serial console with with qemux86 and
core-image-minimal using the following command:

qemu -kernel tmp/deploy/images/bzImage-qemux86.bin -initrd tmp/deploy/images/core-image-minimal-qemux86.cpio.gz -append "root=/dev/ram0 console=ttyS0" -nographic

(From OE-Core rev: cf25f211ec420e1e8dd48c8e62f60deefe2c6d53)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:56 +01:00
Saul Wold
5bb773c967 nfs-export-root: add explict no_subtree-check to suppress warning
exportfs: /etc/exports [1]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/".
  Assuming default behaviour ('no_subtree_check').
  NOTE: this default has changed since nfs-utils version 1.0.x

(From OE-Core rev: 1438228d3b54dfdcf8c36154c927c80fcecf688e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:56 +01:00
Bruce Ashfield
85ea375a5f linux-yocto/3.4: tiny: Add qemu KMACHINE to common-pc-tiny.scc
Updating the meta SRCREV to pickup the following change:

  Ensure the qemux86 machine is defined in common-pc-tiny as it is
  for -standard and -rt.

(From OE-Core rev: 1076910ac3cd55a3f87b5ca7a1db1e38c623480a)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:56 +01:00
Bruce Ashfield
d518061662 linux-yocto/3.4: fix kconfig warnings and unnecessary options
Updating the kernel configuration fragments to fix the following
issues:

  - remove options that are no longer in the 3.4 kernel
  - disable unused, but large kernel modules
  - fix kconfig audit warnings for x86 BSPs
  - make uprobes reusable by multiple fragments

The following meta branch commits are represented by this update:

  3da1172 uprobes: split into enable and patch fragments
  17ec51a meta: cleanup invalid/obselete 3.4 CONFIG options
  b5cee42 meta: disable OCFS2 by default
  efe937e meta: drm: tag DRM options as 'hardware'
  10b5155 meta: emenlow: clean emenlow configuration warnings
  a907b82 meta: add CONFIG_SHMEM to standard kernel config

(From OE-Core rev: a01bb3ec72c375c0f06006769969f63fed3ef566)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-08 09:23:55 +01:00
Scott Rifenbark
eb8ac50d58 documentation: dev-manual - mentioned SRC_URI in the kernel example
this statement in the linux-yocto-3.4.bbappend file needs to
have the comment removed so the source can be found.

(From yocto-docs rev: 821162221818f5ce53bb903aeef57c85314f5083)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:37 +01:00
Scott Rifenbark
1efdf7e149 documentation: dev-manual - fixed KSRC variable in example
(From yocto-docs rev: 1eb13259c872e3a497b9ec32efac8c5614153a53)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:37 +01:00
Scott Rifenbark
f32ee618c2 documentation: dev-manual - added OE_INIT_FILE and went to 3.4
In the Kernel example appendix I changed some remaining 3.2
kernel strings to 3.4.  Also I added the OE_INIT_FILE variable
from poky.ent for use instead of the "oe-init-build-env" string.

(From yocto-docs rev: 1d9d8d72d197bdd81756eed7fe1529f341de6089)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:37 +01:00
Scott Rifenbark
6d5e8360ca documentation: dev-manual - Created generic figures
Each time the kernel revision is bumped (e.g. 3.2 to 3.4)
Some of the figures would be out of date.  The reason is they
had pathnames that included the release of the kernel.
For previous YP releases I was adding logic to the Makefile
to be sure to catch the right files dependent on the branch
from which the documents were being built.  This scheme is
not scalable so I decided to make the figures generic by
adding a note within the figures explaining the place-holder
"<x.x>" as part of a pathname.  Thus, three new figures were
added to the folders directories of the dev-manual and the
mega-manual.  Correspondingly, the 'denzil' version of the
figures were deleted.

I modified the Makefile so that if the BRANCH is not edison
or denzil then the generic figure set is used. I have to retain
the logic for both edison and denzil to cover the case where
a user clones or sets up an edison or denzil repo and then
builds out the manuals. Basically, it had to be backwards
compatible for releases prior to danny.

(From yocto-docs rev: 8283eed4b0b9ec164b87db99c35231f8731ac443)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:36 +01:00
Scott Rifenbark
416433d2ac documentation: dev-manual - Edits to setup part of example
Minor edits to the part of the example that sets up for the
first core-image-minimal build.  Put in the variable to use
for the build environment setup script, updated some changed
output from some of the commands, etc.

(From yocto-docs rev: 0b4b2ddf9a78a9d6d218ed9a6f0acd3e876d9581)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:36 +01:00
Scott Rifenbark
5627ac2b5f documentation: dev-manual - fixed some links to the source directory term.
(From yocto-docs rev: 807a9f0d216478877b84e6204d88461f623ba3f9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:36 +01:00
Scott Rifenbark
4364f11ae3 documentation: Makefile, dev-manual - Updated kernel example repo figure
Danny, the "kernel-example-repo-<release>.png" file changed to
"kernel-example-repo-danny.png".  To correctly make the dev-manual
and the mega-manual some things needed to change:

1. New figure created and added to both the dev-manual and the
   mega-manuals figures directory.

2. The "kernel-example-repo-denzil.png" files from the dev-manual
   and mega-manual figures directory was removed.

3. The Makefile was adjusted so a new BRANCH=danny area now exists
   to set TARFILES for both dev-manual and mega-manual.

(From yocto-docs rev: 8b2ff6b657a1486559799e219baaec9fde2e5c6c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:35 +01:00
Scott Rifenbark
502b0166ae documentation: dev-manual - Added a note to point to yocto-kernel
I added a note at the beginning of this appendix that references
the yocto-kernel script as a way to quickly manage kernel patches
and configuration.

(From yocto-docs rev: 35cd7f6a9722120e47ae8b422dd86593497ebf1c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:35 +01:00
Scott Rifenbark
98a41af6d3 documentation: poky-ref-manual, yocto-project-qs - Packages fixed
Fixes [YOCTO_#3180]

Final changes to the packages section.  They were re-organized and
the set is complete and thus fixes this bug.

(From yocto-docs rev: 533b45c9d41330497bbd0da58b812a4738ba64a8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:35 +01:00
Otavio Salvador
1bb1d2f35b oe-buildenv-internal: Add BB_NO_NETWORK to BB_ENV_EXTRAWHITE
This allows for use of bitbake in offline mode, but override it in
command line.

(From OE-Core rev: bcefd015fb163d9c382ae05a86569dbcfd3d736a)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:15:00 +01:00
Saul Wold
5e1f39e998 pulseaudio: ensure X11 and consolekit are disabled
When DISTRO_FEATURES does not include X11 ensure that both x11
and gtk are diabled correctly.  ConsoleKit also has x11, so ensure
that any RDEPENDS is also excluded.

The flags for x11 changed at somepoint to use enable/disable, but
this recipe was not updated.

(From OE-Core rev: 0730d3449aa28600488e73de883240ba2bd60aec)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:14:59 +01:00
Mark Hatle
d3b08b4272 package_rpm.bbclass: Fix an issue where complementary installs fail
Also ensure that we always cleanup the temporary install manifest files,
some of them will cause problems if they exist in multiple install
attempts.

Finally verify that the lists remain uniquely sorted otherwise the
complementary install may install the same files numerous times,
triggering a failure.

(From OE-Core rev: 4f2a290cbcc6c21afbb2a6e6148efdef4d135b41)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-07 13:14:59 +01:00
Richard Purdie
415be864ab sstate: Add extra entries to the sstate duplicate files whitelist
This avoids errors where gcc/binutils get installed to the native sysroot
in the same location for multiple package architectures. Ultimately making
these native recipes with ${PACKAGE_ARCH} appended to PN will resolve this
but hide the warnings until this gets sorted out.

Also hide the python and docbook catalog warnings since they're known about,
nothing to worry about and we'll aim to clean them up properly in the 1.4 cycle.

(From OE-Core rev: 5bae58a5b59c04d8947f4842f19837a914c29b52)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 16:18:26 +01:00
Richard Purdie
ab8d981727 sstate: Normalise paths before comparing with the whitelist
Without this, path components like // could break comparisions with the whitelist leading
to warnings being displayed to the user unintentionally.

(From OE-Core rev: d3c46ca56fab2f07bf16b61514f30765543a8747)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 16:18:26 +01:00
Richard Purdie
7f4a8dd914 libdrm: Explicitly disable the cairo dependency
We don't want the cairo dependency. Unfortunately simply checking whether its present
isn't good enough. If its not in DEPENDS, it can disappear half way through building.
We therefore need to explictly disable it.

(From OE-Core rev: 51df11c5747f69b4112121df78fc1e10644d390a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 16:18:26 +01:00
Saul Wold
7b9803160c poky.conf: fix Poky release info to include release number
(From meta-yocto rev: 4287c2199443b41da3e5637a844f886513d92bc0)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 14:49:55 +01:00
Khem Raj
679d76e865 toolchain-scripts.bbclass: Export M4
some packages use M4 variable from environment and sometimes
its hardcoded to /usr/bin/m4 if not found in environment. Lets
define it such that it is picked from path

(From OE-Core rev: 06c5593d15f206458b9a5b45ed1229abfee16e95)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 14:49:54 +01:00
Laurentiu Palcu
7d68b952cb cross-canadian.bbclass: add native chrpath dependency
In order for the RPATHs in 32bit toolchain binaries to be relocated
properly, chrpath >=0.14 is needed.

[YOCTO #3161]
[YOCTO #3201]

(From OE-Core rev: 71c71b972100803d33fbb062a237e8a15167387b)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-05 12:25:14 +01:00
Scott Garman
ee76b805f9 runqemu: allow multiple unfs instances to run simultaneously
A miscalculation in the way the port numbers of mountd and nfsd
are created was causing conflicts when starting multiple instances
of qemu using userspace nfs.

Thanks to Rudolf Streif for proposing this fix!

Fixes [YOCTO #1969]

(From OE-Core rev: 94eef772c283170d19ba92c8de0054cd093fc487)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:10:56 +01:00
Scott Garman
746a86758b runqemu-export-rootfs: improve rpcbind error detection
mountd requires rpcbind or portmap. Check that one of these
services is running before doing anything else, and report
a user-friendly error when they are not found.

(From OE-Core rev: 16d6ec51f4b976c9b86a8b6bf6251089df2d2732)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:10:56 +01:00
Scott Garman
c435e4f9d2 runqemu-export-rootfs: use consistent whitespace
(From OE-Core rev: b05185240669e0ae811a23620913b35ca99493fb)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:10:56 +01:00
Flanagan, Elizabeth
f60d41b4a2 common-licenses: Adding bzip
bzip requires it's own specific license.

(From OE-Core rev: df2b756436b90f8f9ff229ba64d0af30d9d4f923)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:09:13 +01:00
Scott Rifenbark
1f0a3c56ba documentation: dev-manual - Removed Appendix A.
This appendix is antiquated and needed removed.  The BSP
development example is now in the BSP guide where it talks
about running the yocto-bsp script.

(From yocto-docs rev: 892ff450d79a7564a72f11eb7510d349ca71d47a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:20 +01:00
Scott Rifenbark
20a2dda2c2 documentation: bsp-guide, dev-manual, kernel-manual - Removed links
Removing the Appendix A (BSP) example had some rippling affects
throughout the doc set.  There were several links into the appendix.
All these links had to either be modified (if possible) or simply
removed since the appendix will be removed.

(From yocto-docs rev: fff35abd87e945de1806eef63a56a956d104bf92)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:20 +01:00
Scott Rifenbark
48d3b058d9 documentation: dev-manual - Updated BSP flow overview.
This section now points into the BSP Guide where it talks
about using the yocto-bsp script to create a BSP.  The prior
method was by hand and described in an appendix (A) of the
YP Development Manual.

FYI - this results in the removal of Appendex A in a future
commit.

(From yocto-docs rev: 5e1c44b1768b79dd1447ea47461b84248bd2111f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:19 +01:00
Scott Rifenbark
94cb42e3fa documentation: poky-ref-manual, yocto-project-qs - Updates to packages
A few edits to the respective sections that talk about required
packages.  Some wording changes for headless and graphics
supported systems.  Also, re-inserted the note about older
CentOS systems.

Reported-by Paul Eggleton <paul.eggleton>
(From yocto-docs rev: 112370758cf41104ff04c4996d4a432e6bd54be1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:19 +01:00
Scott Rifenbark
5757a25a71 documentation: bsp-guide - scrub edits for the BSP Tools section
I did a walk through of the "Using the Yocto Project's BSP Tools"
section.  Updated included altered output based on the current
example commands and scenarios.

Also made changes to the bblayers.conf file as the default
version for this file has changed.

(From yocto-docs rev: d8a2195e37d8f96702026e42bb43daf39852ffcb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:18 +01:00
Scott Rifenbark
d75b9fda39 documentation: dev-manual, poky-ref-manual - updated bblayers.conf
The examples were out of date.  They did not show the
meta-yocto-bsp layer, which is there now by default.

(From yocto-docs rev: ea2e2e8a259bc3e629fb8087229872b9818a696a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:18 +01:00
Scott Rifenbark
3aadcacead documentation: dev-manual - Updated Enabling Your Layer section
This section was out of date.  I copied in the most recent version
of the bblayers.conf file, which sets LCONF_VERSION to "6" now.
Also, added the meta-yocto-bsp layer to the example.

Additionally, I inserted a Note explaining the consequences of
removing the meta-yocto layer.  The note references [YOCTO_#3176]
for more information.

(From yocto-docs rev: 532b72c5c18b2a9a61619164bae6216c91c2ecc9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:18 +01:00
Scott Rifenbark
f0db0f6627 documentation: dev-manual - updated LCONF_VERSION in the example.
The current setting was changed from "1" to "6".

(From yocto-docs rev: 7f5be4b0b2d1e17add774c7ba3b8803ad770a8fc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:17 +01:00
Scott Rifenbark
8db439addc documentation: dev-manual - Updated bblayers.conf example
Added the meta-yocto-bsp layer to the example listing in the
"Enabling Your Layer" section.

(From yocto-docs rev: 95fb13a1049ccaffb3531c93a28a3c480ea1a243)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:17 +01:00
Scott Rifenbark
320e32e307 documentation: poky-ref-manual - Updated BBLAYERS variable.
Added the meta-yocto-bsp layer to the example.

(From yocto-docs rev: be4ee9d08527b654071b8d4ff54ad978f50a98f5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:16 +01:00
Scott Rifenbark
81ce4a9015 documentation: bsp-guide - Changed Source Directory capitalization.
The term should be initially capitalized.

(From yocto-docs rev: 38a11d512bfe675319fb76da9d7618315af91c47)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:16 +01:00
Scott Rifenbark
1eb01b6661 documentation: yocto-project-qs, yocto-project-ref - package re-org
Reorganization of the packages section in the YP Quick Start.
These are now ordered still by distro but the listed packages
have been culled down to just the needed ones to run an
image on QEMU with graphical support.

A corresponding section in the reference manual now provides
the comprehensive list of packages for all supported distros.
The section in the reference manual is broken down by
distro and by function.

Finally, four new variables were introduced to track the
essential packages for each of the distros.  The variables
are defined in poky.ent and follow the form
<distro>_HOST_PACKAGES_ESSENTIAL.  This will make it so
we don't have to maintain this list of essential packages
in multiple places.

Reported-by: Paul Eggleton <paul.eggleton@intel.com>
(From yocto-docs rev: 839b441791980db82f4795454e976e606b486d25)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:08:16 +01:00
Saul Wold
528b0fe347 distro_alias: Update for 1.3 BOM Creation
Fixed Ordering of packagegroup
Added entries for qemu-config split
Added entries for new packages, anotated approved packages

(From meta-yocto rev: 2c50e628aa6735156071f53d617938e610370b6f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:07:52 +01:00
Constantin Musca
8202e49c5f bitbake: hob/hobeventhandler: Throw an exception if runCommand fails
- throw a Hob exception if runCommand returns 'Busy' or
'No such command'

[YOCTO #1245]

(Bitbake rev: 5a8e3baa66f845599a616f080a7efce81ecda631)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:07:52 +01:00
Paul Eggleton
f540449d19 build-appliance-image: Fix spacing in DESCRIPTION
Fixes [YOCTO #2636]

(From OE-Core rev: 831b88806a3cb0125003aa6d3348716bcfd662a1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:07:51 +01:00
Ross Burton
5d27c4968b shutdown-desktop: ensure the postinst script succeeds
When the hostname isn't qemuarm the grep fails so the postinst fails. Stop this
happening by explicitly evaluating true.

[YOCTO #3224]

(From OE-Core rev: 8848ea6793ddaab61c9dad250ec578d68d7d087d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:07:51 +01:00
Ross Burton
cf1f3f552f sato-icon-theme: use gtk-icon-cache helper class
Instead of explicitly updating the icon cache use the helper class that also
forces a loader update at the same time.  This eliminates the possibility of
updating the icon cache without any gdk-pixbuf loaders.

Also check that the Sato icon theme isn't already set to avoid appending to the
file every time the postinst runs.

[YOCTO #2399]

(From OE-Core rev: 9d98dbdae4c05fcf50d546f554a04dc3f0bd66c3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-04 14:07:50 +01:00
688 changed files with 16685 additions and 9607 deletions

7
.gitignore vendored
View File

@@ -1,4 +1,3 @@
bitbake
*.pyc
*.pyo
/*.patch
@@ -9,10 +8,10 @@ scripts/oe-git-proxy-socks
sources/
meta-*
!meta-skeleton
!meta-demoapps
!meta-hob
*.swp
*.orig
*.rej
*~
!meta-yocto
!meta-yocto-bsp

View File

@@ -40,7 +40,7 @@ from bb import cooker
from bb import ui
from bb import server
__version__ = "1.16.0"
__version__ = "1.17.0"
logger = logging.getLogger("BitBake")
# Unbuffer stdout to avoid log truncation in the event
@@ -214,10 +214,6 @@ Default BBFILES are the .bb files in the current directory.""")
if configuration.bind and configuration.servertype != "xmlrpc":
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
# Save a logfile for cooker into the current working directory. When the
# server is daemonized this logfile will be truncated.
cooker_logfile = os.path.join(os.getcwd(), "cooker.log")
bb.msg.init_msgconfig(configuration.verbose, configuration.debug,
configuration.debug_domains)
@@ -246,7 +242,7 @@ Default BBFILES are the .bb files in the current directory.""")
server.addcooker(cooker)
server.saveConnectionDetails()
server.detach(cooker_logfile)
server.detach()
# Should no longer need to ever reference cooker
del cooker

View File

@@ -21,7 +21,7 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
__version__ = "1.16.0"
__version__ = "1.17.0"
import sys
if sys.version_info < (2, 6, 0):

View File

@@ -491,9 +491,11 @@ def stamp_cleanmask_internal(taskname, d, file_name):
extrainfo = d.getVarFlag(taskflagname, 'stamp-extra-info', True) or ""
if not stamp:
return
return []
return bb.parse.siggen.stampcleanmask(stamp, file_name, taskname, extrainfo)
cleanmask = bb.parse.siggen.stampcleanmask(stamp, file_name, taskname, extrainfo)
return [cleanmask, cleanmask.replace(taskflagname, taskflagname + "_setscene")]
def make_stamp(task, d, file_name = None):
"""
@@ -501,8 +503,8 @@ def make_stamp(task, d, file_name = None):
(d can be a data dict or dataCache)
"""
cleanmask = stamp_cleanmask_internal(task, d, file_name)
if cleanmask:
bb.utils.remove(cleanmask)
for mask in cleanmask:
bb.utils.remove(mask)
stamp = stamp_internal(task, d, file_name)
# Remove the file and recreate to force timestamp

View File

@@ -405,12 +405,12 @@ class Cache(object):
"""Parse the specified filename, returning the recipe information"""
infos = []
datastores = cls.load_bbfile(filename, appends, configdata)
depends = set()
depends = []
for variant, data in sorted(datastores.iteritems(),
key=lambda i: i[0],
reverse=True):
virtualfn = cls.realfn2virtual(filename, variant)
depends |= (data.getVar("__depends", False) or set())
depends = depends + (data.getVar("__depends", False) or [])
if depends and not variant:
data.setVar("__depends", depends)

View File

@@ -44,6 +44,9 @@ class CommandFailed(CommandExit):
self.error = message
CommandExit.__init__(self, 1)
class CommandError(Exception):
pass
class Command:
"""
A queue of asynchronous commands for bitbake
@@ -57,21 +60,25 @@ class Command:
self.currentAsyncCommand = None
def runCommand(self, commandline):
try:
command = commandline.pop(0)
if command in CommandsSync.__dict__:
# Can run synchronous commands straight away
return getattr(CommandsSync, command)(self.cmds_sync, self, commandline)
if self.currentAsyncCommand is not None:
return "Busy (%s in progress)" % self.currentAsyncCommand[0]
if command not in CommandsAsync.__dict__:
return "No such command"
self.currentAsyncCommand = (command, commandline)
self.cooker.server_registration_cb(self.cooker.runCommands, self.cooker)
return True
except:
import traceback
return traceback.format_exc()
command = commandline.pop(0)
if hasattr(CommandsSync, command):
# Can run synchronous commands straight away
command_method = getattr(self.cmds_sync, command)
try:
result = command_method(self, commandline)
except CommandError as exc:
return None, exc.args[0]
except Exception:
return None, traceback.format_exc()
else:
return result, None
if self.currentAsyncCommand is not None:
return None, "Busy (%s in progress)" % self.currentAsyncCommand[0]
if command not in CommandsAsync.__dict__:
return None, "No such command"
self.currentAsyncCommand = (command, commandline)
self.cooker.server_registration_cb(self.cooker.runCommands, self.cooker)
return True, None
def runAsyncCommand(self):
try:
@@ -139,7 +146,11 @@ class CommandsSync:
"""
Get any command parsed from the commandline
"""
return command.cooker.commandlineAction
cmd_action = command.cooker.commandlineAction
if cmd_action['msg']:
raise CommandError(msg)
else:
return cmd_action['action']
def getVariable(self, command, params):
"""

View File

@@ -239,8 +239,10 @@ class BBCooker:
self.commandlineAction['msg'] = "No target should be used with the --environment and --buildfile options."
elif len(self.configuration.pkgs_to_build) > 0:
self.commandlineAction['action'] = ["showEnvironmentTarget", self.configuration.pkgs_to_build]
self.configuration.data.setVar("BB_CONSOLELOG", None)
else:
self.commandlineAction['action'] = ["showEnvironment", self.configuration.buildfile]
self.configuration.data.setVar("BB_CONSOLELOG", None)
elif self.configuration.buildfile is not None:
self.commandlineAction['action'] = ["buildFile", self.configuration.buildfile, self.configuration.cmd]
elif self.configuration.revisions_changed:
@@ -311,6 +313,10 @@ class BBCooker:
elif len(pkgs_to_build) == 1:
self.updateCache()
ignore = self.configuration.data.getVar("ASSUME_PROVIDED", True) or ""
if pkgs_to_build[0] in set(ignore.split()):
bb.fatal("%s is in ASSUME_PROVIDED" % pkgs_to_build[0])
localdata = data.createCopy(self.configuration.data)
bb.data.update_data(localdata)
bb.data.expandKeys(localdata)
@@ -690,8 +696,8 @@ class BBCooker:
# Generate a list of parsed configuration files by searching the files
# listed in the __depends and __base_depends variables with a .conf suffix.
conffiles = []
dep_files = self.configuration.data.getVar('__depends') or set()
dep_files.union(self.configuration.data.getVar('__base_depends') or set())
dep_files = self.configuration.data.getVar('__base_depends') or []
dep_files = dep_files + (self.configuration.data.getVar('__depends') or [])
for f in dep_files:
if f[0].endswith(".conf"):

View File

@@ -566,3 +566,19 @@ class SanityCheckFailed(Event):
Event.__init__(self)
self._msg = msg
self._network_error = network_error
class NetworkTest(Event):
"""
Event to start network test
"""
class NetworkTestPassed(Event):
"""
Event to indicate network test has passed
"""
class NetworkTestFailed(Event):
"""
Event to indicate network test has failed
"""

View File

@@ -963,15 +963,18 @@ class FetchMethod(object):
dest = os.path.join(rootdir, os.path.basename(file))
if (file != dest) and not (os.path.exists(dest) and os.path.samefile(file, dest)):
if os.path.isdir(file):
filesdir = os.path.realpath(data.getVar("FILESDIR", True))
# If for example we're asked to copy file://foo/bar, we need to unpack the result into foo/bar
basepath = getattr(urldata, "basepath", None)
destdir = "."
if file[0:len(filesdir)] == filesdir:
destdir = file[len(filesdir):file.rfind('/')]
if basepath and basepath.endswith("/"):
basepath = basepath.rstrip("/")
elif basepath:
basepath = os.path.dirname(basepath)
if basepath and basepath.find("/") != -1:
destdir = basepath[:basepath.rfind('/')]
destdir = destdir.strip('/')
if len(destdir) < 1:
destdir = "."
elif not os.access("%s/%s" % (rootdir, destdir), os.F_OK):
os.makedirs("%s/%s" % (rootdir, destdir))
if destdir != "." and not os.access("%s/%s" % (rootdir, destdir), os.F_OK):
os.makedirs("%s/%s" % (rootdir, destdir))
cmd = 'cp -pPR %s %s/%s/' % (file, rootdir, destdir)
#cmd = 'tar -cf - -C "%d" -ps . | tar -xf - -C "%s/%s/"' % (file, rootdir, destdir)
else:

View File

@@ -44,6 +44,7 @@ class Local(FetchMethod):
# We don't set localfile as for this fetcher the file is already local!
ud.decodedurl = urllib.unquote(ud.url.split("://")[1].split(";")[0])
ud.basename = os.path.basename(ud.decodedurl)
ud.basepath = ud.decodedurl
return
def localpath(self, url, urldata, d):
@@ -62,7 +63,12 @@ class Local(FetchMethod):
if filesdir:
logger.debug(2, "Searching for %s in path: %s" % (path, filesdir))
newpath = os.path.join(filesdir, path)
if not os.path.exists(newpath) and path.find("*") == -1:
if (not newpath or not os.path.exists(newpath)) and path.find("*") != -1:
# For expressions using '*', best we can do is take the first directory in FILESPATH that exists
newpath = bb.utils.which(filespath, ".")
logger.debug(2, "Searching for %s in path: %s" % (path, newpath))
return newpath
if not os.path.exists(newpath):
dldirfile = os.path.join(d.getVar("DL_DIR", True), path)
logger.debug(2, "Defaulting to %s for %s" % (dldirfile, path))
bb.utils.mkdirhier(os.path.dirname(dldirfile))

View File

@@ -69,10 +69,10 @@ class Wget(FetchMethod):
basecmd += " -O ${DL_DIR}/" + ud.localfile
if checkonly:
fetchcmd = d.getVar("CHECKCOMMAND_wget", True) or d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
fetchcmd = d.getVar("CHECKCOMMAND_wget", True) or d.expand(basecmd + " --spider '${URI}'")
elif os.path.exists(ud.localpath):
# file exists, but we didnt complete it.. trying again..
fetchcmd = d.getVar("RESUMECOMMAND_wget", True) or d.expand(basecmd + " --spider -P ${DL_DIR} '${URI}'")
fetchcmd = d.getVar("RESUMECOMMAND_wget", True) or d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
else:
fetchcmd = d.getVar("FETCHCOMMAND_wget", True) or d.expand(basecmd + " -P ${DL_DIR} '${URI}'")

View File

@@ -23,6 +23,7 @@ Message handling infrastructure for bitbake
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import copy
import logging
import collections
from itertools import groupby
@@ -55,6 +56,25 @@ class BBLogFormatter(logging.Formatter):
CRITICAL: 'ERROR',
}
color_enabled = False
BASECOLOR, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE = range(29,38)
COLORS = {
DEBUG3 : CYAN,
DEBUG2 : CYAN,
DEBUG : CYAN,
VERBOSE : BASECOLOR,
NOTE : BASECOLOR,
PLAIN : BASECOLOR,
WARNING : YELLOW,
ERROR : RED,
CRITICAL: RED,
}
BLD = '\033[1;%dm'
STD = '\033[%dm'
RST = '\033[0m'
def getLevelName(self, levelno):
try:
return self.levelnames[levelno]
@@ -67,6 +87,8 @@ class BBLogFormatter(logging.Formatter):
if record.levelno == self.PLAIN:
msg = record.getMessage()
else:
if self.color_enabled:
record = self.colorize(record)
msg = logging.Formatter.format(self, record)
if hasattr(record, 'bb_exc_info'):
@@ -75,6 +97,17 @@ class BBLogFormatter(logging.Formatter):
msg += '\n' + ''.join(formatted)
return msg
def colorize(self, record):
color = self.COLORS[record.levelno]
if self.color_enabled and color is not None:
record = copy.copy(record)
record.levelname = "".join([self.BLD % color, record.levelname, self.RST])
record.msg = "".join([self.STD % color, record.msg, self.RST])
return record
def enable_color(self):
self.color_enabled = True
class BBLogFilter(object):
def __init__(self, handler, level, debug_domains):
self.stdlevel = level

View File

@@ -73,8 +73,7 @@ def update_mtime(f):
def mark_dependency(d, f):
if f.startswith('./'):
f = "%s/%s" % (os.getcwd(), f[2:])
deps = d.getVar('__depends') or set()
deps.update([(f, cached_mtime(f))])
deps = (d.getVar('__depends') or []) + [(f, cached_mtime(f))]
d.setVar('__depends', deps)
def supports(fn, data):
@@ -134,8 +133,8 @@ def vars_from_file(mypkg, d):
def get_file_depends(d):
'''Return the dependent files'''
dep_files = []
depends = d.getVar('__depends', True) or set()
depends = depends.union(d.getVar('__base_depends', True) or set())
depends = d.getVar('__base_depends', True) or []
depends = depends + (d.getVar('__depends', True) or [])
for (fn, _) in depends:
dep_files.append(os.path.abspath(fn))
return " ".join(dep_files)

View File

@@ -785,6 +785,7 @@ class RunQueue:
self.stamppolicy = cfgData.getVar("BB_STAMP_POLICY", True) or "perfile"
self.hashvalidate = cfgData.getVar("BB_HASHCHECK_FUNCTION", True) or None
self.setsceneverify = cfgData.getVar("BB_SETSCENE_VERIFY_FUNCTION", True) or None
self.depvalidate = cfgData.getVar("BB_SETSCENE_DEPVALID", True) or None
self.state = runQueuePrepare
@@ -1161,6 +1162,26 @@ class RunQueueExecute:
return pid, pipein, pipeout
def check_dependencies(self, task, taskdeps, setscene = False):
if not self.rq.depvalidate:
return False
taskdata = {}
taskdeps.add(task)
for dep in taskdeps:
if setscene:
depid = self.rqdata.runq_setscene[dep]
else:
depid = dep
fn = self.rqdata.taskData.fn_index[self.rqdata.runq_fnid[depid]]
pn = self.rqdata.dataCache.pkg_fn[fn]
taskname = self.rqdata.runq_task[depid]
taskdata[dep] = [pn, taskname, fn]
call = self.rq.depvalidate + "(task, taskdata, notneeded, d)"
locs = { "task" : task, "taskdata" : taskdata, "notneeded" : self.scenequeue_notneeded, "d" : self.cooker.configuration.data }
valid = bb.utils.better_eval(call, locs)
return valid
class RunQueueExecuteDummy(RunQueueExecute):
def __init__(self, rq):
self.rq = rq
@@ -1198,16 +1219,8 @@ class RunQueueExecuteTasks(RunQueueExecute):
logger.debug(1, 'Considering %s (%s): %s' % (task, self.rqdata.get_user_idstring(task), str(self.rqdata.runq_revdeps[task])))
if len(self.rqdata.runq_revdeps[task]) > 0 and self.rqdata.runq_revdeps[task].issubset(self.rq.scenequeue_covered) and task not in self.rq.scenequeue_notcovered:
ok = True
for revdep in self.rqdata.runq_revdeps[task]:
if self.rqdata.runq_fnid[task] != self.rqdata.runq_fnid[revdep]:
logger.debug(1, 'Found "bad" dep %s (%s) for %s (%s)' % (revdep, self.rqdata.get_user_idstring(revdep), task, self.rqdata.get_user_idstring(task)))
ok = False
break
if ok:
found = True
self.rq.scenequeue_covered.add(task)
found = True
self.rq.scenequeue_covered.add(task)
logger.debug(1, 'Skip list (pre setsceneverify) %s', sorted(self.rq.scenequeue_covered))
@@ -1408,6 +1421,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.scenequeue_covered = set()
self.scenequeue_notcovered = set()
self.scenequeue_notneeded = set()
# If we don't have any setscene functions, skip this step
if len(self.rqdata.runq_setscene) == 0:
@@ -1417,7 +1431,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.stats = RunQueueStats(len(self.rqdata.runq_setscene))
endpoints = {}
sq_revdeps = []
sq_revdeps_new = []
sq_revdeps_squash = []
@@ -1432,12 +1445,15 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.runq_complete.append(0)
self.runq_buildable.append(0)
# First process the chains up to the first setscene task.
endpoints = {}
for task in xrange(len(self.rqdata.runq_fnid)):
sq_revdeps.append(copy.copy(self.rqdata.runq_revdeps[task]))
sq_revdeps_new.append(set())
if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
endpoints[task] = set()
# Secondly process the chains between setscene tasks.
for task in self.rqdata.runq_setscene:
for dep in self.rqdata.runq_depends[task]:
if dep not in endpoints:
@@ -1453,6 +1469,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
if sq_revdeps_new[point]:
tasks |= sq_revdeps_new[point]
sq_revdeps_new[point] = set()
if point in self.rqdata.runq_setscene:
sq_revdeps_new[point] = tasks
for dep in self.rqdata.runq_depends[point]:
if point in sq_revdeps[dep]:
sq_revdeps[dep].remove(point)
@@ -1465,6 +1483,42 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
process_endpoints(endpoints)
# Build a list of setscene tasks which as "unskippable"
# These are direct endpoints referenced by the build
endpoints2 = {}
sq_revdeps2 = []
sq_revdeps_new2 = []
def process_endpoints2(endpoints):
newendpoints = {}
for point, task in endpoints.items():
tasks = set([point])
if task:
tasks |= task
if sq_revdeps_new2[point]:
tasks |= sq_revdeps_new2[point]
sq_revdeps_new2[point] = set()
if point in self.rqdata.runq_setscene:
sq_revdeps_new2[point] = tasks
for dep in self.rqdata.runq_depends[point]:
if point in sq_revdeps2[dep]:
sq_revdeps2[dep].remove(point)
if tasks:
sq_revdeps_new2[dep] |= tasks
if (len(sq_revdeps2[dep]) == 0 or len(sq_revdeps_new2[dep]) != 0) and dep not in self.rqdata.runq_setscene:
newendpoints[dep] = tasks
if len(newendpoints) != 0:
process_endpoints2(newendpoints)
for task in xrange(len(self.rqdata.runq_fnid)):
sq_revdeps2.append(copy.copy(self.rqdata.runq_revdeps[task]))
sq_revdeps_new2.append(set())
if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
endpoints2[task] = set()
process_endpoints2(endpoints2)
self.unskippable = []
for task in self.rqdata.runq_setscene:
if sq_revdeps_new2[task]:
self.unskippable.append(self.rqdata.runq_setscene.index(task))
for task in xrange(len(self.rqdata.runq_fnid)):
if task in self.rqdata.runq_setscene:
deps = set()
@@ -1625,6 +1679,13 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
# Find the next setscene to run
for nexttask in xrange(self.stats.total):
if self.runq_buildable[nexttask] == 1 and self.runq_running[nexttask] != 1:
if nexttask in self.unskippable:
logger.debug(2, "Setscene task %s is unskippable" % self.rqdata.get_user_idstring(self.rqdata.runq_setscene[nexttask]))
if nexttask not in self.unskippable and len(self.sq_revdeps[nexttask]) > 0 and self.sq_revdeps[nexttask].issubset(self.scenequeue_covered) and self.check_dependencies(nexttask, self.sq_revdeps[nexttask], True):
logger.debug(2, "Skipping setscene for task %s" % self.rqdata.get_user_idstring(self.rqdata.runq_setscene[nexttask]))
self.task_skip(nexttask)
self.scenequeue_notneeded.add(nexttask)
return True
task = nexttask
break
if task is not None:

View File

@@ -191,8 +191,8 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
return
def detach(self, cooker_logfile):
self.logfile = cooker_logfile
def detach(self):
return
def establishConnection(self):
self.connection = BitBakeServerConnection(self)

View File

@@ -45,10 +45,10 @@ class ServerCommunicator():
while True:
# don't let the user ctrl-c while we're waiting for a response
try:
if self.connection.poll(.5):
if self.connection.poll(20):
return self.connection.recv()
else:
return None
bb.fatal("Timeout while attempting to communicate with bitbake server")
except KeyboardInterrupt:
pass
@@ -256,7 +256,7 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
return
def detach(self, cooker_logfile):
def detach(self):
self.server.start()
return

View File

@@ -280,8 +280,8 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
self.serverinfo = BitbakeServerInfo(self.server.host, self.server.port)
def detach(self, cooker_logfile):
daemonize.createDaemon(self.server.serve_forever, cooker_logfile)
def detach(self):
daemonize.createDaemon(self.server.serve_forever)
del self.cooker
del self.server

View File

@@ -49,7 +49,7 @@ class SignatureGenerator(object):
return ("%s.%s.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
def stampcleanmask(self, stampbase, file_name, taskname, extrainfo):
return ("%s.%s*.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
return ("%s.%s.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
def dump_sigtask(self, fn, task, stampbase, runtime):
return
@@ -276,7 +276,6 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
k = fn + "." + taskname
if clean:
h = "*"
taskname = taskname + "*"
elif k in self.taskhash:
h = self.taskhash[k]
else:

View File

@@ -30,6 +30,8 @@ from bb.ui.crumbs.runningbuild import RunningBuildTreeView
from bb.ui.crumbs.runningbuild import BuildFailureTreeView
from bb.ui.crumbs.hobpages import HobPage
from bb.ui.crumbs.hobcolor import HobColors
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
class BuildConfigurationTreeView(gtk.TreeView):
def __init__ (self):
@@ -204,8 +206,6 @@ class BuildDetailsPage (HobPage):
def add_build_fail_top_bar(self, actions, log_file=None):
primary_action = "Edit %s" % actions
self.notebook.set_page("Issues")
color = HobColors.ERROR
build_fail_top = gtk.EventBox()
#build_fail_top.set_size_request(-1, 200)
@@ -226,7 +226,17 @@ class BuildDetailsPage (HobPage):
label = gtk.Label()
label.set_alignment(0.0, 0.5)
label.set_markup("<span size='medium'>Check the \"Issues\" information for more details</span>")
# Ensure variable disk_full is defined
try:
self.builder.disk_full
except NameError:
self.builder.disk_full = False
if self.builder.disk_full:
markup = "<span size='medium'>There is no disk space left, so Hob cannot finish building your image. Free up some disk space\n"
markup += "and restart the build. Check the \"Issues\" tab for more details</span>"
label.set_markup(markup)
else:
label.set_markup("<span size='medium'>Check the \"Issues\" information for more details</span>")
build_fail_tab.attach(label, 4, 40, 4, 9)
# create button 'Edit packages'
@@ -234,22 +244,36 @@ class BuildDetailsPage (HobPage):
#action_button.set_size_request(-1, 40)
action_button.set_tooltip_text("Edit the %s parameters" % actions)
action_button.connect('clicked', self.failure_primary_action_button_clicked_cb, primary_action)
build_fail_tab.attach(action_button, 4, 13, 9, 12)
if log_file:
open_log_button = HobAltButton("Open log")
open_log_button.set_relief(gtk.RELIEF_HALF)
open_log_button.set_tooltip_text("Open the build's log file")
open_log_button.connect('clicked', self.open_log_button_clicked_cb, log_file)
build_fail_tab.attach(open_log_button, 14, 23, 9, 12)
attach_pos = (24 if log_file else 14)
file_bug_button = HobAltButton('File a bug')
file_bug_button.set_relief(gtk.RELIEF_HALF)
file_bug_button.set_tooltip_text("Open the Yocto Project bug tracking website")
file_bug_button.connect('clicked', self.failure_activate_file_bug_link_cb)
build_fail_tab.attach(file_bug_button, attach_pos, attach_pos + 9, 9, 12)
if not self.builder.disk_full:
build_fail_tab.attach(action_button, 4, 13, 9, 12)
if log_file:
build_fail_tab.attach(open_log_button, 14, 23, 9, 12)
build_fail_tab.attach(file_bug_button, attach_pos, attach_pos + 9, 9, 12)
else:
restart_build = HobButton("Restart the build")
restart_build.set_tooltip_text("Restart the build")
restart_build.connect('clicked', self.restart_build_button_clicked_cb)
build_fail_tab.attach(restart_build, 4, 13, 9, 12)
build_fail_tab.attach(action_button, 14, 23, 9, 12)
if log_file:
build_fail_tab.attach(open_log_button, attach_pos, attach_pos + 9, 9, 12)
self.builder.disk_full = False
return build_fail_top
def show_fail_page(self, title):
@@ -264,6 +288,7 @@ class BuildDetailsPage (HobPage):
self.vbox.pack_start(self.notebook, expand=True, fill=True)
self.show_all()
self.notebook.set_page("Issues")
self.back_button.hide()
def add_build_stop_top_bar(self, action, log_file=None):
@@ -348,6 +373,7 @@ class BuildDetailsPage (HobPage):
self.box_group_area.pack_end(self.button_box, expand=False, fill=False)
self.show_all()
self.notebook.set_page("Log")
self.back_button.hide()
self.reset_build_status()
@@ -393,6 +419,9 @@ class BuildDetailsPage (HobPage):
elif "Edit image" in action:
self.builder.show_configuration()
def restart_build_button_clicked_cb(self, button):
self.builder.just_bake()
def stop_primary_action_button_clicked_cb(self, button, action):
if "recipes" in action:
self.builder.show_recipes()
@@ -403,7 +432,18 @@ class BuildDetailsPage (HobPage):
def open_log_button_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
def failure_activate_file_bug_link_cb(self, button):
button.child.emit('activate-link', "http://bugzilla.yoctoproject.org")

View File

@@ -51,10 +51,10 @@ class Configuration:
@classmethod
def parse_proxy_string(cls, proxy):
pattern = "^\s*((http|https|ftp|git|cvs)://)?((\S+):(\S+)@)?(\S+):(\d+)/?"
pattern = "^\s*((http|https|ftp|git|cvs)://)?((\S+):(\S+)@)?([^\s:]+)(:(\d+))?/?"
match = re.search(pattern, proxy)
if match:
return match.group(2), match.group(4), match.group(5), match.group(6), match.group(7)
return match.group(2), match.group(4), match.group(5), match.group(6), match.group(8)
else:
return None, None, None, "", ""
@@ -82,13 +82,14 @@ class Configuration:
@classmethod
def make_proxy_string(cls, prot, user, passwd, host, port, default_prot=""):
if host == None or host == "" or port == None or port == "":
if host == None or host == "":# or port == None or port == "":
return ""
return Configuration.make_host_string(prot, user, passwd, host, default_prot) + ":" + Configuration.make_port_string(port)
return Configuration.make_host_string(prot, user, passwd, host, default_prot) + (":" + Configuration.make_port_string(port) if port else "")
def __init__(self):
self.curr_mach = ""
self.selected_image = None
# settings
self.curr_distro = ""
self.dldir = self.sstatedir = self.sstatemirror = ""
@@ -123,9 +124,9 @@ class Configuration:
}
def clear_selection(self):
self.selected_image = None
self.selected_recipes = []
self.selected_packages = []
self.initial_selected_image = None
self.initial_selected_packages = []
self.initial_user_selected_packages = []
@@ -171,6 +172,7 @@ class Configuration:
# self.extra_setting/self.toolchain_build
# bblayers.conf
self.layers = params["layer"].split()
self.layers_non_removable = params["layers_non_removable"].split()
self.default_task = params["default_task"]
# proxy settings
@@ -438,6 +440,9 @@ class Builder(gtk.Window):
# Indicate whether the UI is working
self.sensitive = True
# Indicate whether the sanity check ran
self.sanity_checked = False
# create visual elements
self.create_visual_elements()
@@ -455,7 +460,9 @@ class Builder(gtk.Window):
self.handler.build.connect("build-failed", self.handler_build_failed_cb)
self.handler.build.connect("build-aborted", self.handler_build_aborted_cb)
self.handler.build.connect("task-started", self.handler_task_started_cb)
self.handler.build.connect("disk-full", self.handler_disk_full_cb)
self.handler.build.connect("log-error", self.handler_build_failure_cb)
self.handler.build.connect("log-warning", self.handler_build_failure_cb)
self.handler.build.connect("log", self.handler_build_log_cb)
self.handler.build.connect("no-provider", self.handler_no_provider_cb)
self.handler.connect("generating-data", self.handler_generating_data_cb)
@@ -540,7 +547,8 @@ class Builder(gtk.Window):
sanity_check_post_func = func
def generate_configuration(self):
self.show_sanity_check_page()
if not self.sanity_checked:
self.show_sanity_check_page()
self.handler.generate_configuration()
def initiate_new_build_async(self):
@@ -746,6 +754,20 @@ class Builder(gtk.Window):
self.previous_step = self.current_step
self.current_step = next_step
def set_user_config_proxies(self):
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
def set_user_config(self):
self.handler.init_cooker()
# set bb layers
@@ -767,19 +789,7 @@ class Builder(gtk.Window):
self.handler.set_extra_config(self.configuration.extra_setting)
self.handler.set_extra_inherit("packageinfo")
self.handler.set_extra_inherit("image_types")
# set proxies
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
self.set_user_config_proxies()
def update_recipe_model(self, selected_image, selected_recipes):
self.recipe_model.set_selected_image(selected_image)
@@ -830,7 +840,9 @@ class Builder(gtk.Window):
if not self.configuration.curr_mach:
self.configuration.curr_mach = self.handler.runCommand(["getVariable", "HOB_MACHINE"]) or ""
self.update_configuration_parameters(self.get_parameters_sync())
self.sanity_check()
if not self.sanity_checked:
self.sanity_check()
self.sanity_checked = True
elif initcmd == self.handler.SANITY_CHECK:
if self.had_network_error:
self.had_network_error = False
@@ -944,10 +956,10 @@ class Builder(gtk.Window):
self.package_details_page.refresh_selection()
def handler_recipe_populated_cb(self, handler):
self.image_configuration_page.update_progress_bar("Populated recipes", 0.99)
self.image_configuration_page.update_progress_bar("Populating recipes", 0.99)
def handler_package_populated_cb(self, handler):
self.image_configuration_page.update_progress_bar("Populated packages", 1.0)
self.image_configuration_page.update_progress_bar("Populating packages", 1.0)
def handler_parsing_started_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -957,10 +969,10 @@ class Builder(gtk.Window):
if message["eventname"] == "TreeDataPreparationStarted":
fraction = 0.6 + fraction
self.image_configuration_page.stop_button.set_sensitive(False)
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
else:
self.image_configuration_page.stop_button.set_sensitive(True)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
def handler_parsing_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -969,9 +981,10 @@ class Builder(gtk.Window):
fraction = message["current"] * 1.0/message["total"]
if message["eventname"] == "TreeDataPreparationProgress":
fraction = 0.6 + 0.38 * fraction
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
else:
fraction = 0.6 * fraction
self.image_configuration_page.update_progress_bar(message["title"], fraction)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
def handler_parsing_completed_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -981,7 +994,7 @@ class Builder(gtk.Window):
fraction = 0.98
else:
fraction = 0.6
self.image_configuration_page.update_progress_bar(message["title"], fraction)
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
def handler_build_started_cb(self, running_build):
if self.current_step == self.FAST_IMAGE_GENERATING:
@@ -1117,6 +1130,9 @@ class Builder(gtk.Window):
self.build_details_page.update_progress_bar(title + ": ", fraction)
self.build_details_page.update_build_status(message["current"], message["total"], message["task"])
def handler_disk_full_cb(self, running_build):
self.disk_full = True
def handler_build_failure_cb(self, running_build):
self.build_details_page.show_issues()
@@ -1185,6 +1201,7 @@ class Builder(gtk.Window):
def show_layer_selection_dialog(self):
dialog = LayerSelectionDialog(title = "Layers",
layers = copy.deepcopy(self.configuration.layers),
layers_non_removable = copy.deepcopy(self.configuration.layers_non_removable),
all_layers = self.parameters.all_layers,
parent = self,
flags = gtk.DIALOG_MODAL
@@ -1310,7 +1327,8 @@ class Builder(gtk.Window):
parent = self,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
| gtk.DIALOG_NO_SEPARATOR,
handler = self.handler)
button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
HobAltButton.style_button(button)
button = dialog.add_button("Save", gtk.RESPONSE_YES)
@@ -1323,6 +1341,14 @@ class Builder(gtk.Window):
self.configuration = dialog.configuration
self.save_defaults() # remember settings
settings_changed = dialog.settings_changed
if dialog.proxy_settings_changed:
self.set_user_config_proxies()
elif dialog.proxy_test_ran:
# The user might have modified the proxies in the "Proxy"
# tab, which in turn made the proxy settings modify in bb.
# If "Cancel" was pressed, restore the previous proxy
# settings inside bb.
self.set_user_config_proxies()
dialog.destroy()
return response == gtk.RESPONSE_YES, settings_changed
@@ -1480,7 +1506,7 @@ class Builder(gtk.Window):
if response != gtk.RESPONSE_CANCEL:
self.stopping = True
if response == gtk.RESPONSE_OK:
self.build_details_page.progress_bar.set_title("Stopping the build...")
self.build_details_page.progress_bar.set_stop_title("Stopping the build....")
self.build_details_page.progress_bar.set_rcstyle("stop")
self.cancel_build_sync()
elif response == gtk.RESPONSE_YES:

View File

@@ -319,9 +319,16 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
PROXIES_PAGE_ID,
OTHERS_PAGE_ID) = range(4)
(TEST_NETWORK_NONE,
TEST_NETWORK_INITIAL,
TEST_NETWORK_RUNNING,
TEST_NETWORK_PASSED,
TEST_NETWORK_FAILED,
TEST_NETWORK_CANCELED) = range(6)
def __init__(self, title, configuration, all_image_types,
all_package_formats, all_distros, all_sdk_machines,
max_threads, parent, flags, buttons=None):
max_threads, parent, flags, handler, buttons=None):
super(SimpleSettingsDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
@@ -348,7 +355,11 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.image_types_checkbuttons = {}
self.md5 = self.config_md5()
self.proxy_md5 = self.config_proxy_md5()
self.settings_changed = False
self.proxy_settings_changed = False
self.handler = handler
self.proxy_test_ran = False
# create visual elements on the dialog
self.create_visual_elements()
@@ -357,54 +368,38 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
def _get_sorted_value(self, var):
return " ".join(sorted(str(var).split())) + "\n"
def config_md5(self):
data = ""
data += ("ENABLE_PROXY: " + self._get_sorted_value(self.configuration.enable_proxy))
def config_proxy_md5(self):
data = ("ENABLE_PROXY: " + self._get_sorted_value(self.configuration.enable_proxy))
if self.configuration.enable_proxy:
for protocol in self.configuration.proxies.keys():
data += (protocol + ": " + self._get_sorted_value(self.configuration.combine_proxy(protocol)))
return hashlib.md5(data).hexdigest()
def config_md5(self):
data = ""
for key in self.configuration.extra_setting.keys():
data += (key + ": " + self._get_sorted_value(self.configuration.extra_setting[key]))
return hashlib.md5(data).hexdigest()
def details_cb(self, button, parent, protocol):
dialog = ProxyDetailsDialog(title = protocol.upper() + " Proxy Details",
user = self.configuration.proxies[protocol][1],
passwd = self.configuration.proxies[protocol][2],
parent = parent,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
dialog.add_button(gtk.STOCK_CLOSE, gtk.RESPONSE_OK)
response = dialog.run()
if response == gtk.RESPONSE_OK:
self.configuration.proxies[protocol][1] = dialog.user
self.configuration.proxies[protocol][2] = dialog.passwd
self.refresh_proxy_components()
dialog.destroy()
def gen_proxy_entry_widget(self, protocol, parent, need_button=True):
hbox = gtk.HBox(False, 12)
def gen_proxy_entry_widget(self, protocol, parent, need_button=True, line=0):
label = gtk.Label(protocol.upper() + " proxy")
hbox.pack_start(label, expand=True, fill=False, padding=24)
self.proxy_table.attach(label, 0, 1, line, line+1, xpadding=24)
proxy_entry = gtk.Entry()
proxy_entry.set_size_request(300, -1)
hbox.pack_start(proxy_entry, expand=False, fill=False)
self.proxy_table.attach(proxy_entry, 1, 2, line, line+1, ypadding=4)
hbox.pack_start(gtk.Label(":"), expand=False, fill=False)
self.proxy_table.attach(gtk.Label(":"), 2, 3, line, line+1, xpadding=12, ypadding=4)
port_entry = gtk.Entry()
port_entry.set_size_request(60, -1)
hbox.pack_start(port_entry, expand=False, fill=False)
self.proxy_table.attach(port_entry, 3, 4, line, line+1, ypadding=4)
details_button = HobAltButton("Details")
details_button.connect("clicked", self.details_cb, parent, protocol)
hbox.pack_start(details_button, expand=False, fill=False)
self.proxy_table.attach(details_button, 4, 5, line, line+1, xpadding=4, yoptions=gtk.EXPAND)
hbox.show_all()
return hbox, proxy_entry, port_entry, details_button
return proxy_entry, port_entry, details_button
def refresh_proxy_components(self):
self.same_checkbox.set_sensitive(self.configuration.enable_proxy)
@@ -449,18 +444,53 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.cvs_proxy_port.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.cvs_proxy_details.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
if self.configuration.same_proxy:
if self.http_proxy.get_text():
[w.set_text(self.http_proxy.get_text()) for w in self.same_proxy_addresses]
if self.http_proxy_port.get_text():
[w.set_text(self.http_proxy_port.get_text()) for w in self.same_proxy_ports]
def proxy_checkbox_toggled_cb(self, button):
self.configuration.enable_proxy = self.proxy_checkbox.get_active()
if not self.configuration.enable_proxy:
self.configuration.same_proxy = False
self.same_checkbox.set_active(self.configuration.same_proxy)
self.save_proxy_data()
self.refresh_proxy_components()
def same_checkbox_toggled_cb(self, button):
self.configuration.same_proxy = self.same_checkbox.get_active()
self.save_proxy_data()
self.refresh_proxy_components()
def response_cb(self, dialog, response_id):
def save_proxy_data(self):
self.configuration.split_proxy("http", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
if self.configuration.same_proxy:
self.configuration.split_proxy("https", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("git", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
else:
self.configuration.split_proxy("https", self.https_proxy.get_text() + ":" + self.https_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.ftp_proxy.get_text() + ":" + self.ftp_proxy_port.get_text())
self.configuration.split_proxy("git", self.git_proxy.get_text() + ":" + self.git_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.cvs_proxy.get_text() + ":" + self.cvs_proxy_port.get_text())
def response_cb(self, dialog, response_id):
if response_id == gtk.RESPONSE_YES:
# Check that all proxy entries have a corresponding port
for proxy, port in zip(self.all_proxy_addresses, self.all_proxy_ports):
if proxy.get_text() and not port.get_text():
lbl = "<b>Enter all port numbers</b>\n\n"
msg = "Proxy servers require a port number. Please make sure you have entered a port number for each proxy server."
dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING, msg)
button = dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button)
response = dialog.run()
dialog.destroy()
self.emit_stop_by_name("response")
return
self.configuration.dldir = self.dldir_text.get_text()
self.configuration.sstatedir = self.sstatedir_text.get_text()
self.configuration.sstatemirror = ""
@@ -473,19 +503,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.configuration.sstatemirror += smirror
self.configuration.bbthread = self.bb_spinner.get_value_as_int()
self.configuration.pmake = self.pmake_spinner.get_value_as_int()
self.configuration.split_proxy("http", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
if self.configuration.same_proxy:
self.configuration.split_proxy("https", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("git", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
else:
self.configuration.split_proxy("https", self.https_proxy.get_text() + ":" + self.https_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.ftp_proxy.get_text() + ":" + self.ftp_proxy_port.get_text())
self.configuration.split_proxy("git", self.git_proxy.get_text() + ":" + self.git_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.cvs_proxy.get_text() + ":" + self.cvs_proxy_port.get_text())
self.save_proxy_data()
self.configuration.extra_setting = {}
it = self.setting_store.get_iter_first()
while it:
@@ -496,6 +514,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
md5 = self.config_md5()
self.settings_changed = (self.md5 != md5)
self.proxy_settings_changed = (self.proxy_md5 != self.config_proxy_md5())
def create_build_environment_page(self):
advanced_vbox = gtk.VBox(False, 6)
@@ -546,8 +565,6 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(sstatedir_widget, expand=False, fill=False, padding=12)
sub_vbox = gtk.VBox(False)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
content = "<span weight=\"bold\">Shared state mirrors</span>"
tooltip = "URLs pointing to pre-built mirrors that will speed your build. "
tooltip += "Select the \'Standard\' configuration if the structure of your "
@@ -556,8 +573,14 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
tooltip += "http://www.yoctoproject.org/docs/current/poky-ref-manual/"
tooltip += "poky-ref-manual.html#shared-state\">Yocto Project Reference Manual</a>."
table = self.gen_label_info_widget(content, tooltip)
sub_vbox.pack_start(table, expand=False, fill=False)
advanced_vbox.pack_start(table, expand=False, fill=False)
sub_vbox = gtk.VBox(False)
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
scroll.add_with_viewport(sub_vbox)
scroll.connect('size-allocate', self.scroll_changed)
advanced_vbox.pack_start(scroll, gtk.TRUE, gtk.TRUE, 0)
searched_string = "file://"
if self.sstatemirrors_changed == 0:
@@ -608,10 +631,91 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.show_all()
self.nb.set_current_page(page_num)
def test_proxy_ended(self, passed):
self.proxy_test_running = False
self.set_test_proxy_state(self.TEST_NETWORK_PASSED if passed else self.TEST_NETWORK_FAILED)
self.set_sensitive(True)
self.refresh_proxy_components()
def create_proxy_page(self):
def timer_func(self):
self.test_proxy_progress.pulse()
return self.proxy_test_running
def test_network_button_cb(self, b):
self.set_test_proxy_state(self.TEST_NETWORK_RUNNING)
self.set_sensitive(False)
self.save_proxy_data()
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
self.proxy_test_ran = True
self.proxy_test_running = True
gobject.timeout_add(100, self.timer_func)
self.handler.trigger_network_test()
def test_proxy_focus_event(self, w, direction):
if self.test_proxy_state in [self.TEST_NETWORK_PASSED, self.TEST_NETWORK_FAILED]:
self.set_test_proxy_state(self.TEST_NETWORK_INITIAL)
return False
def http_proxy_changed(self, e):
if not self.configuration.same_proxy:
return
if e == self.http_proxy:
[w.set_text(self.http_proxy.get_text()) for w in self.same_proxy_addresses]
else:
[w.set_text(self.http_proxy_port.get_text()) for w in self.same_proxy_ports]
def proxy_address_focus_out_event(self, w, direction):
text = w.get_text()
if not text:
return False
if text.find("//") == -1:
w.set_text("http://" + text)
return False
def set_test_proxy_state(self, state):
if self.test_proxy_state == state:
return
[self.proxy_table.remove(w) for w in self.test_gui_elements]
if state == self.TEST_NETWORK_INITIAL:
self.proxy_table.attach(self.test_network_button, 1, 2, 5, 6)
self.test_network_button.show()
elif state == self.TEST_NETWORK_RUNNING:
self.test_proxy_progress.set_rcstyle("running")
self.test_proxy_progress.set_text("Testing network configuration")
self.proxy_table.attach(self.test_proxy_progress, 0, 5, 5, 6, xpadding=4)
self.test_proxy_progress.show()
else: # passed or failed
self.dummy_progress.update(1.0)
if state == self.TEST_NETWORK_PASSED:
self.dummy_progress.set_text("Your network is properly configured")
self.dummy_progress.set_rcstyle("running")
else:
self.dummy_progress.set_text("Network test failed")
self.dummy_progress.set_rcstyle("fail")
self.proxy_table.attach(self.dummy_progress, 0, 4, 5, 6)
self.proxy_table.attach(self.retest_network_button, 4, 5, 5, 6, xpadding=4)
self.dummy_progress.show()
self.retest_network_button.show()
self.test_proxy_state = state
def create_network_page(self):
advanced_vbox = gtk.VBox(False, 6)
advanced_vbox.set_border_width(6)
self.same_proxy_addresses = []
self.same_proxy_ports = []
self.all_proxy_ports = []
self.all_proxy_addresses = []
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
@@ -623,42 +727,77 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
hbox.pack_start(info, expand=False, fill=False)
sub_vbox.pack_start(hbox, expand=False, fill=False)
self.direct_checkbox = gtk.RadioButton(None, "Direct internet connection")
proxy_test_focus = []
self.direct_checkbox = gtk.RadioButton(None, "Direct network connection")
proxy_test_focus.append(self.direct_checkbox)
self.direct_checkbox.set_tooltip_text("Check this box to use a direct internet connection with no proxy")
self.direct_checkbox.set_active(not self.configuration.enable_proxy)
sub_vbox.pack_start(self.direct_checkbox, expand=False, fill=False)
self.proxy_checkbox = gtk.RadioButton(self.direct_checkbox, "Manual proxy configuration")
proxy_test_focus.append(self.proxy_checkbox)
self.proxy_checkbox.set_tooltip_text("Check this box to manually set up a specific proxy")
self.proxy_checkbox.set_active(self.configuration.enable_proxy)
sub_vbox.pack_start(self.proxy_checkbox, expand=False, fill=False)
self.same_checkbox = gtk.CheckButton("Use the same proxy for all protocols")
self.same_checkbox = gtk.CheckButton("Use the HTTP proxy for all protocols")
proxy_test_focus.append(self.same_checkbox)
self.same_checkbox.set_tooltip_text("Check this box to use the HTTP proxy for all five proxies")
self.same_checkbox.set_active(self.configuration.same_proxy)
hbox = gtk.HBox(False, 12)
hbox.pack_start(self.same_checkbox, expand=False, fill=False, padding=24)
sub_vbox.pack_start(hbox, expand=False, fill=False)
proxy_widget, self.http_proxy, self.http_proxy_port, self.http_proxy_details = self.gen_proxy_entry_widget(
"http", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.proxy_table = gtk.Table(6, 5, False)
self.http_proxy, self.http_proxy_port, self.http_proxy_details = self.gen_proxy_entry_widget(
"http", self, True, 0)
proxy_test_focus +=[self.http_proxy, self.http_proxy_port]
self.http_proxy.connect("changed", self.http_proxy_changed)
self.http_proxy_port.connect("changed", self.http_proxy_changed)
proxy_widget, self.https_proxy, self.https_proxy_port, self.https_proxy_details = self.gen_proxy_entry_widget(
"https", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.https_proxy, self.https_proxy_port, self.https_proxy_details = self.gen_proxy_entry_widget(
"https", self, True, 1)
proxy_test_focus += [self.https_proxy, self.https_proxy_port]
self.same_proxy_addresses.append(self.https_proxy)
self.same_proxy_ports.append(self.https_proxy_port)
proxy_widget, self.ftp_proxy, self.ftp_proxy_port, self.ftp_proxy_details = self.gen_proxy_entry_widget(
"ftp", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.ftp_proxy, self.ftp_proxy_port, self.ftp_proxy_details = self.gen_proxy_entry_widget(
"ftp", self, True, 2)
proxy_test_focus += [self.ftp_proxy, self.ftp_proxy_port]
self.same_proxy_addresses.append(self.ftp_proxy)
self.same_proxy_ports.append(self.ftp_proxy_port)
proxy_widget, self.git_proxy, self.git_proxy_port, self.git_proxy_details = self.gen_proxy_entry_widget(
"git", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.git_proxy, self.git_proxy_port, self.git_proxy_details = self.gen_proxy_entry_widget(
"git", self, True, 3)
proxy_test_focus += [self.git_proxy, self.git_proxy_port]
self.same_proxy_addresses.append(self.git_proxy)
self.same_proxy_ports.append(self.git_proxy_port)
proxy_widget, self.cvs_proxy, self.cvs_proxy_port, self.cvs_proxy_details = self.gen_proxy_entry_widget(
"cvs", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.cvs_proxy, self.cvs_proxy_port, self.cvs_proxy_details = self.gen_proxy_entry_widget(
"cvs", self, True, 4)
proxy_test_focus += [self.cvs_proxy, self.cvs_proxy_port]
self.same_proxy_addresses.append(self.cvs_proxy)
self.same_proxy_ports.append(self.cvs_proxy_port)
self.all_proxy_ports = self.same_proxy_ports + [self.http_proxy_port]
self.all_proxy_addresses = self.same_proxy_addresses + [self.http_proxy]
sub_vbox.pack_start(self.proxy_table, expand=False, fill=False)
self.proxy_table.show_all()
# Create the graphical elements for the network test feature, but don't display them yet
self.test_network_button = HobAltButton("Test network configuration")
self.test_network_button.connect("clicked", self.test_network_button_cb)
self.test_proxy_progress = HobProgressBar()
self.dummy_progress = HobProgressBar()
self.retest_network_button = HobAltButton("Retest")
self.retest_network_button.connect("clicked", self.test_network_button_cb)
self.test_gui_elements = [self.test_network_button, self.test_proxy_progress, self.dummy_progress, self.retest_network_button]
# Initialize the network tester
self.test_proxy_state = self.TEST_NETWORK_NONE
self.set_test_proxy_state(self.TEST_NETWORK_INITIAL)
self.proxy_test_passed_id = self.handler.connect("network-passed", lambda h:self.test_proxy_ended(True))
self.proxy_test_failed_id = self.handler.connect("network-failed", lambda h:self.test_proxy_ended(False))
[w.connect("focus-in-event", self.test_proxy_focus_event) for w in proxy_test_focus]
[w.connect("focus-out-event", self.proxy_address_focus_out_event) for w in self.all_proxy_addresses]
self.direct_checkbox.connect("toggled", self.proxy_checkbox_toggled_cb)
self.proxy_checkbox.connect("toggled", self.proxy_checkbox_toggled_cb)
@@ -671,6 +810,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.nb.set_current_page(page_id)
def details_cb(self, button, parent, protocol):
self.save_proxy_data()
dialog = ProxyDetailsDialog(title = protocol.upper() + " Proxy Details",
user = self.configuration.proxies[protocol][1],
passwd = self.configuration.proxies[protocol][2],
@@ -840,7 +980,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.nb.set_show_tabs(True)
self.nb.append_page(self.create_build_environment_page(), gtk.Label("Build environment"))
self.nb.append_page(self.create_shared_state_page(), gtk.Label("Shared state"))
self.nb.append_page(self.create_proxy_page(), gtk.Label("Proxies"))
self.nb.append_page(self.create_network_page(), gtk.Label("Network"))
self.nb.append_page(self.create_others_page(), gtk.Label("Others"))
self.nb.set_current_page(0)
self.vbox.pack_start(self.nb, expand=True, fill=True)
@@ -848,6 +988,14 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.show_all()
def destroy(self):
self.handler.disconnect(self.proxy_test_passed_id)
self.handler.disconnect(self.proxy_test_failed_id)
super(SimpleSettingsDialog, self).destroy()
def scroll_changed(self, widget, event, data=None):
adj = widget.get_vadjustment()
adj.set_value(adj.upper - adj.page_size)
#
# AdvancedSettings Dialog
@@ -1353,6 +1501,13 @@ class CellRendererPixbufActivatable(gtk.CellRendererPixbuf):
#
class LayerSelectionDialog (CrumbsDialog):
TARGETS = [
("MY_TREE_MODEL_ROW", gtk.TARGET_SAME_WIDGET, 0),
("text/plain", 0, 1),
("TEXT", 0, 2),
("STRING", 0, 3),
]
def gen_label_widget(self, content):
label = gtk.Label()
label.set_alignment(0, 0)
@@ -1416,7 +1571,17 @@ class LayerSelectionDialog (CrumbsDialog):
layer_tv.set_rules_hint(True)
layer_tv.set_headers_visible(False)
tree_selection = layer_tv.get_selection()
tree_selection.set_mode(gtk.SELECTION_NONE)
tree_selection.set_mode(gtk.SELECTION_SINGLE)
# Allow enable drag and drop of rows including row move
layer_tv.enable_model_drag_source( gtk.gdk.BUTTON1_MASK,
self.TARGETS,
gtk.gdk.ACTION_DEFAULT|
gtk.gdk.ACTION_MOVE)
layer_tv.enable_model_drag_dest(self.TARGETS,
gtk.gdk.ACTION_DEFAULT)
layer_tv.connect("drag_data_get", self.drag_data_get_cb)
layer_tv.connect("drag_data_received", self.drag_data_received_cb)
col0= gtk.TreeViewColumn('Path')
cell0 = gtk.CellRendererText()
@@ -1471,17 +1636,41 @@ class LayerSelectionDialog (CrumbsDialog):
return hbox, layer_store
def drag_data_get_cb(self, treeview, context, selection, target_id, etime):
treeselection = treeview.get_selection()
model, iter = treeselection.get_selected()
data = model.get_value(iter, 0)
selection.set(selection.target, 8, data)
def drag_data_received_cb(self, treeview, context, x, y, selection, info, etime):
model = treeview.get_model()
data = selection.data
drop_info = treeview.get_dest_row_at_pos(x, y)
if drop_info:
path, position = drop_info
iter = model.get_iter(path)
if (position == gtk.TREE_VIEW_DROP_BEFORE or position == gtk.TREE_VIEW_DROP_INTO_OR_BEFORE):
model.insert_before(iter, [data])
else:
model.insert_after(iter, [data])
else:
model.append([data])
if context.action == gtk.gdk.ACTION_MOVE:
context.finish(True, True, etime)
return
def add_hover_cb(self, button, event):
self.im.set_from_file(hic.ICON_INDI_ADD_HOVER_FILE)
def add_leave_cb(self, button, event):
self.im.set_from_file(hic.ICON_INDI_ADD_FILE)
def __init__(self, title, layers, all_layers, parent, flags, buttons=None):
def __init__(self, title, layers, layers_non_removable, all_layers, parent, flags, buttons=None):
super(LayerSelectionDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
self.layers = layers
self.layers_non_removable = layers_non_removable
self.all_layers = all_layers
self.layers_changed = False
@@ -1521,10 +1710,7 @@ class LayerSelectionDialog (CrumbsDialog):
"""
def draw_delete_button_cb(self, col, cell, model, it, tv):
path = model.get_value(it, 0)
# Trailing slashes are uncommon in bblayers.conf but confuse os.path.basename
path.rstrip('/')
name = os.path.basename(path)
if name == "meta" or name == "meta-hob":
if path in self.layers_non_removable:
cell.set_sensitive(False)
cell.set_property('pixbuf', None)
cell.set_property('mode', gtk.CELL_RENDERER_MODE_INERT)
@@ -1542,11 +1728,8 @@ class LayerSelectionDialog (CrumbsDialog):
"""
def draw_layer_path_cb(self, col, cell, model, it):
path = model.get_value(it, 0)
name = os.path.basename(path)
if name == "meta":
cell.set_property('markup', "<b>Core layer for images: it cannot be removed</b>\n%s" % path)
elif name == "meta-hob":
cell.set_property('markup', "<b>Core layer for Hob: it cannot be removed</b>\n%s" % path)
if path in self.layers_non_removable:
cell.set_property('markup', "<b>It cannot be removed</b>\n%s" % path)
else:
cell.set_property('text', path)
@@ -1692,6 +1875,9 @@ class ImageSelectionDialog (CrumbsDialog):
break
iter = self.image_store.iter_next(iter)
#
# ProxyDetailsDialog
#
class ProxyDetailsDialog (CrumbsDialog):
def __init__(self, title, user, passwd, parent, flags, buttons=None):
@@ -1751,3 +1937,42 @@ class ProxyDetailsDialog (CrumbsDialog):
else:
self.user = None
self.passwd = None
#
# OpeningLogDialog
#
class OpeningLogDialog (CrumbsDialog):
def __init__(self, title, parent, flags, buttons=None):
super(OpeningLogDialog, self).__init__(title, parent, flags, buttons)
self.running = False
# create visual elements on the dialog
self.create_visual_elements()
def start(self):
if not self.running:
self.running = True
gobject.timeout_add(100, self.pulse)
def pulse(self):
self.progress_bar.pulse()
return self.running
def create_visual_elements(self):
hbox = gtk.HBox(False, 12)
self.user_label = gtk.Label("The log will open in a text editor")
hbox.pack_start(self.user_label, expand=False, fill=False)
self.vbox.pack_start(hbox, expand=False, fill=False)
hbox = gtk.HBox(False, 12)
# Progress bar
self.progress_bar = HobProgressBar()
hbox.pack_start(self.progress_bar)
self.start()
self.vbox.pack_start(hbox, expand=False, fill=False)
button = self.add_button("Cancel", gtk.RESPONSE_CANCEL)
HobAltButton.style_button(button)
self.show_all()

View File

@@ -65,10 +65,17 @@ class HobHandler(gobject.GObject):
"package-populated" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
"network-passed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
"network-failed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
}
(GENERATE_CONFIGURATION, GENERATE_RECIPES, GENERATE_PACKAGES, GENERATE_IMAGE, POPULATE_PACKAGEINFO, SANITY_CHECK) = range(6)
(SUB_PATH_LAYERS, SUB_FILES_DISTRO, SUB_FILES_MACH, SUB_FILES_SDKMACH, SUB_MATCH_CLASS, SUB_PARSE_CONFIG, SUB_SANITY_CHECK, SUB_GNERATE_TGTS, SUB_GENERATE_PKGINFO, SUB_BUILD_RECIPES, SUB_BUILD_IMAGE) = range(11)
(GENERATE_CONFIGURATION, GENERATE_RECIPES, GENERATE_PACKAGES, GENERATE_IMAGE, POPULATE_PACKAGEINFO, SANITY_CHECK, NETWORK_TEST) = range(7)
(SUB_PATH_LAYERS, SUB_FILES_DISTRO, SUB_FILES_MACH, SUB_FILES_SDKMACH, SUB_MATCH_CLASS, SUB_PARSE_CONFIG, SUB_SANITY_CHECK,
SUB_GNERATE_TGTS, SUB_GENERATE_PKGINFO, SUB_BUILD_RECIPES, SUB_BUILD_IMAGE, SUB_NETWORK_TEST) = range(12)
def __init__(self, server, recipe_model, package_model):
super(HobHandler, self).__init__()
@@ -101,7 +108,10 @@ class HobHandler(gobject.GObject):
def runCommand(self, commandline):
try:
return self.server.runCommand(commandline)
result, error = self.server.runCommand(commandline)
if error:
raise Exception("Error running command '%s': %s" % (commandline, error))
return result
except Exception as e:
self.commands_async = []
self.clear_busy()
@@ -139,6 +149,8 @@ class HobHandler(gobject.GObject):
self.runCommand(["triggerEvent", "bb.event.RequestPackageInfo()"])
elif next_command == self.SUB_SANITY_CHECK:
self.runCommand(["triggerEvent", "bb.event.SanityCheck()"])
elif next_command == self.SUB_NETWORK_TEST:
self.runCommand(["triggerEvent", "bb.event.NetworkTest()"])
elif next_command == self.SUB_BUILD_RECIPES:
self.clear_busy()
self.building = True
@@ -227,7 +239,7 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = 0
message["total"] = None
message["title"] = "Parsing recipes: "
message["title"] = "Parsing recipes"
self.emit("parsing-started", message)
elif isinstance(event, (bb.event.ParseProgress,
bb.event.CacheLoadProgress,
@@ -236,7 +248,7 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = event.current
message["total"] = event.total
message["title"] = "Parsing recipes: "
message["title"] = "Parsing recipes"
self.emit("parsing", message)
elif isinstance(event, (bb.event.ParseCompleted,
bb.event.CacheLoadCompleted,
@@ -245,8 +257,14 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = event.total
message["total"] = event.total
message["title"] = "Parsing recipes: "
message["title"] = "Parsing recipes"
self.emit("parsing-completed", message)
elif isinstance(event, bb.event.NetworkTestFailed):
self.emit("network-failed")
self.run_next_command()
elif isinstance(event, bb.event.NetworkTestPassed):
self.emit("network-passed")
self.run_next_command()
if self.error_msg and not self.commands_async:
self.display_error()
@@ -341,6 +359,10 @@ class HobHandler(gobject.GObject):
self.commands_async.append(self.SUB_SANITY_CHECK)
self.run_next_command(self.SANITY_CHECK)
def trigger_network_test(self):
self.commands_async.append(self.SUB_NETWORK_TEST)
self.run_next_command(self.NETWORK_TEST)
def generate_configuration(self):
self.commands_async.append(self.SUB_PARSE_CONFIG)
self.commands_async.append(self.SUB_PATH_LAYERS)
@@ -398,7 +420,7 @@ class HobHandler(gobject.GObject):
self.build.reset()
def get_logfile(self):
return self.server.runCommand(["getVariable", "BB_CONSOLELOG"])
return self.server.runCommand(["getVariable", "BB_CONSOLELOG"])[0]
def _remove_redundant(self, string):
ret = []
@@ -413,8 +435,11 @@ class HobHandler(gobject.GObject):
params["core_base"] = self.runCommand(["getVariable", "COREBASE"]) or ""
hob_layer = params["core_base"] + "/meta-hob"
params["layer"] = self.runCommand(["getVariable", "BBLAYERS"]) or ""
params["layers_non_removable"] = self.runCommand(["getVariable", "BBLAYERS_NON_REMOVABLE"]) or ""
if hob_layer not in params["layer"].split():
params["layer"] += (" " + hob_layer)
if hob_layer not in params["layers_non_removable"].split():
params["layers_non_removable"] += (" " + hob_layer)
params["dldir"] = self.runCommand(["getVariable", "DL_DIR"]) or ""
params["machine"] = self.runCommand(["getVariable", "MACHINE"]) or ""
params["distro"] = self.runCommand(["getVariable", "DISTRO"]) or "defaultsetup"

View File

@@ -42,7 +42,7 @@ class PackageListModel(gtk.TreeStore):
()),
}
__toolchain_required_packages__ = ["task-core-standalone-sdk-target", "task-core-standalone-sdk-target-dbg"]
__toolchain_required_packages__ = ["packagegroup-core-standalone-sdk-target", "packagegroup-core-standalone-sdk-target-dbg"]
def __init__(self):

View File

@@ -0,0 +1,51 @@
#!/usr/bin/env python
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2012 Intel Corporation
#
# Authored by Cristiana Voicu <cristiana.voicu@intel.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import threading
import gtk
import subprocess
#
# OpeningLogThread
#
class OpeningLogThread(threading.Thread):
def __init__(self, dialog, log_file, parent):
threading.Thread.__init__(self)
self.dialog =dialog
self.log_file = log_file
self.parent = parent
def run(self):
p = subprocess.Popen(['xdg-open',self.log_file])
retcode = p.poll()
while (retcode == None):
if self.parent.stop:
try:
p.terminate()
except OSError, e:
if e.errno == 3:
pass # no such process
else:
raise
retcode = p.poll()
self.dialog.destroy()

View File

@@ -155,9 +155,15 @@ class HobViewTable (gtk.VBox):
bin = binb.split(', ')
total_no = len(bin)
if total_no > 1 and bin[0] == "User Selected":
present_binb = bin[1] + ' (+' + str(total_no) + ')'
if total_no > 2:
present_binb = bin[1] + ' (+' + str(total_no - 1) + ')'
else:
present_binb = bin[1]
else:
present_binb = bin[0] + ' (+' + str(total_no) + ')'
if total_no > 1:
present_binb = bin[0] + ' (+' + str(total_no - 1) + ')'
else:
present_binb = bin[0]
cell.set_property('text', present_binb)
else:
cell.set_property('text', "")
@@ -515,7 +521,8 @@ class HobNotebook(gtk.Notebook):
for child in self.pages:
if child.lbl.get_label() == title:
child.grab_focus()
self.set_current_page(self.page_num(child))
self.set_current_page(self.pages.index(child))
return
class HobWarpCellRendererText(gtk.CellRendererText):
def __init__(self, col_number):

View File

@@ -45,6 +45,7 @@ class ImageConfigurationPage (HobPage):
# or by manual. If by manual, all user's recipe selection and package selection are
# cleared.
self.machine_combo_changed_by_manual = True
self.stopping = False
self.create_visual_elements()
def create_visual_elements(self):
@@ -114,9 +115,10 @@ class ImageConfigurationPage (HobPage):
self.show_all()
def update_progress_bar(self, title, fraction, status=None):
self.progress_bar.update(fraction)
self.progress_bar.set_title(title)
self.progress_bar.set_rcstyle(status)
if self.stopping == False:
self.progress_bar.update(fraction)
self.progress_bar.set_text(title)
self.progress_bar.set_rcstyle(status)
def show_info_populating(self):
self._pack_components(pack_config_build_button = False)
@@ -248,9 +250,13 @@ class ImageConfigurationPage (HobPage):
return button_box
def stop_button_clicked_cb(self, button):
self.stopping = True
self.progress_bar.set_text("Stopping recipe parsing")
self.progress_bar.set_rcstyle("stop")
self.builder.cancel_parse_sync()
def machine_combo_changed_cb(self, machine_combo):
self.stopping = False
combo_item = machine_combo.get_active_text()
if not combo_item or combo_item == self.__dummy_machine__:
return
@@ -368,6 +374,7 @@ class ImageConfigurationPage (HobPage):
if self.builder.parameters.image_black_pattern:
for i in self.builder.parameters.image_black_pattern.split():
black_pattern.append(re.compile(i))
black_pattern.append(re.compile("hob-image"))
it = image_model.get_iter_first()
self._image_combo_disconnect_signal()
@@ -431,6 +438,7 @@ class ImageConfigurationPage (HobPage):
self.builder.just_bake()
def edit_image_button_clicked_cb(self, button):
self.builder.configuration.initial_selected_image = self.builder.configuration.selected_image
self.builder.show_recipes()
def template_button_clicked_cb(self, button):

View File

@@ -27,6 +27,9 @@ from bb.ui.crumbs.hobwidget import hic, HobViewTable, HobAltButton, HobButton
from bb.ui.crumbs.hobpages import HobPage
import subprocess
from bb.ui.crumbs.hig import CrumbsDialog
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
#
# ImageDetailsPage
#
@@ -404,7 +407,18 @@ class ImageDetailsPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
def refresh_package_detail_box(self, image_size):
self.package_detail.update_line_widgets("Total image size: ", image_size)

View File

@@ -26,6 +26,8 @@ from bb.ui.crumbs.hobcolor import HobColors
from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook, HobAltButton, HobButton
from bb.ui.crumbs.hoblistmodel import PackageListModel
from bb.ui.crumbs.hobpages import HobPage
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
#
# PackageSelectionPage
@@ -52,7 +54,7 @@ class PackageSelectionPage (HobPage):
'col_max' : 300,
'expand' : 'True'
}, {
'col_name' : 'Brought in by',
'col_name' : 'Brought in by (+others)',
'col_id' : PackageListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
@@ -167,7 +169,18 @@ class PackageSelectionPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
def show_page(self, log_file):
children = self.button_box.get_children() or []
@@ -208,8 +221,8 @@ class PackageSelectionPage (HobPage):
selected_packages_size_str = HobPage._size_to_string(selected_packages_size)
image_overhead_factor = self.builder.configuration.image_overhead_factor
image_rootfs_size = self.builder.configuration.image_rootfs_size * 1024 # image_rootfs_size is KB
image_extra_size = self.builder.configuration.image_extra_size * 1024 # image_extra_size is KB
image_rootfs_size = self.builder.configuration.image_rootfs_size / 1024 # image_rootfs_size is KB
image_extra_size = self.builder.configuration.image_extra_size / 1024 # image_extra_size is KB
base_size = image_overhead_factor * selected_packages_size
image_total_size = max(base_size, image_rootfs_size) + image_extra_size
if "zypper" in self.builder.configuration.selected_packages:

View File

@@ -43,6 +43,11 @@ class HobProgressBar (gtk.ProgressBar):
text += " %.0f%%" % self.percentage
self.set_text(text)
def set_stop_title(self, text=None):
if not text:
text = ""
self.set_text(text)
def reset(self):
self.set_fraction(0)
self.set_text("")

View File

@@ -52,7 +52,7 @@ class RecipeSelectionPage (HobPage):
'col_max' : 300,
'expand' : 'True'
}, {
'col_name' : 'Brought in by',
'col_name' : 'Brought in by (+others)',
'col_id' : RecipeListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
@@ -193,6 +193,9 @@ class RecipeSelectionPage (HobPage):
self.builder.build_packages()
def back_button_clicked_cb(self, button):
self.builder.recipe_model.set_selected_image(self.builder.configuration.initial_selected_image)
self.builder.image_configuration_page.update_image_combo(self.builder.recipe_model, self.builder.configuration.initial_selected_image)
self.builder.image_configuration_page.update_image_desc()
self.builder.show_configuration()
def refresh_selection(self):

View File

@@ -46,7 +46,7 @@ class RunningBuildModel (gtk.TreeStore):
color = model.get(it, self.COL_COLOR)[0]
if not color:
return False
if color == HobColors.ERROR:
if color == HobColors.ERROR or color == HobColors.WARNING:
return True
return False
@@ -76,7 +76,7 @@ class RunningBuild (gobject.GObject):
'build-complete' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'build-aborted' : (gobject.SIGNAL_RUN_LAST,
'build-aborted' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'task-started' : (gobject.SIGNAL_RUN_LAST,
@@ -85,6 +85,12 @@ class RunningBuild (gobject.GObject):
'log-error' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'log-warning' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'disk-full' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'no-provider' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_PYOBJECT,)),
@@ -148,6 +154,7 @@ class RunningBuild (gobject.GObject):
elif event.levelno >= logging.WARNING:
icon = "dialog-warning"
color = HobColors.WARNING
self.emit("log-warning")
else:
icon = None
color = HobColors.OK
@@ -286,6 +293,7 @@ class RunningBuild (gobject.GObject):
# Emit the appropriate signal depending on the number of failures
if self.buildaborted:
self.emit ("build-aborted")
self.buildaborted = False
elif (failures >= 1):
self.emit ("build-failed")
else:
@@ -300,6 +308,7 @@ class RunningBuild (gobject.GObject):
elif isinstance(event, bb.event.DiskFull):
self.buildaborted = True
self.emit("disk-full")
elif isinstance(event, bb.command.CommandFailed):
self.emit("log", "error", "Command execution failed: %s" % (event.error))

View File

@@ -198,17 +198,23 @@ class gtkthread(threading.Thread):
def main(server, eventHandler):
try:
cmdline = server.runCommand(["getCmdLineAction"])
if cmdline and not cmdline['action']:
print(cmdline['msg'])
return
elif not cmdline or (cmdline['action'] and cmdline['action'][0] != "generateDotGraph"):
cmdline, error = server.runCommand(["getCmdLineAction"])
if error:
print("Error getting bitbake commandline: %s" % error)
return 1
elif not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
elif not cmdline or cmdline[0] != "generateDotGraph":
print("This UI is only compatible with the -g option")
return
ret = server.runCommand(["generateDepTreeEvent", cmdline['action'][1], cmdline['action'][2]])
if ret != True:
print("Couldn't run command! %s" % ret)
return
return 1
ret, error = server.runCommand(["generateDepTreeEvent", cmdline[1], cmdline[2]])
if error:
print("Error running command '%s': %s" % (cmdline, error))
return 1
elif ret != True:
print("Error running command '%s': returned %s" % (cmdline, ret))
return 1
except xmlrpclib.Fault as x:
print("XMLRPC Fault getting commandline:\n %s" % x)
return
@@ -234,7 +240,9 @@ def main(server, eventHandler):
try:
event = eventHandler.waitEvent(0.25)
if gtkthread.quit.isSet():
server.runCommand(["stateStop"])
_, error = server.runCommand(["stateStop"])
if error:
print('Unable to cleanly stop: %s' % error)
break
if event is None:
@@ -310,9 +318,13 @@ def main(server, eventHandler):
break
if shutdown == 1:
print("\nSecond Keyboard Interrupt, stopping...\n")
server.runCommand(["stateStop"])
_, error = server.runCommand(["stateStop"])
if error:
print('Unable to cleanly stop: %s' % error)
if shutdown == 0:
print("\nKeyboard Interrupt, closing down...\n")
server.runCommand(["stateShutdown"])
_, error = server.runCommand(["stateShutdown"])
if error:
print('Unable to cleanly shutdown: %s' % error)
shutdown = shutdown + 1
pass

View File

@@ -80,16 +80,19 @@ def main (server, eventHandler):
running_build.connect ("build-failed", running_build_failed_cb)
try:
cmdline = server.runCommand(["getCmdLineAction"])
if not cmdline:
cmdline, error = server.runCommand(["getCmdLineAction"])
if err:
print("Error getting bitbake commandline: %s" % error)
return 1
elif not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
elif not cmdline['action']:
print(cmdline['msg'])
ret, error = server.runCommand(cmdline)
if error:
print("Error running command '%s': %s" % (cmdline, error))
return 1
ret = server.runCommand(cmdline['action'])
if ret != True:
print("Couldn't get default commandline! %s" % ret)
elif ret != True:
print("Error running command '%s': returned %s" % (cmdline, ret))
return 1
except xmlrpclib.Fault as x:
print("XMLRPC Fault getting commandline:\n %s" % x)

View File

@@ -157,6 +157,8 @@ class TerminalFilter(object):
new[3] = new[3] & ~termios.ECHO
termios.tcsetattr(fd, termios.TCSADRAIN, new)
curses.setupterm()
if curses.tigetnum("colors") > 2:
format.enable_color()
self.ed = curses.tigetstr("ed")
if self.ed:
self.cuu = curses.tigetstr("cuu")
@@ -187,7 +189,7 @@ class TerminalFilter(object):
return
if self.footer_present:
self.clearFooter()
if not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total:
if (not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total) and not len(activetasks):
return
tasks = []
for t in runningpids:
@@ -217,9 +219,19 @@ class TerminalFilter(object):
def main(server, eventHandler, tf = TerminalFilter):
# Get values of variables which control our output
includelogs = server.runCommand(["getVariable", "BBINCLUDELOGS"])
loglines = server.runCommand(["getVariable", "BBINCLUDELOGS_LINES"])
consolelogfile = server.runCommand(["getVariable", "BB_CONSOLELOG"])
includelogs, error = server.runCommand(["getVariable", "BBINCLUDELOGS"])
if error:
logger.error("Unable to get the value of BBINCLUDELOGS variable: %s" % error)
return 1
loglines, error = server.runCommand(["getVariable", "BBINCLUDELOGS_LINES"])
if error:
logger.error("Unable to get the value of BBINCLUDELOGS_LINES variable: %s" % error)
return 1
consolelogfile, error = server.runCommand(["getVariable", "BB_CONSOLELOG"])
if error:
logger.error("Unable to get the value of BB_CONSOLELOG variable: %s" % error)
return 1
if sys.stdin.isatty() and sys.stdout.isatty():
log_exec_tty = True
else:
@@ -228,31 +240,36 @@ def main(server, eventHandler, tf = TerminalFilter):
helper = uihelper.BBUIHelper()
console = logging.StreamHandler(sys.stdout)
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
format_str = "%(levelname)s: %(message)s"
format = bb.msg.BBLogFormatter(format_str)
bb.msg.addDefaultlogFilter(console)
console.setFormatter(format)
logger.addHandler(console)
if consolelogfile:
bb.utils.mkdirhier(os.path.dirname(consolelogfile))
conlogformat = bb.msg.BBLogFormatter(format_str)
consolelog = logging.FileHandler(consolelogfile)
bb.msg.addDefaultlogFilter(consolelog)
consolelog.setFormatter(format)
consolelog.setFormatter(conlogformat)
logger.addHandler(consolelog)
try:
cmdline = server.runCommand(["getCmdLineAction"])
if not cmdline:
cmdline, error = server.runCommand(["getCmdLineAction"])
if error:
logger.error("Unable to get bitbake commandline arguments: %s" % error)
return 1
elif not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
elif not cmdline['action']:
print(cmdline['msg'])
ret, error = server.runCommand(cmdline)
if error:
logger.error("Command '%s' failed: %s" % (cmdline, error))
return 1
ret = server.runCommand(cmdline['action'])
if ret != True:
print("Couldn't get default commandline! %s" % ret)
elif ret != True:
logger.error("Command '%s' failed: returned %s" % (cmdline, ret))
return 1
except xmlrpclib.Fault as x:
print("XMLRPC Fault getting commandline:\n %s" % x)
logger.error("XMLRPC Fault getting commandline:\n %s" % x)
return 1
parseprogress = None
@@ -450,11 +467,15 @@ def main(server, eventHandler, tf = TerminalFilter):
termfilter.clearFooter()
if main.shutdown == 1:
print("\nSecond Keyboard Interrupt, stopping...\n")
server.runCommand(["stateStop"])
_, error = server.runCommand(["stateStop"])
if error:
logger.error("Unable to cleanly stop: %s" % error)
if main.shutdown == 0:
interrupted = True
print("\nKeyboard Interrupt, closing down...\n")
server.runCommand(["stateShutdown"])
interrupted = True
_, error = server.runCommand(["stateShutdown"])
if error:
logger.error("Unable to cleanly shutdown: %s" % error)
main.shutdown = main.shutdown + 1
pass

View File

@@ -236,15 +236,18 @@ class NCursesUI:
shutdown = 0
try:
cmdline = server.runCommand(["getCmdLineAction"])
cmdline, error = server.runCommand(["getCmdLineAction"])
if not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return
elif not cmdline['action']:
print(cmdline['msg'])
elif error:
print("Error getting bitbake commandline: %s" % error)
return
ret = server.runCommand(cmdline['action'])
if ret != True:
ret, error = server.runCommand(cmdline)
if error:
print("Error running command '%s': %s" % (cmdline, error))
return
elif ret != True:
print("Couldn't get default commandlind! %s" % ret)
return
except xmlrpclib.Fault as x:
@@ -345,10 +348,14 @@ class NCursesUI:
exitflag = True
if shutdown == 1:
mw.appendText("Second Keyboard Interrupt, stopping...\n")
server.runCommand(["stateStop"])
_, error = server.runCommand(["stateStop"])
if error:
print("Unable to cleanly stop: %s" % error)
if shutdown == 0:
mw.appendText("Keyboard Interrupt, closing down...\n")
server.runCommand(["stateShutdown"])
_, error = server.runCommand(["stateShutdown"])
if error:
print("Unable to cleanly shutdown: %s" % error)
shutdown = shutdown + 1
pass

View File

@@ -51,6 +51,7 @@ class BBUIHelper:
if isinstance(event, bb.runqueue.runQueueTaskStarted) or isinstance(event, bb.runqueue.sceneQueueTaskStarted):
self.tasknumber_current = event.stats.completed + event.stats.active + event.stats.failed + 1
self.tasknumber_total = event.stats.total
self.needUpdate = True
def getTasks(self):
self.needUpdate = False

View File

@@ -24,13 +24,15 @@
# manuals are being generated. The variable BRANCH is used to indicate the
# branch (edison or denzil) and is used only when DOC=dev-manual or
# DOC=mega-manual. If you do not specify a BRANCH, the default branch used
# will be for the latest Yocto Project release.
# will be for the latest Yocto Project release. If you build for either
# edison or denzil, you must use BRANCH. You do not need to use BRANCH for
# any release beyond denzil.
#
# To build a manual, you must invoke Makefile with the DOC argument. If you
# are going to publish the manual, then you must invoke Makefile with both the
# DOC and the VER argument. If you are building a particular version of the
# Yocto Project Development Manual or you are building any version of the
# mega-manual, you must use the DOC and BRANCH arguments.
# DOC and the VER argument. Furthermore, if you are building or publishing
# the edison or denzil versions of the Yocto Poject Development Manual or
# the mega-manual, you must also use the BRANCH argument.
#
# Examples:
#
@@ -47,7 +49,8 @@
# fourth example generates both the PDF and HTML 'edison' versions of the YP
# Development Manual. The last exmample generates the HTML version of the
# mega-manual and uses the 'denzil' branch when choosing figures for the
# tarball of figures.
# tarball of figures. Any example that does not use the BRANCH argument
# builds the current version of the manual set.
#
# Use the publish target to push the generated manuals to the Yocto Project
# website. All files needed for the manual's HTML form are pushed as well as the
@@ -57,16 +60,13 @@
# make publish DOC=bsp-guide VER=1.3
# make publish DOC=adt-manual VER=1.3
# make publish DOC=dev-manual VER=1.1.1 BRANCH=edison
# make publish DOC=dev-manual VER=1.2
# make publish DOC=mega-manual VER=1.3 BRANCH=denzil
# make publish DOC=dev-manual VER=1.2 BRANCH=denzil
#
# The first example publishes the 1.2 version of both the PDF and HTML versions of
# the BSP Guide. The second example publishes the 1.2 version of both the PDF and
# The first example publishes the 1.3 version of both the PDF and HTML versions of
# the BSP Guide. The second example publishes the 1.3 version of both the PDF and
# HTML versions of the ADT Manual. The third example publishes the PDF and HTML
# 'edison' versions of the YP Development Manual. The fourth example publishes
# the PDF and HTML 'master' versions of the YP Development Manual. The last
# example publishes the 1.3 version of the mega-manual (HTML-only) and the
# version generated and published is based on the 'denzil' branch.
# the PDF and HTML 'denzil' versions of the YP Development Manual.
#
ifeq ($(DOC),bsp-guide)
@@ -119,11 +119,8 @@ TARFILES = dev-style.css dev-manual.html dev-manual.pdf \
TARFILES = dev-style.css dev-manual.html dev-manual.pdf \
figures/app-dev-flow.png figures/bsp-dev-flow.png figures/dev-title.png \
figures/git-workflow.png figures/index-downloads.png figures/kernel-dev-flow.png \
figures/kernel-example-repos-denzil.png \
figures/kernel-overview-1.png figures/kernel-overview-2.png \
figures/kernel-overview-3-denzil.png \
figures/source-repos.png figures/yp-download.png \
figures/wip.png
figures/kernel-overview-1.png figures/kernel-overview-2-generic.png \
figures/source-repos.png figures/yp-download.png
endif
MANUALS = $(DOC)/$(DOC).html $(DOC)/$(DOC).pdf
@@ -184,11 +181,8 @@ TARFILES = mega-manual.html mega-style.css figures/yocto-environment.png figures
figures/kernel-title.png figures/kernel-architecture-overview.png \
figures/app-dev-flow.png figures/bsp-dev-flow.png figures/dev-title.png \
figures/git-workflow.png figures/index-downloads.png figures/kernel-dev-flow.png \
figures/kernel-example-repos-denzil.png \
figures/kernel-overview-1.png figures/kernel-overview-2.png \
figures/kernel-overview-3-denzil.png \
figures/source-repos.png figures/yp-download.png \
figures/wip.png
figures/kernel-overview-1.png figures/kernel-overview-2-generic.png \
figures/source-repos.png figures/yp-download.png
endif
MANUALS = $(DOC)/$(DOC).html

View File

@@ -8,9 +8,9 @@
<para>
Recall that earlier the manual discussed how to use an existing toolchain
tarball that had been installed into <filename>/opt/poky</filename>,
which is outside of the build directory
(see the section "<link linkend='using-an-existing-toolchain-tarball'>Using an Existing
Toolchain Tarball)</link>".
which is outside of the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
(see the section "<link linkend='using-an-existing-toolchain-tarball'>Using a Cross-Toolchain Tarball)</link>".
And, that sourcing your architecture-specific environment setup script
initializes a suitable cross-toolchain development environment.
During the setup, locations for the compiler, QEMU scripts, QEMU binary,

View File

@@ -55,7 +55,9 @@
The cross-toolchain consists of a cross-compiler, cross-linker, and cross-debugger
that are used to develop user-space applications for targeted hardware.
This toolchain is created either by running the ADT Installer script, a toolchain installer
script, or through a build directory that is based on your metadata
script, or through a
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> that
is based on your metadata
configuration or extension for your targeted device.
The cross-toolchain works with a matching target sysroot.
</para>
@@ -111,7 +113,9 @@
<listitem><para>If you use the ADT Installer script to install ADT, you can
specify whether or not to install QEMU.</para></listitem>
<listitem><para>If you have downloaded a Yocto Project release and unpacked
it to create a source directory and you have sourced
it to create a
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> and
you have sourced
the environment setup script, QEMU is installed and automatically
available.</para></listitem>
<listitem><para>If you have installed the cross-toolchain
@@ -139,7 +143,7 @@
<listitem><para><emphasis>PowerTOP:</emphasis> Helps you determine what
software is using the most power.
You can find out more about PowerTOP at
<ulink url='http://www.linuxpowertop.org/'></ulink>.</para></listitem>
<ulink url='https://01.org/powertop/'></ulink>.</para></listitem>
<listitem><para><emphasis>OProfile:</emphasis> A system-wide profiler for Linux
systems that is capable of profiling all running code at low overhead.
You can find out more about OProfile at

View File

@@ -51,7 +51,7 @@
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>Sometime in 2012</date>
<date>October 2012</date>
<revremark>Released with the Yocto Project 1.3 Release.</revremark>
</revision>
</revhistory>

View File

@@ -78,7 +78,7 @@
<para>
Next, source the environment setup script found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
Follow that by setting up the installation destination to point to your
sysroot as <filename>&lt;sysroot_dir&gt;</filename>.
Finally, have an OPKG configuration file <filename>&lt;conf_file&gt;</filename>

View File

@@ -52,7 +52,7 @@
get any of the other mentioned benefits had you run the ADT Installer script.</para></listitem>
<listitem><para><emphasis>Use the Toolchain from within the Build Directory:</emphasis>
If you already have a
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>,
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>,
you can build the cross-toolchain within the directory.
However, like the previous method mentioned, you only get the cross-toolchain and QEMU - you
do not get any of the other benefits without taking separate steps.</para></listitem>
@@ -77,21 +77,21 @@
at
<ulink url='&YOCTO_ADTINSTALLER_DL_URL;'></ulink>.
Or, you can use BitBake to generate the tarball inside the existing
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
</para>
<para>
If you use BitBake to generate the ADT Installer tarball, you must
<filename>source</filename> the environment setup script
(<filename>&OE_INIT_FILE;</filename>) located
in the source directory before running the <filename>bitbake</filename>
in the Source Directory before running the <filename>bitbake</filename>
command that creates the tarball.
</para>
<para>
The following example commands download the Poky tarball, set up the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>,
set up the environment while also creating the default build directory,
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>,
set up the environment while also creating the default Build Directory,
and run the <filename>bitbake</filename> command that results in the tarball
<filename>~/yocto-project/build/tmp/deploy/sdk/adt_installer.tar.bz2</filename>:
<literallayout class='monospaced'>
@@ -251,7 +251,7 @@
poky-eglibc-x86_64-i586-toolchain-gmae-&DISTRO;.sh
</literallayout>
<note><para>As an alternative to steps one and two, you can build the toolchain installer
if you have a <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
if you have a <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
If you need GMAE, you should use the <filename>bitbake meta-toolchain-gmae</filename>
command.
The resulting installation script when run will support such development.
@@ -259,10 +259,10 @@
you can generate the toolchain installer using
<filename>bitbake meta-toolchain</filename>.</para>
<para>Use the appropriate <filename>bitbake</filename> command only after you have
sourced the <filename>oe-build-init-env</filename> script located in the source
directory.
sourced the <filename>&OE_INIT_PATH;</filename> script located in the Source
Directory.
When the <filename>bitbake</filename> command completes, the toolchain installer will
be in <filename>tmp/deploy/sdk</filename> in the build directory.
be in <filename>tmp/deploy/sdk</filename> in the Build Directory.
</para></note>
</para></listitem>
<listitem><para>Once you have the installer, run it to install the toolchain.
@@ -292,7 +292,7 @@
<para>
A final way of making the cross-toolchain available is to use BitBake
to generate the toolchain within an existing
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
This method does not install the toolchain into the
<filename>/opt</filename> directory.
As with the previous method, if you need to install the target sysroot, you must
@@ -300,20 +300,20 @@
</para>
<para>
Follow these steps to generate the toolchain into the build directory:
Follow these steps to generate the toolchain into the Build Directory:
<orderedlist>
<listitem><para>Source the environment setup script
<filename>&OE_INIT_FILE;</filename> located in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para></listitem>
<listitem><para>At this point, you should be sure that the
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink> variable
in the <filename>local.conf</filename> file found in the
<filename>conf</filename> directory of the build directory
<filename>conf</filename> directory of the Build Directory
is set for the target architecture.
Comments within the <filename>local.conf</filename> file list the values you
can use for the <filename>MACHINE</filename> variable.
<note>You can populate the build directory with the cross-toolchains for more
<note>You can populate the Build Directory with the cross-toolchains for more
than a single architecture.
You just need to edit the <filename>MACHINE</filename> variable in the
<filename>local.conf</filename> file and re-run the BitBake
@@ -327,9 +327,9 @@
after checking or editing the <filename>local.conf</filename> but without
changing out of your working directory.</note>
Once the <filename>bitbake</filename> command finishes,
the cross-toolchain is generated and populated within the build directory.
the cross-toolchain is generated and populated within the Build Directory.
You will notice environment setup files for the cross-toolchain in the
build directory in the <filename>tmp</filename> directory.
Build Directory in the <filename>tmp</filename> directory.
Setup script filenames contain the strings <filename>environment-setup</filename>.</para>
<para>Be aware that when you use this method to install the toolchain you still need
to separately extract and install the sysroot filesystem.
@@ -351,9 +351,9 @@
then you can find this script in the <filename>&YOCTO_ADTPATH_DIR;</filename>
directory.
If you installed the toolchain in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>,
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>,
you can find the environment setup
script for the toolchain in the build directory's <filename>tmp</filename> directory.
script for the toolchain in the Build Directory's <filename>tmp</filename> directory.
</para>
<para>
@@ -426,7 +426,7 @@
you can do so one of two ways:
<itemizedlist>
<listitem><para>Modify the <filename>conf/local.conf</filename> configuration in
the <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
the <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
and then rebuild the image.
With this method, you need to modify the
<ulink url='&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGE_FEATURES'><filename>EXTRA_IMAGE_FEATURES</filename></ulink>

View File

@@ -63,7 +63,7 @@
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>Sometime in 2012</date>
<date>October 2012</date>
<revremark>Released with the Yocto Project 1.3 Release.</revremark>
</revision>
</revhistory>

View File

@@ -19,8 +19,7 @@
</para>
<para>
This chapter (or document if you are reading the BSP Developer's Guide)
talks about BSP Layers, defines a structure for components
This guide presents information about BSP Layers, defines a structure for components
so that BSPs follow a commonly understood layout, discusses how to customize
a recipe for a BSP, addresses BSP licensing, and provides information that
shows you how to create and manage a
@@ -48,7 +47,7 @@
This root is what you add to the
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink>
variable in the <filename>conf/bblayers.conf</filename> file found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
Adding the root allows the OpenEmbedded build system to recognize the BSP
definition and from it build an image.
Here is an example:
@@ -56,6 +55,7 @@
BBLAYERS = " \
/usr/local/src/yocto/meta \
/usr/local/src/yocto/meta-yocto \
/usr/local/src/yocto/meta-yocto-bsp \
/usr/local/src/yocto/meta-&lt;bsp_name&gt; \
"
</literallayout>
@@ -83,8 +83,6 @@
For more detailed information on layers, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding and Creating Layers</ulink>"
section of the Yocto Project Development Manual.
You can also see the detailed examples in the appendices of the
<ulink url='&YOCTO_DOCS_DEV_URL;'>Yocto Project Development Manual</ulink>.
</para>
</section>
@@ -182,9 +180,10 @@
meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay-noemgd/xorg.conf
meta-crownbay/recipes-kernel/
meta-crownbay/recipes-kernel/linux/
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.0.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto_2.6.37.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto_3.0.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.2.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto-rt_3.4.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto_3.2.bbappend
meta-crownbay/recipes-kernel/linux/linux-yocto_3.4.bbappend
</literallayout>
</para>
@@ -388,7 +387,7 @@
<para>
Tuning files are found in the <filename>meta/conf/machine/include</filename>
directory within the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
Tuning files can also reside in the BSP Layer itself.
For example, the <filename>ia32-base.inc</filename> file resides in the
<filename>meta-intel</filename> BSP Layer in <filename>conf/machine/include</filename>.
@@ -399,8 +398,8 @@
For example, the Crown Bay BSP <filename>crownbay.conf</filename> has the
following statements:
<literallayout class='monospaced'>
include conf/machine/include/tune-atom.inc
include conf/machine/include/ia32-base.inc
require conf/machine/include/tune-atom.inc
require conf/machine/include/ia32-base.inc
</literallayout>
</para>
</section>
@@ -440,7 +439,7 @@
formfactor recipe
<filename>meta/recipes-bsp/formfactor/formfactor_0.0.bb</filename>,
which is found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para></note>
</section>
@@ -485,7 +484,7 @@
</para>
<para>
For your BSP, you typically want to use an existing Yocto Project kernel recipe found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
at <filename>meta/recipes-kernel/linux</filename>.
You can append your specific changes to the kernel recipe by using a
similarly named append file, which is located in the BSP Layer (e.g.
@@ -495,11 +494,17 @@
Suppose you are using the <filename>linux-yocto_3.4.bb</filename> recipe to build
the kernel.
In other words, you have selected the kernel in your
<filename>&lt;bsp_name&gt;.conf</filename> file by adding the following statements:
<filename>&lt;bsp_name&gt;.conf</filename> file by adding these types
of statements:
<literallayout class='monospaced'>
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto = "3.4%"
</literallayout>
<note>
When the preferred provider is assumed by default, the
<filename>PREFERRED_PROVIDER</filename> statement does not appear in the
<filename>&lt;bsp_name&gt;.conf</filename> file.
</note>
You would use the <filename>linux-yocto_3.4.bbappend</filename> file to append
specific BSP settings to the kernel, thus configuring the kernel for your particular BSP.
</para>
@@ -518,17 +523,22 @@
COMPATIBLE_MACHINE_crownbay = "crownbay"
KMACHINE_crownbay = "crownbay"
KBRANCH_crownbay = "standard/default/crownbay"
KBRANCH_crownbay = "standard/crownbay"
COMPATIBLE_MACHINE_crownbay-noemgd = "crownbay-noemgd"
KMACHINE_crownbay-noemgd = "crownbay"
KBRANCH_crownbay-noemgd = "standard/default/crownbay"
KBRANCH_crownbay-noemgd = "standard/crownbay"
SRCREV_machine_pn-linux-yocto_crownbay ?= "48101e609711fcfe8d5e737a37a5a69f4bd57d9a"
SRCREV_meta_pn-linux-yocto_crownbay ?= "5b4c9dc78b5ae607173cc3ddab9bce1b5f78129b"
SRCREV_machine_pn-linux-yocto_crownbay ?= "449f7f520350700858f21a5554b81cc8ad23267d"
SRCREV_meta_pn-linux-yocto_crownbay ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac"
SRCREV_emgd_pn-linux-yocto_crownbay ?= "86643bdd8cbad616a161ab91f51108cf0da827bc"
SRCREV_machine_pn-linux-yocto_crownbay-noemgd ?= "48101e609711fcfe8d5e737a37a5a69f4bd57d9a"
SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= "5b4c9dc78b5ae607173cc3ddab9bce1b5f78129b"
SRCREV_machine_pn-linux-yocto_crownbay-noemgd ?= "449f7f520350700858f21a5554b81cc8ad23267d"
SRCREV_meta_pn-linux-yocto_crownbay-noemgd ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac"
KSRC_linux_yocto_3_4 ?= "git.yoctoproject.org/linux-yocto-3.4.git"
SRC_URI_crownbay = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta,emgd-1.14;name=machine,meta,emgd"
SRC_URI_crownbay-noemgd = "git://git.yoctoproject.org/linux-yocto-3.4.git;protocol=git;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
</literallayout>
This append file contains statements used to support the Crown Bay BSP for both
<trademark class='registered'>Intel</trademark> EMGD and the VESA graphics.
@@ -541,10 +551,11 @@
COMPATIBLE_MACHINE_crownbay = "crownbay"
KMACHINE_crownbay = "crownbay"
KBRANCH_crownbay = "standard/default/crownbay"
KBRANCH_crownbay = "standard/crownbay"
SRCREV_machine_pn-linux-yocto_crownbay ?= "48101e609711fcfe8d5e737a37a5a69f4bd57d9a"
SRCREV_meta_pn-linux-yocto_crownbay ?= "5b4c9dc78b5ae607173cc3ddab9bce1b5f78129b"
SRCREV_machine_pn-linux-yocto_crownbay ?= "449f7f520350700858f21a5554b81cc8ad23267d"
SRCREV_meta_pn-linux-yocto_crownbay ?= "9e3bdb7344054264b750e53fbbb6394cc1c942ac"
SRCREV_emgd_pn-linux-yocto_crownbay ?= "86643bdd8cbad616a161ab91f51108cf0da827bc"
</literallayout>
The append file defines <filename>crownbay</filename> as the
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>
@@ -556,10 +567,16 @@
<ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> variable
to ensure the build process uses the <filename>standard/default/crownbay</filename>
kernel branch.
Finally, the append file points to the specific top commits in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink> Git
Finally, the append file points to specific commits in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> Git
repository and the <filename>meta</filename> Git repository branches to identify the
exact kernel needed to build the Crown Bay BSP.
<note>
For <filename>crownbay</filename>, a specific commit is also needed to point
to the branch that supports EMGD graphics.
At a minimum, every BSP points to the
<filename>machine</filename> and <filename>meta</filename> commits.
</note>
</para>
<para>
@@ -617,13 +634,6 @@
<filename>meta</filename> branch for your BSP.
The configuration options will likely end up in that location anyway if the BSP gets
added to the Yocto Project.
For an example showing how to change the BSP configuration, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#changing-the-bsp-configuration'>Changing the BSP Configuration</ulink>"
section in the Yocto Project Development Manual.
For a better understanding of working with a local clone of the kernel repository
and a local bare clone of the kernel, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#modifying-the-kernel-source-code'>Modifying the Kernel
Source Code</ulink>" section also in the Yocto Project Development Manual.
</para>
<para>
@@ -706,7 +716,7 @@
<filename>recipe-*</filename> subdirectory.
You can find <filename>recipes.txt</filename> in the
<filename>meta</filename> directory of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>,
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>,
or in the OpenEmbedded Core Layer
(<filename>openembedded-core</filename>) found at
<ulink url='http://git.openembedded.org/openembedded-core/tree/meta'></ulink>.
@@ -714,7 +724,7 @@
<para>Within any particular <filename>recipes-*</filename> category, the layout
should match what is found in the OpenEmbedded Core
Git repository (<filename>openembedded-core</filename>)
or the source directory (<filename>poky</filename>).
or the Source Directory (<filename>poky</filename>).
In other words, make sure you place related files in appropriately
related <filename>recipes-*</filename> subdirectories specific to the
recipe's function, or within a subdirectory containing a set of closely-related
@@ -730,22 +740,22 @@
You must specify which license to use since there is no
default license if one is not specified.
See the
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fishriver/COPYING.MIT'><filename>COPYING.MIT</filename></ulink>
file for the Fish River BSP in the <filename>meta-fishriver</filename> BSP layer
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fri2/COPYING.MIT'><filename>COPYING.MIT</filename></ulink>
file for the Fish River Island 2 BSP in the <filename>meta-fri2</filename> BSP layer
as an example.</para></listitem>
<listitem><para><emphasis>README File:</emphasis>
You must include a <filename>README</filename> file in the
<filename>meta-&lt;bsp_name&gt;</filename> directory.
See the
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fishriver/README'><filename>README</filename></ulink>
file for the Fish River BSP in the <filename>meta-fishriver</filename> BSP layer
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fri2/README'><filename>README</filename></ulink>
file for the Fish River Island 2 BSP in the <filename>meta-fri2</filename> BSP layer
as an example.</para>
<para>At a minimum, the <filename>README</filename> file should
contain the following:
<itemizedlist>
<listitem><para>A brief description about the hardware the BSP
targets.</para></listitem>
<listitem><para>A list of all the dependencies a
<listitem><para>A list of all the dependencies
on which a BSP layer depends.
These dependencies are typically a list of required layers needed
to build the BSP.
@@ -778,8 +788,8 @@
generate the binary images contained in the
<filename>/binary</filename> directory, if present.
See the
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fishriver/README.sources'><filename>README.sources</filename></ulink>
file for the Fish River BSP in the <filename>meta-fishriver</filename> BSP layer
<ulink url='&YOCTO_GIT_URL;/cgit.cgi/meta-intel/tree/meta-fri2/README.sources'><filename>README.sources</filename></ulink>
file for the Fish River Island 2 BSP in the <filename>meta-fri2</filename> BSP layer
as an example.</para></listitem>
<listitem><para><emphasis>Layer Configuration File:</emphasis>
You must include a <filename>conf/layer.conf</filename> in the
@@ -793,14 +803,13 @@
using the BSP layer.
Multiple machine configuration files define variations of machine
configurations that are supported by the BSP.
If a BSP supports more multiple machine variations, you need to
If a BSP supports multiple machine variations, you need to
adequately describe each variation in the BSP
<filename>README</filename> file.
Do not use multiple machine configuration files to describe disparate
hardware.
Multiple machine configuration files should describe very similar targets.
If you do have very different targets, you should create a separate
BSP.
If you do have very different targets, you should create separate
BSP layers for each target.
<note>It is completely possible for a developer to structure the
working repository as a conglomeration of unrelated BSP
files, and to possibly generate specifically targeted 'release' BSPs
@@ -846,7 +855,7 @@
Basing your recipes on these kernels reduces the costs for maintaining
the BSP and increases its scalability.
See the <filename>Yocto Linux Kernel</filename> category in the
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'><filename>Yocto Source Repositories</filename></ulink>
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'>Source Repositories</ulink>
for these kernels.</para></listitem>
</itemizedlist>
</para>
@@ -1017,8 +1026,8 @@
<para>
The following sections describe the common location and help features as well
as details for the <filename>yocto-bsp</filename> and <filename>yocto-kernel</filename>
tools.
as provide details for the
<filename>yocto-bsp</filename> and <filename>yocto-kernel</filename> tools.
</para>
<section id='common-features'>
@@ -1037,7 +1046,7 @@
<para>
Both tools reside in the <filename>scripts/</filename> subdirectory
of the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
of the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
Consequently, to use the scripts, you must <filename>source</filename> the
environment just as you would when invoking a build:
<literallayout class='monospaced'>
@@ -1049,30 +1058,27 @@
The most immediately useful function is to get help on both tools.
The built-in help system makes it easy to drill down at
any time and view the syntax required for any specific command.
Simply enter the name of the command, or the command along with
<filename>help</filename> to display a list of the available sub-commands.
Here is an example:
Simply enter the name of the command with the <filename>help</filename>
switch:
<literallayout class='monospaced'>
$ yocto-bsp
$ yocto-bsp help
Usage:
Usage:
Create a customized Yocto BSP layer.
Create a customized Yocto BSP layer.
usage: yocto-bsp [--version] [--help] COMMAND [ARGS]
usage: yocto-bsp [--version] [--help] COMMAND [ARGS]
Current 'yocto-bsp' commands are:
create Create a new Yocto BSP
list List available values for options and BSP properties
The most commonly used 'yocto-bsp' commands are:
create Create a new Yocto BSP
list List available values for options and BSP properties
See 'yocto-bsp help COMMAND' for more information on a specific command.
See 'yocto-bsp help COMMAND' for more information on a specific command.
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-D, --debug output debug information
--version show program's version number and exit
-h, --help show this help message and exit
-D, --debug output debug information
</literallayout>
</para>
@@ -1082,19 +1088,20 @@
<literallayout class='monospaced'>
$ yocto-bsp create
Usage:
Usage:
Create a new Yocto BSP
usage: yocto-bsp create &lt;bsp-name&gt; &lt;karch&gt; [-o &lt;DIRNAME&gt; | --outdir &lt;DIRNAME&gt;]
Create a new Yocto BSP
usage: yocto-bsp create &lt;bsp-name&gt; &lt;karch&gt; [-o &lt;DIRNAME&gt; | --outdir &lt;DIRNAME&gt;]
[-i &lt;JSON PROPERTY FILE&gt; | --infile &lt;JSON PROPERTY_FILE&gt;]
This command creates a Yocto BSP based on the specified parameters.
The new BSP will be a new BSP layer contained by default within
the top-level directory specified as 'meta-bsp-name'. The -o option
can be used to place the BSP layer in a directory with a different
name and location.
This command creates a Yocto BSP based on the specified parameters.
The new BSP will be a new Yocto BSP layer contained by default within
the top-level directory specified as 'meta-bsp-name'. The -o option
can be used to place the BSP layer in a directory with a different
name and location.
...
...
</literallayout>
</para>
@@ -1105,33 +1112,26 @@
$ yocto-bsp help create
NAME
yocto-bsp create - Create a new Yocto BSP
yocto-bsp create - Create a new Yocto BSP
SYNOPSIS
yocto-bsp create &lt;bsp-name&gt; &lt;karch&gt; [-o &lt;DIRNAME&gt; | --outdir &lt;DIRNAME&gt;]
yocto-bsp create &lt;bsp-name&gt; &lt;karch&gt; [-o &lt;DIRNAME&gt; | --outdir &lt;DIRNAME&gt;]
[-i &lt;JSON PROPERTY FILE&gt; | --infile &lt;JSON PROPERTY_FILE&gt;]
DESCRIPTION
This command creates a Yocto BSP based on the specified
parameters. The new BSP will be a new Yocto BSP layer contained
by default within the top-level directory specified as
'meta-bsp-name'. The -o option can be used to place the BSP layer
in a directory with a different name and location.
The value of the 'karch' parameter determines the set of files
that will be generated for the BSP, along with the specific set of
'properties' that will be used to fill out the BSP-specific
portions of the BSP.
...
NOTE: Once created, you should add your new layer to your
bblayers.conf file in order for it to be subsequently seen and
modified by the yocto-kernel tool.
NOTE for x86- and x86_64-based BSPs: The generated BSP assumes the
presence of the of the meta-intel layer, so you should also have a
meta-intel layer present and added to your bblayers.conf as well.
This command creates a Yocto BSP based on the specified
parameters. The new BSP will be a new Yocto BSP layer contained
by default within the top-level directory specified as
'meta-bsp-name'. The -o option can be used to place the BSP layer
in a directory with a different name and location.
The value of the 'karch' parameter determines the set of files
that will be generated for the BSP, along with the specific set of
'properties' that will be used to fill out the BSP-specific
portions of the BSP. The possible values for the 'karch' paramter
can be listed via 'yocto-bsp list karch'.
...
</literallayout>
</para>
@@ -1158,33 +1158,33 @@
For the current set of BSPs, the script prompts you for various important
parameters such as:
<itemizedlist>
<listitem><para>which kernel to use</para></listitem>
<listitem><para>which branch of that kernel to use (or re-use)</para></listitem>
<listitem><para>whether or not to use X, and if so, which drivers to use</para></listitem>
<listitem><para>whether to turn on SMP</para></listitem>
<listitem><para>whether the BSP has a keyboard</para></listitem>
<listitem><para>whether the BSP has a touchscreen</para></listitem>
<listitem><para>any remaining configurable items associated with the BSP</para></listitem>
<listitem><para>The kernel to use</para></listitem>
<listitem><para>The branch of that kernel to use (or re-use)</para></listitem>
<listitem><para>Whether or not to use X, and if so, which drivers to use</para></listitem>
<listitem><para>Whether to turn on SMP</para></listitem>
<listitem><para>Whether the BSP has a keyboard</para></listitem>
<listitem><para>Whether the BSP has a touchscreen</para></listitem>
<listitem><para>Remaining configurable items associated with the BSP</para></listitem>
</itemizedlist>
</para>
<para>
You use the <filename>yocto-bsp create</filename> sub-command to create
a new BSP layer.
This command requires you to specify a particular architecture on which to
base the BSP.
This command requires you to specify a particular kernel architecture
(<filename>karch</filename>) on which to base the BSP.
Assuming you have sourced the environment, you can use the
<filename>yocto-bsp list karch</filename> sub-command to list the
architectures available for BSP creation as follows:
<literallayout class='monospaced'>
$ yocto-bsp list karch
Architectures available:
arm
powerpc
i386
mips
x86_64
qemu
x86_64
i386
powerpc
arm
mips
</literallayout>
</para>
@@ -1205,53 +1205,46 @@
the prompts appear in brackets.
Pressing enter without supplying anything on the command line or pressing enter
and providing an invalid response causes the script to accept the default value.
Once the script completes, the new <filename>meta-myarm</filename> BSP layer
is created in the current working directory.
This example assumes you have source the &OE_INIT_FILE; and are currently
in the top-level folder of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para>
<para>
Following is the complete example:
<literallayout class='monospaced'>
$ yocto-bsp create myarm qemu
Which qemu architecture would you like to use? [default: x86]
1) common 32-bit x86
2) common 64-bit x86
3) common 32-bit ARM
4) common 32-bit PowerPC
5) common 32-bit MIPS
Which qemu architecture would you like to use? [default: i386]
1) i386 (32-bit)
2) x86_64 (64-bit)
3) ARM (32-bit)
4) PowerPC (32-bit)
5) MIPS (32-bit)
3
Would you like to use the default (3.2) kernel? (Y/n)
Do you need a new machine branch for this BSP (the alternative is to re-use an existing branch)? [Y/n]
Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.2...
Please choose a machine branch to base this BSP on => [default: standard/default/common-pc]
1) base
Would you like to use the default (3.4) kernel? (y/n) [default: y]
Do you need a new machine branch for this BSP (the alternative is to re-use an existing branch)? [y/n] [default: y]
Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.4.git...
Please choose a machine branch to base your new BSP branch on: [default: standard/base]
1) standard/arm-versatile-926ejs
2) standard/base
3) standard/default/arm-versatile-926ejs
4) standard/default/base
5) standard/default/beagleboard
6) standard/default/cedartrailbsp (copy).xml
7) standard/default/common-pc-64/base
8) standard/default/common-pc-64/jasperforest
9) standard/default/common-pc-64/romley
10) standard/default/common-pc-64/sugarbay
11) standard/default/common-pc/atom-pc
12) standard/default/common-pc/base
13) standard/default/crownbay
14) standard/default/emenlow
15) standard/default/fishriver
16) standard/default/fri2
17) standard/default/fsl-mpc8315e-rdb
18) standard/default/mti-malta32-be
19) standard/default/mti-malta32-le
20) standard/default/preempt-rt
21) standard/default/qemu-ppc32
22) standard/default/routerstationpro
23) standard/preempt-rt/base
24) standard/preempt-rt/qemu-ppc32
25) standard/preempt-rt/routerstationpro
26) standard/tiny
3
Do you need SMP support? (Y/n)
Does your BSP have a touchscreen? (y/N)
Does your BSP have a keyboard? (Y/n)
3) standard/beagleboard
4) standard/cedartrail
5) standard/crownbay
6) standard/emenlow
7) standard/fishriver
8) standard/fri2
9) standard/fsl-mpc8315e-rdb
10) standard/mti-malta32
11) standard/mti-malta64
12) standard/qemuppc
13) standard/routerstationpro
14) standard/sys940x
1
Would you like SMP support? (y/n) [default: y]
Does your BSP have a touchscreen? (y/n) [default: n]
Does your BSP have a keyboard? (y/n) [default: y]
New qemu BSP created in meta-myarm
</literallayout>
Let's take a closer look at the example now:
@@ -1261,10 +1254,10 @@
In the example, we use the <filename>arm</filename> architecture.
</para></listitem>
<listitem><para>The script then prompts you for the kernel.
The default kernel is 3.2 and is acceptable.
The default 3.4 kernel is acceptable.
So, the example accepts the default.
If you enter 'n', the script prompts you to further enter the kernel
you do want to use (e.g. 3.0, 3.2_preempt-rt, etc.).</para></listitem>
you do want to use (e.g. 3.0, 3.2_preempt-rt, and so forth.).</para></listitem>
<listitem><para>Next, the script asks whether you would like to have a new
branch created especially for your BSP in the local
<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Linux Yocto Kernel</ulink>
@@ -1277,25 +1270,20 @@
The reason a new branch is the default is that typically
new BSPs do require BSP-specific patches.
The tool thus assumes that most of time a new branch is required.
<note>In the current implementation, creation or re-use of a branch does
not actually matter.
The reason is because the generated BSPs assume that patches and
configurations live in recipe-space, which is something that can be done
with or without a dedicated branch.
Generated BSPs, however, are different.
This difference becomes significant once the tool's 'publish' functionality
is implemented.</note></para></listitem>
<listitem><para>Regardless of which choice is made in the previous step,
</para></listitem>
<listitem><para>Regardless of which choice you make in the previous step,
you are now given the opportunity to select a particular machine branch on
which to base your new BSP-specific machine branch on
which to base your new BSP-specific machine branch
(or to re-use if you had elected to not create a new branch).
Because this example is generating an <filename>arm</filename> BSP, the example
uses <filename>#3</filename> at the prompt, which selects the arm-versatile branch.
uses <filename>#1</filename> at the prompt, which selects the arm-versatile branch.
</para></listitem>
<listitem><para>The remainder of the prompts are routine.
Defaults are accepted for each.</para></listitem>
<listitem><para>By default, the script creates the new BSP Layer in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
current working directory of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>,
which is <filename>poky</filename> in this case.
</para></listitem>
</orderedlist>
</para>
@@ -1308,6 +1296,7 @@
BBLAYERS = " \
/usr/local/src/yocto/meta \
/usr/local/src/yocto/meta-yocto \
/usr/local/src/yocto/meta-yocto-bsp \
/usr/local/src/yocto/meta-myarm \
"
</literallayout>
@@ -1339,21 +1328,28 @@
is to use the <filename>yocto-kernel</filename> built-in help as follows:
<literallayout class='monospaced'>
$ yocto-kernel
Usage:
Usage:
Modify and list Yocto BSP kernel config items and patches.
Modify and list Yocto BSP kernel config items and patches.
usage: yocto-kernel [--version] [--help] COMMAND [ARGS]
usage: yocto-kernel [--version] [--help] COMMAND [ARGS]
The most commonly used 'yocto-kernel' commands are:
config list List the modifiable set of bare kernel config options for a BSP
config add Add or modify bare kernel config options for a BSP
config rm Remove bare kernel config options from a BSP
patch list List the patches associated with a BSP
patch add Patch the Yocto kernel for a BSP
patch rm Remove patches from a BSP
Current 'yocto-kernel' commands are:
config list List the modifiable set of bare kernel config options for a BSP
config add Add or modify bare kernel config options for a BSP
config rm Remove bare kernel config options from a BSP
patch list List the patches associated with a BSP
patch add Patch the Yocto kernel for a BSP
patch rm Remove patches from a BSP
See 'yocto-kernel help COMMAND' for more information on a specific command.
See 'yocto-kernel help COMMAND' for more information on a specific command.
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-D, --debug output debug information
</literallayout>
</para>

View File

@@ -1,713 +0,0 @@
<!DOCTYPE appendix PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<appendix id='dev-manual-bsp-appendix'>
<title>BSP Development Example</title>
<para>
This appendix provides a complete BSP development example.
The example assumes the following:
<itemizedlist>
<listitem><para>No previous preparation or use of the Yocto Project.</para></listitem>
<listitem><para>Use of the Fish River Island 2 Board Support Package (BSP) as a "base" BSP from
which to work.
The example begins with the Fish River Island 2 BSP as the starting point
but ends by building a new 'atom-pc' BSP, which was based on the Fish River Island 2 BSP.
</para></listitem>
<listitem><para>Shell commands assume <filename>bash</filename></para></listitem>
<listitem><para>Example was developed on an Intel-based Core i7 platform running
Ubuntu 10.04 LTS released in April of 2010.</para></listitem>
</itemizedlist>
</para>
<section id='getting-local-yocto-project-files-and-bsp-files'>
<title>Getting Local Source Files and BSP Files</title>
<para>
You need to have the <link linkend='source-directory'>Source Directory</link>
available on your host system.
You can set up this directory through tarball extraction or by cloning the
<filename>poky</filename> Git repository.
The following paragraphs describe both methods.
For additional information, see the bulleted item
"<link linkend='local-yp-release'>Yocto Project Release</link>".
</para>
<para>
As mentioned, one way to set up the Source Directory is to use Git to clone the
<filename>poky</filename> repository.
These commands create a local copy of the Git repository.
By default, the top-level directory of the repository is named <filename>poky</filename>:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/poky
$ cd poky
</literallayout>
Alternatively, you can start with the downloaded Poky "&DISTRO_NAME;" tarball.
These commands unpack the tarball into a Source Directory structure.
By default, the top-level directory of the Source Directory is named
<filename>&YOCTO_POKY;</filename>:
<literallayout class='monospaced'>
$ tar xfj &YOCTO_POKY_TARBALL;
$ cd &YOCTO_POKY;
</literallayout>
<note><para>If you're using the tarball method, you can ignore all the following steps that
ask you to carry out Git operations.
You already have the results of those operations
in the form of the &DISTRO_NAME; release tarballs.
Consequently, there is nothing left to do other than extract those tarballs into the
proper locations.</para>
<para>Once you expand the released tarball, you have a snapshot of the Git repository
that represents a specific release.
Fundamentally, this is different than having a local copy of the Poky Git repository.
Given the tarball method, changes you make are building on top of a release.
With the Git repository method you have the ability to track development
and keep changes in revision control.
See the
"<link linkend='repositories-tags-and-branches'>Repositories, Tags, and Branches</link>" section
for more discussion around these differences.</para></note>
</para>
<para>
With the local <filename>poky</filename> Git repository set up,
you have all the development branches available to you from which you can work.
Next, you need to be sure that your local repository reflects the exact
release in which you are interested.
From inside the repository you can see the development branches that represent
areas of development that have diverged from the main (master) branch
at some point, such as a branch to track a maintenance release's development.
You can also see the tag names used to mark snapshots of stable releases or
points in the repository.
Use the following commands to list out the branches and the tags in the repository,
respectively.
<literallayout class='monospaced'>
$ git branch -a
$ git tag -l
</literallayout>
For this example, we are going to use the Yocto Project &DISTRO; Release, which is code
named "&DISTRO_NAME;".
To make sure we have a local area (branch in Git terms) on our machine that
reflects the &DISTRO; release, we can use the following commands:
<literallayout class='monospaced'>
$ cd ~/poky
$ git fetch --tags
$ git checkout -b &DISTRO_NAME;-&POKYVERSION; origin/&DISTRO_NAME;
Switched to a new branch '&DISTRO_NAME;-&POKYVERSION;'
</literallayout>
The <filename>git fetch --tags</filename> is somewhat redundant since you just set
up the repository and should have all the tags.
The <filename>fetch</filename> command makes sure all the tags are available in your
local repository.
The Git <filename>checkout</filename> command with the <filename>-b</filename> option
creates a local branch for you named <filename>&DISTRO_NAME;-&POKYVERSION;</filename>.
Your local branch begins in the same state as the Yocto Project &DISTRO; released tarball
marked with the <filename>&DISTRO_NAME;-&POKYVERSION;</filename> tag in the source repositories.
</para>
</section>
<section id='choosing-a-base-bsp-app'>
<title>Choosing a Base BSP</title>
<para>
For this example, the base BSP is the <trademark class='registered'>Intel</trademark>
<trademark class='trade'>Atom</trademark> Processor E660 with Intel Platform
Controller Hub EG20T Development Kit, which is otherwise referred to as "Fish River Island 2."
The BSP layer is <filename>meta-fri2</filename>.
The base BSP is simply the BSP
we will be using as a starting point, so don't worry if you don't actually have Fish River Island 2
hardware.
The remainder of the example transforms the base BSP into a BSP that should be
able to boot on generic atom-pc (netbook) hardware.
</para>
<para>
For information on how to choose a base BSP, see
"<link linkend='developing-a-board-support-package-bsp'>Developing a Board Support Package (BSP)</link>".
</para>
</section>
<section id='getting-your-base-bsp-app'>
<title>Getting Your Base BSP</title>
<para>
You need to have the base BSP layer on your development system.
Similar to the local <link linkend='source-directory'>Source Directory</link>,
you can get the BSP
layer in a couple of different ways:
download the BSP tarball and extract it, or set up a local Git repository that
has the BSP layers.
You should use the same method that you used to set up the Source Directory earlier.
See "<link linkend='getting-setup'>Getting Setup</link>" for information on how to get
the BSP files.
</para>
<para>
This example assumes the BSP layer will be located within a directory named
<filename>meta-intel</filename> contained within the <filename>poky</filename>
parent directory.
The following steps will automatically create the
<filename>meta-intel</filename> directory and the contained
<filename>meta-fri2</filename> starting point in both the Git and the tarball cases.
</para>
<para>
If you're using the Git method, you could do the following to create
the starting layout after you have made sure you are in the <filename>poky</filename>
directory created in the previous steps:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/meta-intel.git
$ cd meta-intel
</literallayout>
Alternatively, you can start with the downloaded Fish River Island 2 tarball.
You can download the &DISTRO_NAME; version of the BSP tarball from the
<ulink url='&YOCTO_HOME_URL;/download'>Downloads</ulink> page of the
Yocto Project website.
Here is the specific link for the tarball needed for this example:
<ulink url='&YOCTO_MACHINES_DL_URL;/fri2-noemgd/fri2-noemgd-&DISTRO_NAME;-&POKYVERSION;.tar.bz2'></ulink>.
Again, be sure that you are already in the <filename>poky</filename> directory
as described previously before installing the tarball:
<literallayout class='monospaced'>
$ tar xfj fri2-noemgd-&DISTRO_NAME;-&POKYVERSION;.tar.bz2
$ cd meta-intel
</literallayout>
</para>
<para>
The <filename>meta-intel</filename> directory contains all the metadata
that supports BSP creation.
If you're using the Git method, the following
step will switch to the &DISTRO_NAME; metadata.
If you're using the tarball method, you already have the correct metadata and can
skip to the next step.
Because <filename>meta-intel</filename> is its own Git repository, you will want
to be sure you are in the appropriate branch for your work.
For this example we are going to use the <filename>&DISTRO_NAME;</filename>
branch.
<literallayout class='monospaced'>
$ git checkout -b &DISTRO_NAME;-&POKYVERSION; origin/&DISTRO_NAME;
Branch &DISTRO_NAME;-&POKYVERSION; set up to track remote branch &DISTRO_NAME; from origin.
Switched to a new branch '&DISTRO_NAME;-&POKYVERSION;'
</literallayout>
</para>
</section>
<section id='making-a-copy-of-the-base bsp-to-create-your-new-bsp-layer-app'>
<title>Making a Copy of the Base BSP to Create Your New BSP Layer</title>
<para>
Now that you have set up the Source Directory and included the base BSP files, you need to
create a new layer for your BSP.
To create your BSP layer, you simply copy the <filename>meta-fri2</filename>
layer to a new layer.
</para>
<para>
For this example, the new layer will be named <filename>meta-mymachine</filename>.
The name should follow the BSP layer naming convention, which is
<filename>meta-&lt;name&gt;</filename>.
The following assumes your working directory is <filename>meta-intel</filename>
inside your Source Directory.
To start your new layer, just copy the new layer alongside the existing
BSP layers in the <filename>meta-intel</filename> directory:
<literallayout class='monospaced'>
$ cp -a meta-fri2/ meta-mymachine
</literallayout>
</para>
</section>
<section id='making-changes-to-your-bsp-app'>
<title>Making Changes to Your BSP</title>
<para>
Right now you have two identical BSP layers with different names:
<filename>meta-fri2</filename> and <filename>meta-mymachine</filename>.
You need to change your configurations so that they work for your new BSP and
your particular hardware.
The following sections look at each of these areas of the BSP.
</para>
<section id='changing-the-bsp-configuration'>
<title>Changing the BSP Configuration</title>
<para>
We will look first at the configurations, which are all done in the layers
<filename>conf</filename> directory.
</para>
<para>
First, since in this example the new BSP will not support EMGD, we will get rid of the
<filename>fri2.conf</filename> file and then rename the
<filename>fri2-noemgd.conf</filename> file to <filename>mymachine.conf</filename>.
Much of what we do in the configuration directory is designed to help the OpenEmbedded
build system work with the new layer and to be able to find and use the right software.
The following two commands result in a single machine configuration file named
<filename>mymachine.conf</filename>.
<literallayout class='monospaced'>
$ rm meta-mymachine/conf/machine/fri2.conf
$ mv meta-mymachine/conf/machine/fri2-noemgd.conf \
meta-mymachine/conf/machine/mymachine.conf
</literallayout>
</para>
<para>
Next, we need to make changes to the <filename>mymachine.conf</filename> itself.
The only changes we want to make for this example are to the comment lines.
Changing comments, of course, is never strictly necessary, but it's always good form to make
them reflect reality as much as possible.
Here, simply substitute the Fish River Island 2 name with an appropriate name for the BSP
(<filename>mymachine</filename> in this case) and change the description to
something that describes your hardware.
</para>
<para>
Note that inside the <filename>mymachine.conf</filename> is the
<filename>PREFERRED_VERSION_linux-yocto</filename> statement.
This statement identifies the kernel that the BSP is going to use.
In this case, the BSP is using <filename>linux-yocto</filename>, which is the
current Yocto Project kernel based on the Linux 3.4 release.
</para>
<para>
The next configuration file in the new BSP layer we need to edit is
<filename>meta-mymachine/conf/layer.conf</filename>.
This file identifies build information needed for the new layer.
You can see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-layer'>Layer Configuration File</ulink>" section
in The Board Support Packages (BSP) Development Guide for more information on this configuration file.
Basically, we are changing the existing statements to work with our BSP.
</para>
<para>
The file contains these statements that reference the Fish River Island 2 BSP:
<literallayout class='monospaced'>
BBFILE_COLLECTIONS += "fri2"
BBFILE_PATTERN_fri2 := "^${LAYERDIR}/"
BBFILE_PRIORITY_fri2 = "6"
LAYERDEPENDS_fri2 = "intel"
</literallayout>
</para>
<para>
Simply substitute the machine string name <filename>fri2</filename>
with the new machine name <filename>mymachine</filename> to get the following:
<literallayout class='monospaced'>
BBFILE_COLLECTIONS += "mymachine"
BBFILE_PATTERN_mymachine := "^${LAYERDIR}/"
BBFILE_PRIORITY_mymachine = "6"
LAYERDEPENDS_mymachine = "intel"
</literallayout>
</para>
</section>
<section id='changing-the-recipes-in-your-bsp'>
<title>Changing the Recipes in Your BSP</title>
<para>
Now we will take a look at the recipes in your new layer.
The standard BSP structure has areas for BSP, graphics, core, and kernel recipes.
When you create a BSP, you use these areas for appropriate recipes and append files.
Recipes take the form of <filename>.bb</filename> files, while append files take
the form of <filename>.bbappend</filename> files.
If you want to leverage the existing recipes the OpenEmbedded build system uses
but change those recipes, you can use <filename>.bbappend</filename> files.
All new recipes and append files for your layer must go in the layers
<filename>recipes-bsp</filename>, <filename>recipes-kernel</filename>,
<filename>recipes-core</filename>, and
<filename>recipes-graphics</filename> directories.
</para>
<section id='changing-recipes-bsp'>
<title>Changing&nbsp;&nbsp;<filename>recipes-bsp</filename></title>
<para>
First, let's look at <filename>recipes-bsp</filename>.
For this example we are not adding any new BSP recipes.
And, we only need to remove the formfactor we do not want and change the name of
the remaining one that doesn't support EMGD.
These commands take care of the <filename>recipes-bsp</filename> recipes:
<literallayout class='monospaced'>
$ rm -rf meta-mymachine/recipes-bsp/formfactor/formfactor/fri2
$ mv meta-mymachine/recipes-bsp/formfactor/formfactor/fri2-noemgd/ \
meta-mymachine/recipes-bsp/formfactor/formfactor/mymachine
</literallayout>
</para>
</section>
<section id='changing-recipes-graphics'>
<title>Changing&nbsp;&nbsp;<filename>recipes-graphics</filename></title>
<para>
Now let's look at <filename>recipes-graphics</filename>.
For this example we want to remove anything that supports EMGD and
be sure to rename remaining directories appropriately.
The following commands clean up the <filename>recipes-graphics</filename> directory:
<literallayout class='monospaced'>
$ rm -rf meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/fri2
$ mv meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/fri2-noemgd \
meta-mymachine/recipes-graphics/xorg-xserver/xserver-xf86-config/mymachine
</literallayout>
</para>
<para>
At this point the <filename>recipes-graphics</filename> directory just has files that
support Video Electronics Standards Association (VESA) graphics modes and not EMGD.
</para>
</section>
<section id='changing-recipes-kernel'>
<title>Changing&nbsp;&nbsp;<filename>recipes-kernel</filename></title>
<para>
Finally, let's look at <filename>recipes-kernel</filename> changes.
Recall that the BSP uses the <filename>linux-yocto</filename> kernel as determined
earlier in the <filename>mymachine.conf</filename>.
The recipe for that kernel is not located in the
BSP layer but rather in the Source Directory at
<filename>meta/recipes-kernel/linux</filename> and is
named <filename>linux-yocto_3.4.bb</filename>.
The <filename>SRCREV_machine</filename> and <filename>SRCREV_meta</filename>
statements point to the exact commits used by the Yocto Project development team
in their source repositories that identify the right kernel for our hardware.
In other words, the <filename>SRCREV</filename> values are simply Git commit
IDs that identify which commit on each
of the kernel branches (machine and meta) will be checked out and used to build
the kernel.
</para>
<para>
However, in the <filename>meta-mymachine</filename> layer in
<filename>recipes-kernel/linux</filename> resides a <filename>.bbappend</filename>
file named <filename>linux-yocto_3.4.bbappend</filename> that
appends the information to the recipe of the same name
that is found in <filename>meta/recipes-kernel/linux</filename>.
Thus, the <filename>SRCREV</filename> statements in our
<filename>mymachine</filename> append file override
the more general statements found in the more general recipe.
</para>
<para>
The <filename>SRCREV</filename> statements in the
<filename>mymachine</filename> append file currently identify
the kernel that supports the Fish River Island 2 BSP with and without EMGD support.
Here are the statements:
<note>The commit ID strings used in this manual might not match the actual commit
ID strings found in the <filename>linux-yocto_3.4.bbappend</filename> file.
For the example, this difference does not matter.</note>
<literallayout class='monospaced'>
SRCREV_machine_pn-linux-yocto_fri2 ?= \
"59c3ff750831338d05ab67d5efd7fc101c451aff"
#SRCREV_meta_pn-linux-yocto_fri2 ?= \
"c5bddf8ea379406ffec550528e17b777a0eba24b"
SRCREV_machine_pn-linux-yocto_fri2-noemgd ?= \
"59c3ff750831338d05ab67d5efd7fc101c451aff"
#SRCREV_meta_pn-linux-yocto_fir2-noemgd ?= \
"c5bddf8ea379406ffec550528e17b777a0eba24b"
</literallayout>
<note>The <filename>SRCREV_meta_pn-linux-yocto_fir2-noemgd</filename>
statements in the <filename>mymachine</filename> append file,
which originated from the Fish River Island 2 BSP, are
commented out.
The reason they are not used is because the commit IDs are identical to
those in the general <filename>linux-yocto_3.4.bbappend</filename> recipe,
which is found in <filename>meta/recipes-kernel/linux</filename>.
</note>
</para>
<para>
You will notice that there are two pairs of <filename>SRCREV</filename> statements.
The top pair identifies the kernel that supports
EMGD, which we dont care about in this example.
The bottom pair identifies the kernel that we will use:
<filename>linux-yocto</filename>.
At this point though, the unique commit strings all are still associated with
Fish River Island 2 and not <filename>meta-mymachine</filename>.
</para>
<para>
To fix this situation in <filename>linux-yocto_3.4.bbappend</filename>
for <filename>mymachine</filename>,
we delete the two <filename>SRCREV</filename> statements that support
EMGD (the top pair).
We also change the remaining pair to specify <filename>mymachine</filename>
and insert the commit identifiers to identify the kernel in which we
are interested, which will be based on the <filename>atom-pc-standard</filename>
kernel.
In this case, because we're working with the &DISTRO_NAME; branch of everything, we
need to use the <filename>SRCREV</filename> values for the atom-pc branch
that are associated with the &DISTRO_NAME; release.
</para>
<para>
To find the machine value, we need to find the <filename>SRCREV</filename>
value that &DISTRO_NAME; uses for the atom-pc branch, which we find in the
<filename>poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend</filename>
file.
The machine <filename>SRCREV</filename> we want is in the
<filename>SRCREV_machine_atom-pc</filename> variable.
</para>
<para>
The meta <filename>SRCREV</filename> isn't specified in this file, so if you
needed it, you would find it in the base kernel recipe in the
<filename>poky/meta/recipes-kernel/linux/linux-yocto_3.4.bb</filename>.
Recall that for this example the commit ID's for the <filename>SRCREV</filename>
meta statements are identical and do not have to be used in the
<filename>mymachine</filename> append file.
</para>
<para>
Here are the final <filename>SRCREV</filename> statements for the
<filename>mymachine</filename> append file:
<literallayout class='monospaced'>
SRCREV_machine_pn-linux-yocto_mymachine ?= \
"0985844fa6235422c67ef269952fa4e765f252f9"
#SRCREV_meta_pn-linux-yocto_mymachine ?= \
"c5bddf8ea379406ffec550528e17b777a0eba24b"
</literallayout>
</para>
<para>
In this example, we're using the <filename>SRCREV</filename> values we
found already captured in the &DISTRO_NAME; release because we're creating a BSP based on
&DISTRO_NAME;.
If, instead, we had based our BSP on the master branches, we would want to use
the most recent <filename>SRCREV</filename> values taken directly from the kernel's
repository.
We will not be doing that for this example.
However, if you do base a future BSP on master and
if you are familiar with Git repositories, you probably wont have trouble locating the
exact commit strings in the Yocto Project source repositories you need to change
the <filename>SRCREV</filename> statements.
You can find all the <filename>machine</filename> and <filename>meta</filename>
branch points (commits) for the <filename>linux-yocto-3.4</filename> kernel at
<ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/linux-yocto-3.4'></ulink>.
</para>
<para>
If you need a little more assistance after going to the link then do the following:
<orderedlist>
<listitem><para>Expand the list of branches by clicking <filename>[…]</filename></para></listitem>
<listitem><para>Click on the <filename>standard/default/common-pc/atom-pc</filename>
branch</para></listitem>
<listitem><para>Click on the commit column header to view the top commit</para></listitem>
<listitem><para>Copy the commit string for use in the
<filename>linux-yocto_3.4.bbappend</filename> file</para></listitem>
</orderedlist>
</para>
<para>
For the <filename>SRCREV</filename> statement that points to the <filename>meta</filename>
branch use the same procedure except expand the <filename>meta</filename>
branch in step 2 above.
</para>
<para>
Also in the <filename>linux-yocto_3.4.bbappend</filename> file are
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>,
<ulink url='&YOCTO_DOCS_REF_URL;#var-KMACHINE'><filename>KMACHINE</filename></ulink>,
and
<ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> statements.
Two sets of these exist: one set supports EMGD and one set does not.
Because we are not interested in supporting EMGD those three can be deleted.
The remaining three must be changed so that <filename>mymachine</filename> replaces
<filename>fri2-noemgd</filename> and <filename>fri2</filename>.
</para>
<para>
Because we are using the <filename>atom-pc</filename> branch for this new BSP, we can also find
the exact branch we need for the <filename>KMACHINE</filename>
and <filename>KBRANCH</filename> variables in our new BSP from the value
we find in the
<filename>poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend</filename>
file we looked at in a previous step.
In this case, the values we want are in the <filename>KMACHINE_atom-pc</filename> variable
and the <filename>KBRANCH_atom-pc</filename> variables in that file.
Here is the final <filename>linux-yocto_3.4.bbappend</filename> file after all
the edits:
<literallayout class='monospaced'>
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
COMPATIBLE_MACHINE_mymachine = "mymachine"
KMACHINE_mymachine = "atom-pc"
KBRANCH_mymachine = "standard/default/common-pc/atom-pc"
SRCREV_machine_pn-linux-yocto_mymachine ?= \
"f29531a41df15d74be5ad47d958e4117ca9e489e"
SRCREV_meta_pn-linux-yocto_mymachine ?= \
"b14a08f5c7b469a5077c10942f4e1aec171faa9d"
</literallayout>
</para>
</section>
</section>
<section id='bsp-recipe-change-summary'>
<title>BSP Recipe Change Summary</title>
<para>
In summary, the edits to the layers recipe files result in removal of any files and
statements that do not support your targeted hardware in addition to the inclusion
of any new recipes you might need.
In this example, it was simply a matter of ridding the new layer
<filename>meta-mymachine</filename> of any code that supported the EMGD features
and making sure we were identifying the kernel that supports our example, which
is the <filename>atom-pc-standard</filename> kernel.
We did not introduce any new recipes to the layer.
</para>
<para>
Finally, it is also important to update the layers <filename>README</filename>
file so that the information in it reflects your BSP.
</para>
</section>
</section>
<section id='preparing-for-the-build-app'>
<title>Preparing for the Build</title>
<para>
To get ready to build your image that uses the new layer you need to do the following:
<orderedlist>
<listitem><para>Get the environment ready for the build by sourcing the environment
script.
The environment script is in the top-level of the Source Directory.
The script has the string
<filename>init-build-env</filename> in the files name.
For this example, the following command gets the build environment ready:
<literallayout class='monospaced'>
$ source oe-init-build-env yocto-build
</literallayout>
When you source the script, a build directory is created in the current
working directory.
In our example we were in the <filename>poky</filename> directory.
Thus, entering the previous command created the <filename>yocto-build</filename> directory.
If you do not provide a name for the build directory it defaults to
<filename>build</filename>.
The <filename>yocto-build</filename> directory contains a
<filename>conf</filename> directory that has
two configuration files you will need to check: <filename>bblayers.conf</filename>
and <filename>local.conf</filename>.</para></listitem>
<listitem><para>Check and edit the resulting <filename>local.conf</filename> file.
This file minimally identifies the machine for which to build the image by
configuring the <filename>MACHINE</filename> variable.
For this example you must set the variable to mymachine as follows:
<literallayout class='monospaced'>
MACHINE ??= “mymachine”
</literallayout>
You should also be sure any other variables in which you are interested are set.
Some variables to consider are <filename>BB_NUMBER_THREADS</filename>
and <filename>PARALLEL_MAKE</filename>, both of which can greatly reduce your build time
if your development system supports multiple cores.
For development systems that support multiple cores, a good rule of thumb is to set
both the <filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>
variables to twice the number of cores your system supports.</para></listitem>
<listitem><para>Update the <filename>bblayers.conf</filename> file so that it includes
both the path to your new BSP layer and the path to the
<filename>meta-intel</filename> layer.
In this example, you need to include both these paths as part of the
<filename>BBLAYERS</filename> variable:
<literallayout class='monospaced'>
$HOME/poky/meta-intel
$HOME/poky/meta-intel/meta-mymachine
</literallayout></para></listitem>
</orderedlist>
</para>
<para>
The
<ulink url='&YOCTO_DOCS_REF_URL;#ref-variables-glos'>Variables Glossary</ulink> chapter in the
Yocto Project Reference Manual has more information on configuration variables.
</para>
</section>
<section id='building-the-image-app'>
<title>Building and Booting the Image</title>
<para>
To build the image for our <filename>meta-mymachine</filename> BSP enter the following command
from the same shell from which you ran the setup script.
You should run the <filename>bitbake</filename> command without any intervening shell commands.
For example, moving your working directory around could cause problems.
Here is the command for this example:
<literallayout class='monospaced'>
$ bitbake -k core-image-sato
</literallayout>
</para>
<para>
This command specifies an image that has Sato support and that can be run from a USB device or
from a CD without having to first install anything.
The build process takes significant time and includes thousands of tasks, which are reported
at the console.
If the build results in any type of error you should check for misspellings in the
files you changed or problems with your host development environment such as missing packages.
</para>
<para>
Finally, once you have an image, you can try booting it from a device
(e.g. a USB device).
To prepare a bootable USB device, insert a USB flash drive into your build system and
copy the <filename>.hddimg</filename> file, located in the
<filename>poky/build/tmp/deploy/images</filename>
directory after a successful build to the flash drive.
Assuming the USB flash drive takes device <filename>/dev/sdf</filename>,
use <filename>dd</filename> to copy the live image to it.
For example:
<literallayout class='monospaced'>
# dd if=core-image-sato-mymachine-20111101223904.hddimg of=/dev/sdf
# sync
# eject /dev/sdf
</literallayout>
You should now have a bootable USB flash device.
</para>
<para>
Insert the device
into a bootable USB socket on the target, and power it on.
The system should boot to the Sato graphical desktop.
<footnote><para>Because
this new image is not in any way tailored to the system you're
booting it on, which is assumed to be some sort of atom-pc (netbook) system for this
example, it might not be completely functional though it should at least boot to a text
prompt.
Specifically, it might fail to boot into graphics without some tweaking.
If this ends up being the case, a possible next step would be to replace the
<filename>mymachine.conf</filename>
contents with the contents of <filename>atom-pc.conf</filename> and replace
<filename>xorg.conf</filename> with <filename>atom-pc xorg.conf</filename>
in <filename>meta-yocto</filename> and see if it fares any better.
In any case, following the previous steps will give you a buildable image that
will probably boot on most systems.
Getting things working like you want
them to for your hardware will normally require some amount of experimentation with
configuration settings.</para></footnote>
</para>
<para>
For reference, the sato image produced by the previous steps for &DISTRO_NAME;
should look like the following in terms of size.
If your sato image is much different from this,
you probably made a mistake in one of the above steps:
<literallayout class='monospaced'>
260538368 2012-04-27 01:44 core-image-sato-mymachine-20120427025051.hddimg
</literallayout>
<note>The previous instructions are also present in the README that was copied
from meta-fri2, which should also be updated to reflect the specifics of your
new BSP.
That file and the <filename>README.hardware</filename> file in the top-level
<filename>poky</filename> directory
also provides some suggestions for things to try if booting fails and produces
strange error messages.</note>
</para>
</section>
</appendix>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -46,10 +46,10 @@
<title>Layers</title>
<para>
The source directory contains several layers right out of the box.
You can easily identify a layer in the source directory by its folder name.
The Source Directory contains several layers right out of the box.
You can easily identify a layer in the Source Directory by its folder name.
Folders that are layers begin with the string <filename>meta</filename>.
For example, when you set up the <link linkend='source-directory'>source directory</link>
For example, when you set up the <link linkend='source-directory'>Source Directory</link>
structure, you will see several layers: <filename>meta</filename>,
<filename>meta-hob</filename>, <filename>meta-skeleton</filename>,
<filename>meta-yocto</filename>, and <filename>meta-yocto-bsp</filename>.
@@ -173,15 +173,15 @@
deficiency in the include file in the layer to which it originally belongs.
If this is the case, you need to address that deficiency instead of overlaying
the include file.
For example, consider how Qt 4 database support plugins are configured.
The source directory does not have
For example, consider how Qt 4 database support plug-ins are configured.
The Source Directory does not have
MySQL or PostgreSQL, however OpenEmbedded's
layer <filename>meta-oe</filename> does.
Consequently, <filename>meta-oe</filename> uses <filename>.bbappend</filename>
files to modify the <filename>QT_SQL_DRIVER_FLAGS</filename> variable to enable
the appropriate plugins.
This variable was added to the <filename>qt4.inc</filename> include file in
the source directory specifically to allow the <filename>meta-oe</filename> layer
the Source Directory specifically to allow the <filename>meta-oe</filename> layer
to be able to control which plugins are built.</para></listitem>
</itemizedlist>
</para>
@@ -193,9 +193,9 @@
<filename>meta-&lt;layer_name&gt;</filename> format.</para></listitem>
<listitem><para>Clone the repository alongside other <filename>meta</filename>
directories in the
<link linkend='source-directory'>source directory</link>.</para></listitem>
<link linkend='source-directory'>Source Directory</link>.</para></listitem>
</itemizedlist>
Following these recommendations keeps your source directory and
Following these recommendations keeps your Source Directory and
its configuration entirely inside the Yocto Project's core base.
</para>
</section>
@@ -208,17 +208,20 @@
To enable your layer, simply add your layer's path to the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'>BBLAYERS</ulink></filename>
variable in your <filename>conf/bblayers.conf</filename> file, which is found in the
<link linkend='build-directory'>build directory</link>.
<link linkend='build-directory'>Build Directory</link>.
The following example shows how to enable a layer named <filename>meta-mylayer</filename>:
<literallayout class='monospaced'>
LCONF_VERSION = "1"
LCONF_VERSION = "6"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS = " \
BBLAYERS ?= " \
/path/to/poky/meta \
/path/to/poky/meta-yocto \
/path/to/poky/meta-yocto-bsp \
/path/to/poky/meta-mylayer \
"
"
</literallayout>
</para>
@@ -229,6 +232,14 @@
During the processing of each <filename>conf/layer.conf</filename> file, BitBake adds the
recipes, classes and configurations contained within the particular layer to the source
directory.
<note>
Removing the <filename>meta-yocto</filename> layer exposes a bug for the
current release of the Yocto Project.
If for some reason you do remove this layer from the
<filename>bblayers.conf</filename>, you must set the
<filename>LCONF_VERSION</filename> variable to "5".
See <ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=3176'>[YOCTO_#3176]</ulink>
for more information.</note>
</para>
</section>
@@ -272,7 +283,7 @@
<para>
As an example, consider the main formfactor recipe and a corresponding formfactor
append file both from the
<link linkend='source-directory'>source directory</link>.
<link linkend='source-directory'>Source Directory</link>.
Here is the main formfactor recipe, which is named <filename>formfactor_0.0.bb</filename> and
located in the meta layer at <filename>meta/recipes-bsp/formfactor</filename>:
<literallayout class='monospaced'>
@@ -304,7 +315,7 @@
<literallayout class='monospaced'>
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
PRINC = "1"
PRINC := "${@int(PRINC) + 2}"
</literallayout>
This example adds or overrides files in
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
@@ -327,12 +338,6 @@
paths in the final list.
</note>
</para>
<para>
For another example on how to use a <filename>.bbappend</filename> file, see the
"<link linkend='changing-recipes-kernel'>Changing <filename>recipes-kernel</filename></link>"
section.
</para>
</section>
<section id='prioritizing-your-layer'>
@@ -575,8 +580,8 @@
with specialized image <filename>.bb</filename> files.
You can also add more features by configuring the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGE_FEATURES'>EXTRA_IMAGE_FEATURES</ulink></filename>
variable in the <filename>local.conf</filename> file found in the source directory
located in the build directory.
variable in the <filename>local.conf</filename> file found in the Source Directory
located in the Build Directory.
</para>
<para>
@@ -1025,8 +1030,8 @@
<para>
For a complete example that shows how to add a new machine,
see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-bsp-appendix'>BSP Development Example</ulink>"
in Appendix A.
"<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'>Creating a New BSP Layer Using the yocto-bsp Script</ulink>"
in the Yocto Project Board Support Package (BSP) Developer's Guide.
</para>
<section id="platdev-newmachine-conffile">
@@ -1078,7 +1083,7 @@
You need to either create a new kernel recipe for this machine, or extend an
existing recipe.
You can find several kernel examples in the
source directory at <filename>meta/recipes-kernel/linux</filename>
Source Directory at <filename>meta/recipes-kernel/linux</filename>
that you can use as references.
</para>
@@ -1201,7 +1206,7 @@
extended to support multiple libraries.
Many standard recipes are already extended and support multiple libraries.
You can check in the <filename>meta/conf/multilib.conf</filename>
configuration file in the source directory to see how this is
configuration file in the Source Directory to see how this is
done using the
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBCLASSEXTEND'><filename>BBCLASSEXTEND</filename></ulink>
variable.
@@ -1235,7 +1240,7 @@
combination of multiple libraries you want to build.
You accomplish this through your <filename>local.conf</filename>
configuration file in the
<link linkend='build-directory'>build directory</link>.
<link linkend='build-directory'>Build Directory</link>.
An example configuration would be as follows:
<literallayout class='monospaced'>
MACHINE = "qemux86-64"
@@ -1280,7 +1285,7 @@
<listitem><para>A unique architecture is defined for the Multilib packages,
along with creating a unique deploy folder under
<filename>tmp/deploy/rpm</filename> in the
<link linkend='build-directory'>build directory</link>.
<link linkend='build-directory'>Build Directory</link>.
For example, consider <filename>lib32</filename> in a
<filename>qemux86-64</filename> image.
The possible architectures in the system are "all", "qemux86_64",
@@ -1347,6 +1352,8 @@
<para>
The easiest way to define kernel configurations is to set them through the
<filename>menuconfig</filename> tool.
This tool provides an interactive method with which
to set kernel configurations.
For general information on <filename>menuconfig</filename>, see
<ulink url='http://en.wikipedia.org/wiki/Menuconfig'></ulink>.
</para>
@@ -1354,25 +1361,97 @@
<para>
To use the <filename>menuconfig</filename> tool in the Yocto Project development
environment, you must build the tool using BitBake.
Thus, the environment must be set up using the <filename>&OE_INIT_FILE;</filename>
script found in the
<link linkend='build-directory'>Build Directory</link>.
The following commands build and invoke <filename>menuconfig</filename> assuming the
source directory top-level folder is <filename>~/poky</filename>:
Source Directory top-level folder is <filename>~/poky</filename>:
<literallayout class='monospaced'>
$ cd ~/poky
$ source oe-init-build-env
$ bitbake linux-yocto -c menuconfig
</literallayout>
Once <filename>menuconfig</filename> comes up, its standard interface allows you to
examine and configure all the kernel configuration parameters.
Once you have made your changes, simply exit the tool and save your changes to
interactively examine and configure all the kernel configuration parameters.
After making your changes, simply exit the tool and save your changes to
create an updated version of the <filename>.config</filename> configuration file.
</para>
<para>
For an example that shows how to change a specific kernel option
using <filename>menuconfig</filename>, see the
"<link linkend='changing-the-config-smp-configuration-using-menuconfig'>Changing
the <filename>CONFIG_SMP</filename> Configuration Using <filename>menuconfig</filename></link>"
section.
Consider an example that configures the <filename>linux-yocto-3.4</filename>
kernel.
The OpenEmbedded build system recognizes this kernel as
<filename>linux-yocto</filename>.
Thus, the following commands from the shell in which you previously sourced the
environment initialization script cleans the shared state cache and the
<ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink>
directory and then builds and launches <filename>menuconfig</filename>:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c menuconfig
</literallayout>
</para>
<para>
Once <filename>menuconfig</filename> launches, you use the interface
to navigate through the selections to find the configuration settings in
which you are interested.
For example, consider the <filename>CONFIG_SMP</filename> configuration setting.
You can find it at <filename>Processor Type and Features</filename> under
the configuration selection <filename>Symmetric Multi-processing Support</filename>.
After highlighting the selection, you can use the arrow keys to select or deselect
the setting.
When you are finished with all your selections, exit out and save them.
</para>
<para>
Saving the selections updates the <filename>.config</filename> configuration file.
This is the file that the OpenEmbedded build system uses to configure the
kernel during the build.
You can find and examine this file in the Build Directory in
<filename>tmp/work/</filename>.
The actual <filename>.config</filename> is located in the area where the
specific kernel is built.
For example, if you were building a Linux Yocto kernel based on the
Linux 3.4 kernel and you were building a QEMU image targeted for
<filename>x86</filename> architecture, the
<filename>.config</filename> file would be located here:
<literallayout class='monospaced'>
~/poky/build/tmp/work/qemux86-poky-linux/linux-yocto-3.4.11+git1+84f...
...656ed30-r1/linux-qemux86-standard-build
</literallayout>
<note>
The previous example directory is artificially split and many of the characters
in the actual filename are omitted in order to make it more readable.
Also, depending on the kernel you are using, the exact pathname
for <filename>linux-yocto-3.4...</filename> might differ.
</note>
</para>
<para>
Within the <filename>.config</filename> file, you can see the kernel settings.
For example, the following entry shows that symmetric multi-processor support
is not set:
<literallayout class='monospaced'>
# CONFIG_SMP is not set
</literallayout>
</para>
<para>
A good method to isolate changed configurations is to use a combination of the
<filename>menuconfig</filename> tool and simple shell commands.
Before changing configurations with <filename>menuconfig</filename>, copy the
existing <filename>.config</filename> and rename it to something else,
use <filename>menuconfig</filename> to make
as many changes an you want and save them, then compare the renamed configuration
file against the newly created file.
You can use the resulting differences as your base to create configuration fragments
to permanently save in your kernel layer.
<note>
Be sure to make a copy of the <filename>.config</filename> and don't just
rename it.
The build system needs an existing <filename>.config</filename>
from which to work.
</note>
</para>
</section>
@@ -1384,7 +1463,7 @@
placed where the OpenEmbedded build system can find and apply them.
Syntactically, the configuration statement is identical to what would appear
in the <filename>.config</filename> file, which is in the
<link linkend='build-directory'>build directory</link> in
<link linkend='build-directory'>Build Directory</link> in
<filename>tmp/work/&lt;arch&gt;-poky-linux/linux-yocto-&lt;release-specific-string&gt;/linux-&lt;arch&gt;-&lt;build-type&gt;</filename>.
</para>
@@ -1511,6 +1590,306 @@
</section>
</section>
<section id="patching-the-kernel">
<title>Patching the Kernel</title>
<para>
Patching the kernel involves changing or adding configurations to an existing kernel,
changing or adding recipes to the kernel that are needed to support specific hardware features,
or even altering the source code itself.
<note>
You can use the <filename>yocto-kernel</filename> script
found in the <link linkend='source-directory'>Source Directory</link>
under <filename>scripts</filename> to manage kernel patches and configuration.
See the "<ulink url='&YOCTO_DOCS_BSP_URL;#managing-kernel-patches-and-config-items-with-yocto-kernel'>Managing kernel Patches and Config Items with yocto-kernel</ulink>"
section in the Yocto Project Board Support Packages (BSP) Developer's Guide for
more information.</note>
</para>
<para>
This example creates a simple patch by adding some QEMU emulator console
output at boot time through <filename>printk</filename> statements in the kernel's
<filename>calibrate.c</filename> source code file.
Applying the patch and booting the modified image causes the added
messages to appear on the emulator's console.
</para>
<para>
The example assumes a clean build exists for the <filename>qemux86</filename>
machine in a Source Directory named <filename>poky</filename>.
Furthermore, the <link linkend='build-directory'>Build Directory</link> is
<filename>build</filename> and is located in <filename>poky</filename> and
the kernel is based on the Linux 3.4 kernel.
For general information on how to configure the most efficient build, see the
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>" section
in the Yocto Project Quick Start.
</para>
<section id='create-a-layer-for-your-changes'>
<title>Create a Layer for your Changes</title>
<para>
The first step is to create a layer so you can isolate your changes:
<literallayout class='monospaced'>
$cd ~/poky
$mkdir meta-mylayer
</literallayout>
Creating a directory that follows the Yocto Project layer naming
conventions sets up the layer for your changes.
The layer is where you place your configuration files, append
files, and patch files.
To learn more about creating a layer and filling it with the
files you need, see the "<link linkend='understanding-and-creating-layers'>Understanding
and Creating Layers</link>" section.
</para>
</section>
<section id='finding-the-kernel-source-code'>
<title>Finding the Kernel Source Code</title>
<para>
Each time you build a kernel image, the kernel source code is fetched
and unpacked into the following directory:
<literallayout class='monospaced'>
${S}/linux
</literallayout>
See the "<link linkend='finding-the-temporary-source-code'>Finding the Temporary Source Code</link>"
section and the
<ulink url='&YOCTO_DOCS_REF_URL;#var-S'><filename>S</filename></ulink> variable
for more information about where source is kept during a build.
</para>
<para>
For this example, we are going to patch the
<filename>init/calibrate.c</filename> file
by adding some simple console <filename>printk</filename> statements that we can
see when we boot the image using QEMU.
</para>
</section>
<section id='creating-the-patch'>
<title>Creating the Patch</title>
<para>
Two methods exist by which you can create the patch:
<link linkend='using-a-git-workflow'>Git workflow</link> and
<link linkend='using-a-quilt-workflow'>Quilt workflow</link>.
For kernel patches, the Git workflow is more appropriate.
This section assumes the Git workflow and shows the steps specific to
this example.
<orderedlist>
<listitem><para><emphasis>Change the working directory</emphasis>:
Change to where the kernel source code is before making
your edits to the <filename>calibrate.c</filename> file:
<literallayout class='monospaced'>
$ cd ~/poky/build/tmp/work/qemux86-poky-linux/linux-yocto-${PV}-${PR}/linux
</literallayout>
Because you are working in an established Git repository,
you must be in this directory in order to commit your changes
and create the patch file.
<note>The <ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink> and
<ulink url='&YOCTO_DOCS_REF_URL;#var-PR'><filename>PR</filename></ulink> variables
represent the version and revision for the
<filename>linux-yocto</filename> recipe.
The <filename>PV</filename> variable includes the Git meta and machine
hashes, which make the directory name longer than you might
expect.
</note></para></listitem>
<listitem><para><emphasis>Edit the source file</emphasis>:
Edit the <filename>init/calibrate.c</filename> file to have the
following changes:
<literallayout class='monospaced'>
void __cpuinit calibrate_delay(void)
{
unsigned long lpj;
static bool printed;
int this_cpu = smp_processor_id();
printk("*************************************\n");
printk("* *\n");
printk("* HELLO YOCTO KERNEL *\n");
printk("* *\n");
printk("*************************************\n");
if (per_cpu(cpu_loops_per_jiffy, this_cpu)) {
.
.
.
</literallayout></para></listitem>
<listitem><para><emphasis>Stage and commit your changes</emphasis>:
These Git commands list out the changed file, stage it, and then
commit the file:
<literallayout class='monospaced'>
$ git status
$ git add init/calibrate.c
$ git commit -m "calibrate: Add printk example"
</literallayout></para></listitem>
<listitem><para><emphasis>Generate the patch file</emphasis>:
This Git command creates the a patch file named
<filename>0001-calibrate-Add-printk-example.patch</filename>
in the current directory.
<literallayout class='monospaced'>
$ git format-patch -1
</literallayout>
</para></listitem>
</orderedlist>
</para>
</section>
<section id='get-your-layer-setup-for-the-build'>
<title>Get Your Layer Setup for the Build</title>
<para>These steps get your layer set up for the build:
<orderedlist>
<listitem><para><emphasis>Create additional structure</emphasis>:
Create the additional layer structure:
<literallayout class='monospaced'>
$ cd ~/poky/meta-mylayer
$ mkdir conf
$ mkdir recipes-kernel
$ mkdir recipes-kernel/linux
$ mkdir recipes-kernel/linux/linux-yocto
</literallayout>
The <filename>conf</filename> directory holds your configuration files, while the
<filename>recipes-kernel</filename> directory holds your append file and
your patch file.</para></listitem>
<listitem><para><emphasis>Create the layer configuration file</emphasis>:
Move to the <filename>meta-mylayer/conf</filename> directory and create
the <filename>layer.conf</filename> file as follows:
<literallayout class='monospaced'>
# We have a conf and classes directory, add to BBPATH
BBPATH := "${LAYERDIR}:${BBPATH}"
# We have a packages directory, add to BBFILES
BBFILES := "${BBFILES} ${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "mylayer"
BBFILE_PATTERN_mylayer := "^${LAYERDIR}/"
BBFILE_PRIORITY_mylayer = "5"
</literallayout>
Notice <filename>mylayer</filename> as part of the last three
statements.</para></listitem>
<listitem><para><emphasis>Create the kernel recipe append file</emphasis>:
Move to the <filename>meta-mylayer/recipes-kernel/linux</filename> directory and create
the <filename>linux-yocto_3.4.bbappend</filename> file as follows:
<literallayout class='monospaced'>
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://0001-calibrate-Add-printk-example.patch"
PRINC := "${@int(PRINC) + 1}"
</literallayout>
The <filename>FILESEXTRAPATHS</filename> and <filename>SRC_URI</filename>
statements enable the OpenEmbedded build system to find the patch file.
</para></listitem>
<listitem><para><emphasis>Put the patch file in your layer</emphasis>:
Move the <filename>0001-calibrate-Add-printk-example.patch</filename> file to
the <filename>meta-mylayer/recipes-kernel/linux/linux-yocto</filename>
directory.</para></listitem>
</orderedlist>
</para>
</section>
<section id='set-up-for-the-build'>
<title>Set Up for the Build</title>
<para>
Do the following to make sure the build parameters are set up for the example.
Once you set up these build parameters, they do not have to change unless you
change the target architecture of the machine you are building:
<itemizedlist>
<listitem><para><emphasis>Build for the Correct Target Architecture:</emphasis> Your
selected <ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
definition within the <filename>local.conf</filename> file in the Build Directory
specifies the target architecture used when building the Linux kernel.
By default, <filename>MACHINE</filename> is set to
<filename>qemux86</filename>, which specifies a 32-bit
<trademark class='registered'>Intel</trademark> Architecture
target machine suitable for the QEMU emulator.</para></listitem>
<listitem><para><emphasis>Identify Your <filename>meta-mylayer</filename>
Layer:</emphasis> The <filename>BBLAYERS</filename> variable in the
<filename>bblayers.conf</filename> file found in the
<filename>poky/build/conf</filename> directory needs to have the path to your local
<filename>meta-mylayer</filename> layer.
By default, the <filename>BBLAYERS</filename> variable contains paths to
<filename>meta</filename>, <filename>meta-yocto</filename>, and
<filename>meta-yocto-bsp</filename> in the
<filename>poky</filename> Git repository.
Add the path to your <filename>meta-mylayer</filename> location.
Be sure to substitute your user information in the statement:
<literallayout class='monospaced'>
BBLAYERS = " \
/home/&lt;user&gt;/poky/meta \
/home/&lt;user&gt;/poky/meta-yocto \
/home/&lt;user&gt;/poky/meta-yocto-bsp \
/home/&lt;user&gt;/poky/meta-mylayer \
"
</literallayout></para></listitem>
</itemizedlist>
</para>
</section>
<section id='build-and-booting-the-modified-qemu-kernel-image'>
<title>Build and Booting the Modified QEMU Kernel Image</title>
<para>
The following steps build and boot your modified kernel image:
<orderedlist>
<listitem><para><emphasis>Be sure your build environment is initialized</emphasis>:
Your environment should be set up since you previously sourced
the <filename>&OE_INIT_FILE;</filename> script.
If it is not, source the script again from <filename>poky</filename>.
<literallayout class='monospaced'>
$ cd ~/poky
$ source &OE_INIT_FILE;
</literallayout>
</para></listitem>
<listitem><para><emphasis>Clean up</emphasis>:
Be sure to clean the shared state out by running the
<filename>cleansstate</filename> BitBake task as follows from your Build Directory:
<literallayout class='monospaced'>
$ bitbake -c cleansstate linux-yocto
</literallayout></para>
<para><note>Never remove any files by hand from the <filename>tmp/deploy</filename>
directory inside the Build Directory.
Always use the various BitBake clean tasks to clear out previous
build artifacts.
</note></para></listitem>
<listitem><para><emphasis>Build the image</emphasis>:
Next, build the kernel image using this command:
<literallayout class='monospaced'>
$ bitbake -k linux-yocto
</literallayout></para></listitem>
</orderedlist>
</para>
</section>
<section id='verify-your-changes'>
<title>Verify Your Changes</title>
<para>
These steps boot the image and allow you to see the changes
<orderedlist>
<listitem><para><emphasis>Boot the image</emphasis>:
Boot the modified image in the QEMU emulator
using this command:
<literallayout class='monospaced'>
$ runqemu qemux86
</literallayout></para></listitem>
<listitem><para><emphasis>Verify the changes</emphasis>:
Log into the machine using <filename>root</filename> with no password and then
use the following shell command to scroll through the console's boot output.
<literallayout class='monospaced'>
# dmesg | less
</literallayout>
You should see the results of your <filename>printk</filename> statements
as part of the output.</para></listitem>
</orderedlist>
</para>
</section>
</section>
<section id="usingpoky-changes-updatingimages">
<title>Updating Existing Images</title>
@@ -1634,7 +2013,7 @@
$ bitbake world -f -c distro_check
</literallayout>
The results are stored in the <filename>build/tmp/log/distro_check-${DATETIME}.results</filename>
file found in the source directory.
file found in the Source Directory.
</para>
</section>
@@ -1643,14 +2022,14 @@
<para>
By default, the OpenEmbedded build system does its work from within the
<link linkend='build-directory'>build directory</link>.
<link linkend='build-directory'>Build Directory</link>.
The build process involves fetching the source files, unpacking them, and then patching them
if necessary before the build takes place.
</para>
<para>
Situations exist where you might want to build software from source files that are external to
and thus outside of the <link linkend='source-directory'>source directory</link>.
and thus outside of the <link linkend='source-directory'>Source Directory</link>.
For example, suppose you have a project that includes a new BSP with a heavily customized
kernel, a very minimal image, and some new user-space recipes.
And, you want to minimize exposing the build system to the
@@ -1679,17 +2058,17 @@
<para>
It is important to know that the <filename>externalsrc.bbclass</filename> assumes that the
source directory <filename>S</filename> and the build directory
source directory <filename>S</filename> and the Build Directory
<ulink url='&YOCTO_DOCS_REF_URL;#var-B'><filename>B</filename></ulink>
are different even though by default these directories are the same.
This assumption is important because it supports building different variants of the recipe
by using the
<ulink url='&YOCTO_DOCS_REF_URL;#var-BBCLASSEXTEND'><filename>BBCLASSEXTEND</filename></ulink>
variable.
You could allow the build directory to be the same as the source directory but you would
You could allow the Build Directory to be the same as the source directory but you would
not be able to build more than one variant of the recipe.
Consequently, if you are building multiple variants of the recipe, you need to establish a
build directory that is different than the source directory.
Build Directory that is different than the source directory.
</para>
</section>
@@ -1735,7 +2114,7 @@
<para>
To enable this behavior, simply add the following to the <filename>local.conf</filename>
configuration file found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>:
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>:
<literallayout class='monospaced'>
SRCREV_pn-&lt;PN&gt; = "${AUTOREV}"
</literallayout>
@@ -2166,7 +2545,7 @@
</para>
<para>
Downloaded archives reside in the build directory in
Downloaded archives reside in the Build Directory in
<filename>/tmp</filename> and are cleared up when they are no longer in use.
</para>
@@ -2228,6 +2607,232 @@
</section>
</section>
</section>
<section id='maintaining-open-source-license-compliance-during-your-products-lifecycle'>
<title>Maintaining Open Source License Compliance During Your Product's Lifecycle</title>
<para>
One of the concerns for a development organization using open source
software is how to maintain compliance with various open source
licensing during the lifecycle of the product.
While this section does not provide legal advice or
comprehensively cover all scenarios, it does
present methods that you can use to
assist you in meeting the compliance requirements during a software
release.
</para>
<para>
With hundreds of different open source licenses that the Yocto
Project tracks, it is difficult to know the requirements of each
and every license.
However, we can begin to cover the requirements of the major FLOSS licenses, by
assuming that there are three main areas of concern:
<itemizedlist>
<listitem><para>Source code must be provided.</para></listitem>
<listitem><para>License text for the software must be
provided.</para></listitem>
<listitem><para>Compilation scripts and modifications to the
source code must be provided.
</para></listitem>
</itemizedlist>
There are other requirements beyond the scope of these
three and the methods described in this section
(e.g. the mechanism through which source code is distributed).
As different organizations have different methods of complying with
open source licensing, this section is not meant to imply that
there is only one single way to meet your compliance obligations,
but rather to describe one method of achieving compliance.
</para>
<para>
The remainder of this section describes methods supported to meet the
previously mentioned three requirements.
Once you take steps to meet these requirements,
and prior to releasing images, sources, and the build system,
you should audit all artifacts to ensure completeness.
The Yocto Project generates a license manifest during
image creation that is located
in <filename>${DEPLOY_DIR}/licenses/&lt;image_name-datestamp&gt;</filename>
to assist with any audits.
</para>
<section id='providing-the-source-code'>
<title>Providing the Source Code</title>
<para>
Compliance activities should begin before you generate the
final image.
The first thing you should look at is the requirement that
tops the list for most compliance groups - providing
the source.
The Yocto Project has a few ways of meeting this
requirement.
</para>
<para>
One of the easiest ways to meet this requirement is
to provide the entire
<ulink url='&YOCTO_DOCS_REF_URL;#var-DL_DIR'><filename>DL_DIR</filename></ulink>
used by the build.
This method, however, has a few issues.
The most obvious is the size of the directory since it includes
all sources used in the build and not just the source used in
the released image.
It will include toolchain source, and other artifacts which
you would not generally release.
But, the more serious issue for most companies is accidental
release of proprietary software.
The Yocto Project provides an archiver class to help avoid
some of these concerns.
</para>
<para>
Before you employ <filename>DL_DIR</filename> or the
archiver class, you need to decide how you choose to
provide source.
The source archiver class can generate tarballs and SRPMs
and can create them with various levels of compliance in mind.
One way of doing this (but certainly not the only way) is to
release just the original source as a tarball.
You can do this by adding the following to the
<filename>local.conf</filename> file found in the
<link linkend='build-directory'>Build Directory</link>:
<literallayout class='monospaced'>
ARCHIVER_MODE ?= "original"
ARCHIVER_CLASS = "${@'archive-${ARCHIVER_MODE}-source' if
ARCHIVER_MODE != 'none' else ''}"
INHERIT += "${ARCHIVER_CLASS}"
SOURCE_ARCHIVE_PACKAGE_TYPE = "tar"
</literallayout>
During the creation of your image, all GPL
or other copyleft licensed source
is placed within subdirectories of
<filename>DEPLOY_DIR/sources</filename> based on the
<ulink url='&YOCTO_DOCS_REF_URL;#var-LICENSE'><filename>LICENSE</filename></ulink>
for each recipe.
Releasing the entire directory enables you to comply with
requirements concerning providing the unmodified source.
It is important to note that the size of the directory can
get large.
</para>
<para>
A way to help mitigate the size issue is to only release
tarballs for licenses that require the release of
source.
Let's assume you are only concerned with GPL code as
identified with the following:
<literallayout class='monospaced'>
$ cd poky/build/tmp/deploy/sources
$ mkdir ~/gpl_source_release
$ for x in `ls|grep GPL`; do cp -R $x/* ~/gpl_source_release; done
</literallayout>
At this point, you could create a tarball from the
<filename>gpl_source_release</filename> directory and
provide that to the end user.
This method would be a step toward achieving compliance
with section 3a of GPLv2 and with section 6 of GPLv3.
</para>
</section>
<section id='providing-license-text'>
<title>Providing License Text</title>
<para>
One requirement that is often overlooked is inclusion
of license text.
This requirement also needs to be dealt with prior to
generating the final image.
Some licenses require the license text to accompany
the binary.
You can achieve this by adding the following to your
<filename>local.conf</filename> file:
<literallayout class='monospaced'>
COPY_LIC_MANIFEST = "1"
COPY_LIC_DIRS = "1"
</literallayout>
Adding these statements to the configuration file ensures
that the licenses collected during package generation
are included on your image.
As the source archiver has already archived the original
unmodified source which would contain the license files,
you would have already met the requirements for inclusion
of the license information with source as defined by the GPL
and other open source licenses.
</para>
</section>
<section id='providing-compilation-scripts-and-source-code-modifications'>
<title>Providing Compilation Scripts and Source Code Modifications</title>
<para>
At this point, we have addressed all we need to address
prior to generating the image.
The next two requirements are addressed during the final
packaging of the release.
</para>
<para>
By releasing the version of the OpenEmbedded build system
and the layers used during the build, you will be providing both
compilation scripts and the source code modifications in one
step.
</para>
<para>
If the deployment team has a
<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-layers'>BSP layer</ulink>
and a distro layer, and those those layers are used to patch,
compile, package, or modify (in any way) any open source
software included in your released images, you
may be required to to release those layers under section 3 of
GPLv2 or section 1 of GPLv3.
One way of doing that is with a clean
checkout of the version of the Yocto Project and layers used
during your build.
Here is an example:
<literallayout class='monospaced'>
# We built using the &DISTRO_NAME; branch of the poky repo
$ git clone -b &DISTRO_NAME; git://git.yoctoproject.org/poky
$ cd poky
# We built using the release_branch for our layers
$ git clone -b release_branch git://git.mycompany.com/meta-my-bsp-layer
$ git clone -b release_branch git://git.mycompany.com/meta-my-software-layer
# clean up the .git repos
$ find . -name ".git" -type d -exec rm -rf {} \;
</literallayout>
One thing a development organization might want to consider
for end-user convenience is to modify
<filename>meta-yocto/conf/bblayers.conf.sample</filename> to
ensure that when the end user utilizes the released build
system to build an image, the development organization's
layers are included in the <filename>bblayers.conf</filename>
file automatically:
<literallayout class='monospaced'>
# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "6"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS ?= " \
##COREBASE##/meta \
##COREBASE##/meta-yocto \
##COREBASE##/meta-yocto-bsp \
##COREBASE##/meta-my-bsp-layer \
##COREBASE##/meta-my-software-layer \
"
</literallayout>
Creating and providing an archive of the metadata layers
(recipes, configuration files, and so forth)
enables you to meet your
requirements to include the scripts to control compilation
as well as any modifications to the original source.
</para>
</section>
</section>
</chapter>
<!--

View File

@@ -23,9 +23,9 @@
</para>
<para>
The Yocto Project Development Manual, however, does provide detailed examples on how to create a
Board Support Package (BSP), change the kernel source code, and reconfigure the kernel.
You can find this information in the appendices of the manual.
The Yocto Project Development Manual, however, does provide detailed examples
on how to change the kernel source code, reconfigure the kernel, and develop
an application using the popular <trademark class='trade'>Eclipse</trademark> IDE.
</para>
</section>
@@ -44,7 +44,7 @@
<listitem><para>Development case overviews for both system development and user-space
applications.</para></listitem>
<listitem><para>An overview and understanding of the emulation environment used with
the Yocto Project (QEMU).</para></listitem>
the Yocto Project - the Quick EMUlator (QEMU).</para></listitem>
<listitem><para>An understanding of basic kernel architecture and concepts.</para></listitem>
<listitem><para>Many references to other sources of related information.</para></listitem>
</itemizedlist>

View File

@@ -12,6 +12,13 @@
or even altering the source code itself.
This appendix presents simple examples that modify the kernel source code,
change the kernel configuration, and add a kernel source recipe.
<note>
You can use the <filename>yocto-kernel</filename> script
found in the <link linkend='source-directory'>Source Directory</link>
under <filename>scripts</filename> to manage kernel patches and configuration.
See the "<ulink url='&YOCTO_DOCS_BSP_URL;#managing-kernel-patches-and-config-items-with-yocto-kernel'>Managing kernel Patches and Config Items with yocto-kernel</ulink>"
section in the Yocto Project Board Support Packages (BSP) Developer's Guide for
more information.</note>
</para>
<section id='modifying-the-kernel-source-code'>
@@ -34,11 +41,11 @@
Briefly, you need the following:
<itemizedlist>
<listitem><para>A local
<link linkend='source-directory'>source directory</link> for the
<link linkend='source-directory'>Source Directory</link> for the
poky Git repository</para></listitem>
<listitem><para>Local copies of the
<link linkend='poky-extras-repo'><filename>poky-extras</filename></link>
Git repository placed within the source directory.</para></listitem>
Git repository placed within the Source Directory.</para></listitem>
<listitem><para>A bare clone of the
<link linkend='local-kernel-files'>Yocto Project Kernel</link> upstream Git
repository to which you want to push your modifications.
@@ -59,7 +66,7 @@
</para>
<para>
<imagedata fileref="figures/kernel-example-repos-denzil.png" width="7in" depth="5in"
<imagedata fileref="figures/kernel-example-repos-generic.png" width="7in" depth="5in"
align="center" scale="100" />
</para>
@@ -69,16 +76,18 @@
<listitem><para><emphasis>Local Source Directory:</emphasis>
This area contains all the metadata that supports building images
using the OpenEmbedded build system.
In this example, the source directory also
contains the build directory, which contains the configuration directory
In this example, the
<link linkend='source-directory'>Source Directory</link> also
contains the
<link linkend='build-directory'>Build Directory</link>,
which contains the configuration directory
that lets you control the build.
Also in this example, the source directory contains local copies of the
Also in this example, the Source Directory contains local copies of the
<filename>poky-extras</filename> Git repository.</para>
<para>See the bulleted item
"<link linkend='local-yp-release'>Yocto Project Release</link>"
for information on how to get these files on your local system.</para></listitem>
<listitem><para><emphasis>Local copies of the<filename>poky-extras</filename>
Git Repository:</emphasis>
<listitem><para><emphasis>Local copies of the&nbsp;<filename>poky-extras</filename>&nbsp;Git Repository:</emphasis>
This area contains the <filename>meta-kernel-dev</filename> layer,
which is where you make changes that append the kernel build recipes.
You edit <filename>.bbappend</filename> files to locate your
@@ -125,17 +134,19 @@
<title>Setting Up the Local Source Directory</title>
<para>
You can set up the source directory through tarball extraction or by
You can set up the
<link linkend='source-directory'>Source Directory</link>
through tarball extraction or by
cloning the <filename>poky</filename> Git repository.
This example uses <filename>poky</filename> as the root directory of the
local source directory.
local Source Directory.
See the bulleted item
"<link linkend='local-yp-release'>Yocto Project Release</link>"
for information on how to get these files.
</para>
<para>
Once you have source directory set up,
Once you have Source Directory set up,
you have many development branches from which you can work.
From inside the local repository you can see the branch names and the tag names used
in the upstream Git repository by using either of the following commands:
@@ -161,7 +172,7 @@
<para>
This example creates a local copy of the <filename>poky-extras</filename> Git
repository inside the <filename>poky</filename> source directory.
repository inside the <filename>poky</filename> Source Directory.
See the bulleted item "<link linkend='poky-extras-repo'>The
<filename>poky-extras</filename> Git Repository</link>"
for information on how to set up a local copy of the
@@ -172,11 +183,12 @@
Because this example uses the Yocto Project &DISTRO; Release code
named "&DISTRO_NAME;", which maps to the <filename>&DISTRO_NAME;</filename>
branch in the repository, you need to be sure you are using that
branch for <filename>poky-extra</filename>.
branch for <filename>poky-extras</filename>.
The following commands create and checkout the local
branch you are using for the <filename>&DISTRO_NAME;</filename>
branch:
<literallayout class='monospaced'>
$ cd ~/poky/poky-extras
$ git checkout -b &DISTRO_NAME; origin/&DISTRO_NAME;
Branch &DISTRO_NAME; set up to track remote branch &DISTRO_NAME; from origin.
Switched to a new branch '&DISTRO_NAME;'
@@ -188,7 +200,7 @@
<title>Setting Up the Bare Clone and its Copy</title>
<para>
This example modifies the <filename>linux-yocto-3.2</filename> kernel.
This example modifies the <filename>linux-yocto-3.4</filename> kernel.
Thus, you need to create a bare clone of that kernel and then make a copy of the
bare clone.
See the bulleted item
@@ -200,17 +212,16 @@
The bare clone exists for the kernel build tools and simply as the receiving end
of <filename>git push</filename>
commands after you make edits and commits inside the copy of the clone.
The copy (<filename>my-linux-yocto-3.2-work</filename> in this example) has to have
The copy (<filename>my-linux-yocto-3.4-work</filename> in this example) has to have
a local branch created and checked out for your work.
This example uses <filename>common-pc-base</filename> as the local branch.
The following commands create and checkout the branch:
<literallayout class='monospaced'>
$ cd ~/my-linux-yocto-3.2-work
$ git checkout -b common-pc-base origin/standard/default/common-pc/base
Checking out files: 100% (532/532), done.
Branch common-pc-base set up to track remote branch
standard/default/common-pc/base from origin.
Switched to a new branch 'common-pc-base'
$ cd ~/my-linux-yocto-3.4-work
$ git checkout -b standard-common-pc-base origin/standard/common-pc/base
Branch standard-common-pc-base set up to track remote branch
standard/common-pc/base from origin.
Switched to a new branch 'standard-common-pc-base'
</literallayout>
</para>
</section>
@@ -224,7 +235,7 @@
<note>
Because a full build can take hours, you should check two variables in the
<filename>build</filename> directory that is created after you source the
<filename>oe-init-build-env</filename> script.
<filename>&OE_INIT_FILE;</filename> script.
You can find these variables
<filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>
in the <filename>build/conf</filename> directory in the
@@ -242,11 +253,36 @@
If necessary, the script creates the build directory:
<literallayout class='monospaced'>
$ cd ~/poky
$ source oe-init-build-env
$ source &OE_INIT_FILE;
You had no conf/local.conf file. This configuration file has therefore been
created for you with some default values. You may wish to edit it to use a
different MACHINE (target hardware) or enable parallel build options to take
advantage of multiple cores for example. See the file for more information as
common configuration options are commented.
### Shell environment set up for builds. ###
The Yocto Project has extensive documentation about OE including a reference manual
which can be found at:
http://yoctoproject.org/documentation
You can now run 'bitbake &lt;target&gt;'
For more information about OpenEmbedded see their website:
http://www.openembedded.org/
You had no conf/bblayers.conf file. The configuration file has been created for
you with some default values. To add additional metadata layers into your
configuration please add entries to this file.
The Yocto Project has extensive documentation about OE including a reference manual
which can be found at:
http://yoctoproject.org/documentation
For more information about OpenEmbedded see their website:
http://www.openembedded.org/
### Shell environment set up for builds. ###
You can now run 'bitbake &lt;target&gt;>'
Common targets are:
core-image-minimal
@@ -301,7 +337,7 @@
<para>
The file you change in this example is named <filename>calibrate.c</filename>
and is located in the <filename>my-linux-yocto-3.2-work</filename> Git repository
and is located in the <filename>my-linux-yocto-3.4-work</filename> Git repository
(the copy of the bare clone) in <filename>init</filename>.
This example simply inserts several <filename>printk</filename> statements
at the beginning of the <filename>calibrate_delay</filename> function.
@@ -365,7 +401,7 @@
<para>
The following command pushes the changes to the bare clone:
<literallayout class='monospaced'>
$ git push origin common-pc-base:standard/default/common-pc/base
$ git push origin standard-common-pc-base:standard/default/common-pc/base
</literallayout>
</para>
</section>
@@ -420,21 +456,25 @@
BBLAYERS = " \
/home/scottrif/poky/meta \
/home/scottrif/poky/meta-yocto \
/home/scottrif/poky/meta-yocto-bsp \
/home/scottrif/poky/poky-extras/meta-kernel-dev \
"
</literallayout></para></listitem>
<listitem><para><emphasis>Identify Your Source Files:</emphasis> In the
<filename>linux-yocto_3.2.bbappend</filename> file located in the
<filename>linux-yocto_3.4.bbappend</filename> file located in the
<filename>poky-extras/meta-kernel-dev/recipes-kernel/linux</filename>
directory, you need to identify the location of the
local source code, which in this example is the bare clone named
<filename>linux-yocto-3.2.git</filename>.
<filename>linux-yocto-3.4.git</filename>.
To do this, set the <filename>KSRC_linux_yocto</filename> variable to point to your
local <filename>linux-yocto-3.2.git</filename> Git repository by adding the
local <filename>linux-yocto-3.4.git</filename> Git repository by adding the
following statement.
Be sure to substitute your user information in the statement:
Also, be sure the <filename>SRC_URI</filename> variable is pointing to
your kernel source files by removing the comment.
Finally, be sure to substitute your user information in the statement:
<literallayout class='monospaced'>
KSRC_linux_yocto_3_2 ?= "/home/scottrif/linux-yocto-3.2.git"
KSRC_linux_yocto_3_4 ?= "/home/scottrif/linux-yocto-3.4.git"
SRC_URI = "git://${KSRC_linux_yocto_3_4};protocol=file;nocheckout=1;branch=${KBRANCH},meta;name=machine,meta"
</literallayout></para></listitem>
</itemizedlist>
</para>
@@ -447,7 +487,7 @@
comment out the <filename>COMPATIBLE_MACHINE</filename> statements in all
unused <filename>.bbappend</filename> files, or simply remove (or rename) all the files
except the one your are using for the build
(i.e. <filename>linux-yocto_3.2.bbappend</filename> in this example).</para>
(i.e. <filename>linux-yocto_3.4.bbappend</filename> in this example).</para>
<para>If you do not make one of these two adjustments, your machine will be compatible
with all the kernel recipes in the <filename>meta-kernel-dev</filename> layer.
When your machine is comapatible with all the kernel recipes, the build attempts
@@ -464,11 +504,11 @@
Do the following:
<orderedlist>
<listitem><para>Your environment should be set up since you previously sourced
the <filename>oe-init-build-env</filename> script.
the <filename>&OE_INIT_FILE;</filename> script.
If it isn't, source the script again from <filename>poky</filename>.
<literallayout class='monospaced'>
$ cd ~/poky
$ source oe-init-build-env
$ source &OE_INIT_FILE;
</literallayout>
</para></listitem>
<listitem><para>Be sure old images are cleaned out by running the
@@ -506,299 +546,6 @@
</para>
</section>
</section>
<section id='changing-the-kernel-configuration'>
<title>Changing the Kernel Configuration</title>
<para>
This example changes the default behavior, which is "on", of the Symmetric
Multi-processing Support (<filename>CONFIG_SMP</filename>) to "off".
It is a simple example that demonstrates how to reconfigure the kernel.
</para>
<section id='getting-set-up-to-run-this-example'>
<title>Getting Set Up to Run this Example</title>
<para>
If you took the time to work through the example that modifies the kernel source code
in "<link linkend='modifying-the-kernel-source-code'>Modifying the Kernel Source
Code</link>" you should already have the source directory set up on your
host machine.
If this is the case, go to the next section, which is titled
"<link linkend='examining-the-default-config-smp-behavior'>Examining the Default
<filename>CONFIG_SMP</filename> Behavior</link>", and continue with the
example.
</para>
<para>
If you don't have the source directory established on your system,
you can get them through tarball extraction or by
cloning the <filename>poky</filename> Git repository.
This example uses <filename>poky</filename> as the root directory of the
<link linkend='source-directory'>source directory</link>.
See the bulleted item
"<link linkend='local-yp-release'>Yocto Project Release</link>"
for information on how to get these files.
</para>
<para>
Once you have the local copy of the repository set up,
you have many development branches from which you can work.
From inside the repository you can see the branch names and the tag names used
in the upstream Git repository using either of the following commands:
<literallayout class='monospaced'>
$ cd poky
$ git branch -a
$ git tag -l
</literallayout>
This example uses the Yocto Project &DISTRO; Release code named "&DISTRO_NAME;",
which maps to the <filename>&DISTRO_NAME;</filename> branch in the repository.
The following commands create and checkout the local <filename>&DISTRO_NAME;</filename>
branch:
<literallayout class='monospaced'>
$ git checkout -b &DISTRO_NAME; origin/&DISTRO_NAME;
Branch &DISTRO_NAME; set up to track remote branch &DISTRO_NAME; from origin.
Switched to a new branch '&DISTRO_NAME;'
</literallayout>
</para>
<para>
Next, you need to build the default <filename>qemux86</filename> image that you
can boot using QEMU.
<note>
Because a full build can take hours, you should check two variables in the
<filename>build</filename> directory that is created after you source the
<filename>oe-init-build-env</filename> script.
You can find these variables
<filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>
in the <filename>build/conf</filename> directory in the
<filename>local.conf</filename> configuration file.
By default, these variables are commented out.
If your host development system supports multi-core and multi-thread capabilities,
you can uncomment these statements and set the variables to significantly shorten
the full build time.
As a guideline, set both the <filename>BB_NUMBER_THREADS</filename> and the
<filename>PARALLEL_MAKE</filename> variables to twice the number
of cores your machine supports.
</note>
The following two commands <filename>source</filename> the build environment setup script
and build the default <filename>qemux86</filename> image.
If necessary, the script creates the build directory:
<literallayout class='monospaced'>
$ cd ~/poky
$ source oe-init-build-env
### Shell environment set up for builds. ###
You can now run 'bitbake &lt;target&gt;'
Common targets are:
core-image-minimal
core-image-sato
meta-toolchain
meta-toolchain-sdk
adt-installer
meta-ide-support
You can also run generated qemu images with a command like 'runqemu qemux86'
</literallayout>
</para>
<para>
The following <filename>bitbake</filename> command starts the build:
<literallayout class='monospaced'>
$ bitbake -k core-image-minimal
</literallayout>
<note>Be sure to check the settings in the <filename>local.conf</filename>
before starting the build.</note>
</para>
</section>
<section id='examining-the-default-config-smp-behavior'>
<title>Examining the Default&nbsp;&nbsp;<filename>CONFIG_SMP</filename> Behavior</title>
<para>
By default, <filename>CONFIG_SMP</filename> supports multiple processor machines.
To see this default setting from within the QEMU emulator, boot your image using
the emulator as follows:
<literallayout class='monospaced'>
$ runqemu qemux86 qemuparams="-smp 4"
</literallayout>
</para>
<para>
Login to the machine using <filename>root</filename> with no password.
After logging in, enter the following command to see how many processors are
being supported in the emulator.
The emulator reports support for the number of processors you specified using
the <filename>-smp</filename> option, four in this case:
<literallayout class='monospaced'>
# cat /proc/cpuinfo | grep processor
processor : 0
processor : 1
processor : 2
processor : 3
#
</literallayout>
To check the setting for <filename>CONFIG_SMP</filename>, you can use the
following command:
<literallayout class='monospaced'>
zcat /proc/config.gz | grep CONFIG_SMP
</literallayout>
The console returns the following showing that multi-processor machine support
is set:
<literallayout class='monospaced'>
CONFIG_SMP=y
</literallayout>
Logout of the emulator using the <filename>exit</filename> command and
then close it down.
</para>
</section>
<section id='changing-the-config-smp-configuration-using-menuconfig'>
<title>Changing the&nbsp;&nbsp;<filename>CONFIG_SMP</filename> Configuration Using&nbsp;&nbsp;<filename>menuconfig</filename></title>
<para>
The <filename>menuconfig</filename> tool provides an interactive method with which
to set kernel configurations.
You need to run <filename>menuconfig</filename> inside the Yocto BitBake environment.
Thus, the environment must be set up using the <filename>oe-init-build-env</filename>
script found in the build directory.
If you have not sourced this script do so with the following commands:
<literallayout class='monospaced'>
$ cd ~/poky
$ source oe-init-build-env
</literallayout>
</para>
<para>
After setting up the environment to run <filename>menuconfig</filename>, you are ready
to use the tool to interactively change the kernel configuration.
In this example, we are basing our changes on the <filename>linux-yocto-3.2</filename>
kernel.
The OpenEmbedded build system recognizes this kernel as
<filename>linux-yocto</filename>.
Thus, the following commands from the shell in which you previously sourced the
environment initialization script cleans the shared state cache and the
<ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink>
directory and then builds and launches <filename>menuconfig</filename>:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c menuconfig
</literallayout>
</para>
<para>
Once <filename>menuconfig</filename> launches, navigate through the user interface
to find the <filename>CONFIG_SMP</filename> configuration setting.
You can find it at <filename>Processor Type and Features</filename>.
The configuration selection is
<filename>Symmetric Multi-processing Support</filename>.
After using the arrow keys to highlight this selection, press "n" to turn it off.
Then, exit out and save your selections.
</para>
<para>
Once you save the selection, the <filename>.config</filename> configuration file
is updated.
This is the file that the build system uses to configure the Yocto Project kernel
when it is built.
You can find and examine this file in the build directory.
This example uses the following:
<literallayout class='monospaced'>
~/poky/build/tmp/work/qemux86-poky-linux/linux-yocto-3.2.11+git1+84f...
...656ed30-r1/linux-qemux86-standard-build
</literallayout>
<note>
The previous example directory is artificially split and many of the characters
in the actual filename are omitted in order to make it more readable.
Also, depending on the kernel you are using, the exact pathname might differ
slightly.
</note>
</para>
<para>
Within the <filename>.config</filename> file, you can see the following setting:
<literallayout class='monospaced'>
# CONFIG_SMP is not set
</literallayout>
</para>
<para>
A good method to isolate changed configurations is to use a combination of the
<filename>menuconfig</filename> tool and simple shell commands.
Before changing configurations with <filename>menuconfig</filename>, copy the
existing <filename>.config</filename> and rename it to something else,
use <filename>menuconfig</filename> to make
as many changes an you want and save them, then compare the renamed configuration
file against the newly created file.
You can use the resulting differences as your base to create configuration fragments
to permanently save in your kernel layer.
<note>
Be sure to make a copy of the <filename>.config</filename> and don't just
rename it.
The build system needs an existing <filename>.config</filename>
from which to work.
</note>
</para>
</section>
<section id='recompiling-the-kernel-and-testing-the-new-configuration'>
<title>Recompiling the Kernel and Testing the New Configuration</title>
<para>
At this point, you are ready to recompile your kernel image with
the new setting in effect using the BitBake command below:
<literallayout class='monospaced'>
$ bitbake linux-yocto
</literallayout>
</para>
<para>
Now run the QEMU emulator and pass it the same multi-processor option as before:
<literallayout class='monospaced'>
$ runqemu qemux86 qemuparams="-smp 4"
</literallayout>
</para>
<para>
Login to the machine using <filename>root</filename> with no password
and test for the number of processors the kernel supports:
<literallayout class='monospaced'>
# cat /proc/cpuinfo | grep processor
processor : 0
#
</literallayout>
</para>
<para>
From the output, you can see that the kernel no longer supports multi-processor systems.
The output indicates support for a single processor. You can verify the
<filename>CONFIG_SMP</filename> setting by using this command:
<literallayout class='monospaced'>
zcat /proc/config.gz | grep CONFIG_SMP
</literallayout>
The console returns the following output:
<literallayout class='monospaced'>
# CONFIG_SMP is not set
</literallayout>
You have successfully reconfigured the kernel.
</para>
</section>
</section>
<section id='adding-kernel-recipes'>
<title>Adding Kernel Recipes</title>
<para>
A future release of this manual will present an example that adds kernel recipes, which provide
new functionality to the kernel.
</para>
<para>
<imagedata fileref="figures/wip.png"
width="2in" depth="3in" align="center" scalefit="1" />
</para>
</section>
</appendix>
<!--

View File

@@ -8,15 +8,15 @@
<para>
Many development models exist for which you can use the Yocto Project.
This chapter overviews the following methods:
This chapter overviews simple methods that use tools provided by the
Yocto Project:
<itemizedlist>
<listitem><para><emphasis>System Development:</emphasis>
System Development covers Board Support Package (BSP) development and kernel
modification or configuration.
If you want to examine specific examples of the system development models,
see the "<link linkend='dev-manual-bsp-appendix'>BSP Development Example</link>"
appendix and the
"<link linkend='dev-manual-kernel-appendix'>Kernel Modification Example</link>" appendix.
For an example on how to create a BSP, see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'>Creating a New BSP Layer Using the yocto-bsp Script</ulink>"
section in the Yocto Project Board Support Package (BSP) Developer's Guide.
</para></listitem>
<listitem><para><emphasis>User Application Development:</emphasis>
User Application Development covers development of applications that you intend
@@ -80,9 +80,11 @@
<para>
The remainder of this section presents the basic steps used to create a BSP
based on an existing BSP that ships with the Yocto Project.
You can reference the "<link linkend='dev-manual-bsp-appendix'>BSP Development Example</link>"
appendix for a detailed example that uses the Crown Bay BSP as a base BSP from which to start.
using the Yocto Project's
<ulink url='&YOCTO_DOCS_BSP_URL;#using-the-yocto-projects-bsp-tools'>BSP Tools</ulink>.
For an example that shows how to create a new layer using the tools, see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'>Creating a New BSP Layer Using the yocto-bsp Script</ulink>"
section in the Yocto Project Board Support Package (BSP) Developer's Guide.
</para>
<para>
@@ -106,39 +108,26 @@
Directory</link> available on your host system.
Having these files on your system gives you access to the build
process and to the tools you need.
For information on how to set up the Source Directory, see the
For information on how to set up the
<link linkend='source-directory'>Source Directory</link>, see the
"<link linkend='getting-setup'>Getting Setup</link>" section.</para></listitem>
<listitem><para><emphasis>Establish a local copy of the base BSP files</emphasis>: Having
the BSP files on your system gives you access to the build
<listitem><para><emphasis>Establish the <filename>meta-intel</filename>
repository on your system</emphasis>: Having local copies of the
supported BSP layers on your system gives you access to the build
process and to the tools you need for creating a BSP.
For information on how to get these files, see the
"<link linkend='getting-setup'>Getting Setup</link>" section.</para></listitem>
<listitem><para><emphasis>Choose a BSP that is supported by the Yocto Project
as your base BSP</emphasis>:
The Yocto Project ships with several BSPs that support various hardware.
It is best to base your new BSP on an existing BSP rather than create all the
recipes and configuration files from scratch.
While it is possible to create everything from scratch, basing your new BSP
on something that is close is much easier.
Or, at a minimum, leveraging off an existing BSP
gives you some structure with which to start.</para>
<para>At this point you need to understand your target hardware well enough to determine which
existing BSP it most closely matches.
Things to consider are your hardwares on-board features, such as CPU type and graphics support.
You should look at the README files for supported BSPs to get an idea of which one
you could use.
A generic <trademark class='registered'>Intel</trademark>
<trademark class='trade'>Atom</trademark>-based BSP to consider is the
Crown Bay that does not support the <trademark class='registered'>Intel</trademark>
Embedded Media Graphics Driver (EMGD).
The remainder of this example uses that base BSP.</para>
<para>To see the supported BSPs, go to the
<ulink url='&YOCTO_HOME_URL;/download'>Downloads</ulink> page on the Yocto Project
website and click on “BSP Downloads.”</para></listitem>
<listitem><para><emphasis>Create your own BSP layer</emphasis>: Layers are ideal for
<listitem><para><emphasis>Create your own BSP layer using the
<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'><filename>yocto-bsp</filename></ulink> script</emphasis>:
Layers are ideal for
isolating and storing work for a given piece of hardware.
A layer is really just a location or area in which you place the recipes for your BSP.
In fact, a BSP is, in itself, a special type of layer.
In fact, a BSP is, in itself, a special type of layer.
The simplest way to create a new BSP layer that is compliant with the
Yocto Project is to use the <filename>yocto-bsp</filename> script.
For information about that script, see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'>Creating a New BSP Layer Using the yocto-bsp Script</ulink>"
section in the Yocto Project Board Support (BSP) Developer's Guide.
</para>
<para>
Another example that illustrates a layer is an application.
@@ -170,25 +159,34 @@
section of the Board Support Package (BSP) Development Guide.
In the standard layout, you will notice a suggested structure for recipes and
configuration information.
You can see the standard layout for the Crown Bay BSP in this example by examining the
directory structure of the <filename>meta-crownbay</filename> layer inside the
Source Directory.</para></listitem>
You can see the standard layout for a BSP by examining
any supported BSP found in the <filename>meta-intel</filename> layer inside
the Source Directory.</para></listitem>
<listitem><para><emphasis>Make configuration changes to your new BSP
layer</emphasis>: The standard BSP layer structure organizes the files you need
to edit in <filename>conf</filename> and several <filename>recipes-*</filename>
directories within the BSP layer.
Configuration changes identify where your new layer is on the local system
and identify which kernel you are going to use.
When you run the <filename>yocto-bsp</filename> script you are able to interactively
configure many things for the BSP (e.g. keyboard, touchscreen, and so forth).
</para></listitem>
<listitem><para><emphasis>Make recipe changes to your new BSP layer</emphasis>: Recipe
changes include altering recipes (<filename>.bb</filename> files), removing
recipes you don't use, and adding new recipes that you need to support your hardware.
recipes you don't use, and adding new recipes or append files
(<filename>.bbappend</filename>) that you need to support your hardware.
</para></listitem>
<listitem><para><emphasis>Prepare for the build</emphasis>: Once you have made all the
changes to your BSP layer, there remains a few things
you need to do for the OpenEmbedded build system in order for it to create your image.
You need to get the build environment ready by sourcing an environment setup script
and you need to be sure two key configuration files are configured appropriately.</para>
and you need to be sure two key configuration files are configured appropriately:
the <filename>conf/local.conf</filename> and the
<filename>conf/bblayers.conf</filename> file.
You must make the OpenEmbedded build system aware of your new layer.
See the
"<link linkend='enabling-your-layer'>Enabling Your Layer</link>" section
for information on how to let the build system know about your new layer.</para>
<para>The entire process for building an image is overviewed in the section
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>" section
of the Yocto Project Quick Start.
@@ -234,9 +232,11 @@
kernel architecture and the steps to modify the kernel.
For a complete discussion of the kernel, see the
<ulink url='&YOCTO_DOCS_KERNEL_URL;'>Yocto Project Kernel Architecture and Use Manual</ulink>.
You can reference the appendix
"<link linkend='dev-manual-kernel-appendix'>Kernel Modification Example</link>"
for a detailed example that changes the configuration of a kernel.
You can reference the
"<link linkend='patching-the-kernel'>Patching the Kernel</link>" section
for an example that changes the source code of the kernel.
For information on how to configure the kernel, see the
"<link linkend='configuring-the-kernel'>Configuring the Kernel</link>" section.
</para>
<section id='kernel-overview'>
@@ -323,8 +323,8 @@
</note>
<para>
Storage of all the available kernel source code is one thing, while representing the
code on your host development system is another.
Upstream storage of all the available kernel source code is one thing, while
representing and using the code on your host development system is another.
Conceptually, you can think of the kernel source repositories as all the
source files necessary for all the supported kernels.
As a developer, you are just interested in the source files for the kernel on
@@ -333,57 +333,35 @@
</para>
<para>
You make kernel source code available on your host development system by using
Git to create a bare clone of the Yocto Project kernel Git repository
in which you are interested.
Then, you use Git again to clone a copy of that bare clone.
This copy represents the directory structure on your host system that is particular
to the kernel you want.
The files in the copy of the bare clone are the files you actually modify
to change the kernel.
See the <link linkend='local-kernel-files'>Yocto Project Kernel</link> item earlier
in this manual for an example of how to set up the kernel source directory
structure on your host system.
</para>
<para>
This next figure illustrates how the kernel source files might be arranged on
your host system.
</para>
<para>
<imagedata fileref="figures/kernel-overview-3-denzil.png"
width="6in" depth="4in" align="center" scale="100" />
</para>
<para>
In the previous figure, the file structure on the left represents the bare clone
set up to track the Yocto Project kernel Git repository.
The structure on the right represents the copy of the bare clone.
When you make modifcations to the kernel source code, this is the area in which
you work.
Once you make corrections, you must use Git to push the committed changes to the
bare clone.
The example in <xref linkend='modifying-the-kernel-source-code'>
Modifying the Kernel Source Code</xref> provides a detailed example.
Kernel source code is available on your host system a couple of different
ways.
If you are working in the kernel all the time, you probably would want
to set up your own local Git repository of the kernel tree.
If you just need to make some patches to the kernel, you can get at
temporary kernel source files extracted and used during the OpenEmbedded
build system.
We will just talk about working with the temporary source code.
</para>
<para>
What happens during the build?
When you build the kernel on your development system, all files needed for the build
are taken from the source repositories pointed to by the
<filename>SRC_URI</filename> variable and gathered in a temporary work area
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink> variable
and gathered in a temporary work area
where they are subsequently used to create the unique kernel.
Thus, in a sense, the process constructs a local source tree specific to your
kernel to generate the new kernel image - a source generator if you will.
</para>
The following figure shows the temporary file structure
created on your host system when the build occurs.
This build directory contains all the source files used during the build.
This
<link linkend='build-directory'>Build Directory</link> contains all the
source files used during the build.
</para>
<para>
<imagedata fileref="figures/kernel-overview-2.png"
<imagedata fileref="figures/kernel-overview-2-generic.png"
width="6in" depth="5in" align="center" scale="100" />
</para>
@@ -392,7 +370,7 @@
branching strategy, see the
<ulink url='&YOCTO_DOCS_KERNEL_URL;'>Yocto Project Kernel Architecture and Use Manual</ulink>.
You can also reference the
"<link linkend='modifying-the-kernel-source-code'>Modifying the Kernel Source Code</link>"
"<link linkend='patching-the-kernel'>Patching the Kernel</link>"
section for a detailed example that modifies the kernel.
</para>
</section>
@@ -406,7 +384,7 @@
<para>
<imagedata fileref="figures/kernel-dev-flow.png"
width="6in" depth="7.5in" align="center" scalefit="1" />
width="6in" depth="5in" align="center" scalefit="1" />
</para>
<para>
@@ -417,56 +395,52 @@
"<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>" sections both
in the Yocto Project Quick Start for requirements.</para></listitem>
<listitem><para><emphasis>Establish a local copy of project files on your
system</emphasis>: Having the <link linkend='source-directory'>source
directory</link> on your system gives you access to the build process and tools
system</emphasis>: Having the <link linkend='source-directory'>Source
Directory</link> on your system gives you access to the build process and tools
you need.
For information on how to get these files, see the bulleted item
"<link linkend='local-yp-release'>Yocto Project Release</link>" earlier in this manual.
</para></listitem>
<listitem><para><emphasis>Set up a local copy of the <filename>poky-extras</filename> Git
repository</emphasis>: This local repository is the area for your configuration
fragments, new kernel recipes, and the kernel <filename>.bbappend</filename>
file used during the build.
It is good practice to set this repository up inside your local
<link linkend='source-directory'>Source Directory</link>.
For information on how to get these files, see the bulleted item
"<link linkend='poky-extras-repo'>The <filename>poky-extras</filename> Git Repository</link>"
earlier in this manual.
<note>While it is certainly possible to modify the kernel without involving
a local Git repository, the suggested workflow for kernel modification
using the Yocto Project does use a Git repository.</note></para></listitem>
<listitem><para><emphasis>Establish a local copy of the Yocto Project kernel files on your
system</emphasis>: In order to make modifications to the kernel you need two things:
a bare clone of the Yocto Project kernel you are modifying and
a copy of that bare clone.
The bare clone is required by the build process and is the area to which you
push your kernel source changes (pulling does not work with bare clones).
The copy of the bare clone is a local Git repository that contains all the kernel's
source files.
You make your changes to the files in this copy of the bare clone.
For information on how to set these two items up, see the bulleted item
"<link linkend='local-kernel-files'>Yocto Project Kernel</link>"
earlier in this manual.</para></listitem>
<listitem><para><emphasis>Establish the temporary kernel source files</emphasis>:
Temporary kernel source files are kept in the Build Directory created by the
OpenEmbedded build system when you run BitBake.
If you have never built the kernel you are interested in, you need to run
an initial build to establish local kernel source files.</para>
<para>If you are building an image for the first time, you need to get the build
environment ready by sourcing
the environment setup script.
You also need to be sure two key configuration files
(<filename>local.conf</filename> and <filename>bblayers.conf</filename>)
are configured appropriately.</para>
<para>The entire process for building an image is overviewed in the
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>"
section of the Yocto Project Quick Start.
You might want to reference this information.
You can find more information on BitBake in the user manual, which is found in the
<filename>bitbake/doc/manual</filename> directory of the
<link linkend='source-directory'>Source Directory</link>.</para>
<para>The build process supports several types of images to satisfy different needs.
See the "<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in
the Yocto Project Reference Manual for information on supported images.
</para></listitem>
<listitem><para><emphasis>Make changes to the kernel source code if
applicable</emphasis>: Modifying the kernel does not always mean directly
changing source files.
However, if you have to do this, you make the changes in the local
Git repository you set up to hold the source files (i.e. the copy of the
bare clone).
Once the changes are made, you need to use Git commands to commit the changes
and then push them to the bare clone.</para></listitem>
However, if you have to do this, you make the changes to the files in the
Build directory.</para></listitem>
<listitem><para><emphasis>Make kernel configuration changes
if applicable</emphasis>:
If your situation calls for changing the kernel's configuration, you can
use <filename>menuconfig</filename>
use the <filename>yocto-kernel</filename> script or <filename>menuconfig</filename>
to enable and disable kernel configurations.
Using the script lets you interactively set up kernel configurations.
Using <filename>menuconfig</filename> allows you to interactively develop and test the
configuration changes you are making to the kernel.
When saved, changes using <filename>menuconfig</filename> update the kernel's
<filename>.config</filename>.
Try to resist the temptation of directly editing the <filename>.config</filename>
file found in the
<link linkend='build-directory'>build directory</link> at
<link linkend='build-directory'>Build Directory</link> at
<filename>tmp/sysroots/&lt;machine-name&gt;/kernel</filename>.
Doing so, can produce unexpected results when the OpenEmbedded build system
regenerates the configuration file.</para>
@@ -475,55 +449,8 @@
<filename>.config</filename> file against a saved original and gather those
changes into a config fragment to be referenced from within the kernel's
<filename>.bbappend</filename> file.</para></listitem>
<listitem><para><emphasis>Add or extend kernel recipes if applicable</emphasis>:
The standard
layer structure organizes recipe files inside the
<filename>meta-kernel-dev</filename> layer that is within the local
<filename>poky-extras</filename> Git repository.
If you need to add new kernel recipes, you add them within this layer.
Also within this area, you will find the <filename>.bbappend</filename>
file that appends information to the kernel's recipe file used during the
build.
</para></listitem>
<listitem><para><emphasis>Prepare for the build</emphasis>: Once you have made all the
changes to your kernel (configurations, source code changes, recipe additions,
or recipe changes), there remains a few things
you need to do in order for the build system to create your image.
If you have not done so, you need to get the build environment ready by sourcing
the environment setup script described earlier.
You also need to be sure two key configuration files
(<filename>local.conf</filename> and <filename>bblayers.conf</filename>)
are configured appropriately.</para>
<para>The entire process for building an image is overviewed in the
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>"
section of the Yocto Project Quick Start.
You might want to reference this information.
Also, you should look at the detailed examples found in the appendices at
at the end of this manual.</para></listitem>
<listitem><para><emphasis>Build the image</emphasis>: The OpenEmbedded
build system uses the BitBake
tool to build images based on the type of image you want to create.
You can find more information on BitBake in the user manual, which is found in the
<filename>bitbake/doc/manual</filename> directory of the
<link linkend='source-directory'>Source Directory</link>.</para>
<para>The build process supports several types of images to satisfy different needs.
See the "<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in
the Yocto Project Reference Manual for information on supported images.</para></listitem>
<listitem><para><emphasis>Make your configuration changes available
in the kernel layer</emphasis>: Up to this point, all the configuration changes to the
kernel have been done and tested iteratively.
Once they are tested and ready to go, you can move them into the kernel layer,
which allows you to distribute the layer.</para></listitem>
<listitem><para><emphasis>If applicable, share your in-tree changes</emphasis>:
If the changes you made
are suited for all Yocto Project kernel users, you might want to send them on
for inclusion into the upstream kernel's Git repository.
If the changes are accepted, the Yocto Project Maintainer pulls them into
the master branch of the kernel tree.
Doing so makes them available to everyone using the kernel.</para>
<para>For information on how to submit a change to the Yocto Project, see the
"<link linkend='how-to-submit-a-change'>How to Submit a Change</link>" section
earlier in this manual.</para></listitem>
<listitem><para><emphasis>Rebuild the kernel image with your changes</emphasis>:
Rebuilding the kernel image applies your changes.</para></listitem>
</orderedlist>
</para>
</section>
@@ -600,8 +527,8 @@
If your target architecture is similar to a supported architecture, you can
modify the kernel image before you build it.
See the
"<link linkend='dev-manual-kernel-appendix'>Kernel Modification Example</link>"
appendix later in this manual for an example.</para></listitem>
"<link linkend='patching-the-kernel'>Patching the Kernel</link>"
section for an example.</para></listitem>
</itemizedlist></para>
<para>For information on pre-built kernel image naming schemes for images
that can run on the QEMU emulator, see the
@@ -654,7 +581,7 @@
</para></listitem>
<listitem><para><emphasis>Test and Debug the Application</emphasis>:
Once your application is deployed, you need to test it.
Within the Eclipse IDE, you can use the debubbing environment along with the
Within the Eclipse IDE, you can use the debugging environment along with the
set of user-space tools installed along with the ADT to debug your application.
Of course, the same user-space tools are available separately if you choose
not to use the Eclipse IDE.</para></listitem>
@@ -1060,10 +987,10 @@
<listitem><para><emphasis>
<filename>Build System Derived Toolchain:</filename></emphasis>
Select this mode if the cross-toolchain has been installed and built
as part of the build directory.
as part of the Build Directory.
When you select <filename>Build system derived toolchain</filename>,
you are using the toolchain bundled
inside the build directory.
inside the Build Directory.
</para></listitem>
</itemizedlist>
</para></listitem>
@@ -1082,9 +1009,9 @@
However, doing so is discouraged.</note></para>
<para>If you are using a system-derived toolchain, the path you provide
for the <filename>Toolchain Root Location</filename>
field is the build directory.
field is the Build Directory.
See the "<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-toolchain-from-within-the-build-tree'>Using
BitBake and the build directory</ulink>" section in the Yocto Project Application
BitBake and the Build Directory</ulink>" section in the Yocto Project Application
Developer's Guide for information on how to install the toolchain into the build
directory.</para></listitem>
<listitem><para><emphasis>Specify the Sysroot Location:</emphasis>
@@ -1127,7 +1054,7 @@ directory.</para></listitem>
and specify any custom options.</para>
<para>If you selected <filename>Build system derived toolchain</filename>,
the target kernel you built will be located in the
build directory in <filename>tmp/deploy/images</filename> directory.
Build Directory in <filename>tmp/deploy/images</filename> directory.
If you selected <filename>Standalone pre-built toolchain</filename>, the
pre-built image you downloaded is located
in the directory you specified when you downloaded the image.</para>
@@ -1345,44 +1272,48 @@ directory.</para></listitem>
<ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/oprofileui/'></ulink>.
<note>The <filename>oprofile-server</filename> is installed by default on
the <filename>core-image-sato-sdk</filename> image.</note></para></listitem>
<listitem><para><emphasis><filename>Lttng-ust</filename>:</emphasis> Selecting this tool runs
<filename>usttrace</filename> on the remote target, transfers the output data back
to the local host machine, and uses the <filename>lttng</filename> Eclipse plug-in to
graphically display the output.
For information on how to use <filename>lttng</filename> to trace an application, see
<ulink url='http://lttng.org/documentation'></ulink>.</para>
<para>For <filename>Application</filename>, you must supply the absolute path name of the
application to be traced by user mode <filename>lttng</filename>.
For example, typing <filename>/path/to/foo</filename> triggers
<filename>usttrace /path/to/foo</filename> on the remote target to trace the
program <filename>/path/to/foo</filename>.</para>
<para><filename>Argument</filename> is passed to <filename>usttrace</filename>
running on the remote target.</para>
<para>Before you use the <filename>lttng-ust</filename> tool, you need to setup
the <filename>lttng</filename> Eclipse plug-in and create a <filename>lttng</filename>
project.
<listitem><para><emphasis><filename>Lttng2.0 ust trace import</filename>:</emphasis>
Selecting this tool transfers the remote target's
<filename>Lttng</filename> tracing data back to the local host machine
and uses the <filename>Lttng</filename> Eclipse plug-in to graphically
display the output.
For information on how to use <filename>Lttng</filename> to trace an application,
see <ulink url='http://lttng.org/documentation'></ulink>.
<note>Do not use <filename>Lttng-user space (legacy)</filename> tool.
This tool no longer has any upstream support.</note>
</para>
<para>Before you use the <filename>Lttng2.0 ust trace import</filename> tool,
you need to setup the <filename>Lttng</filename> Eclipse plug-in and create a
<filename>Tracing</filename> project.
Do the following:
<orderedlist>
<listitem><para>Follow the instructions from the
<ulink url='http://wiki.eclipse.org/Linux_Tools_Project/LTTng2/User_Guide'>Linux Tools Projec/LTTng2/User Guide</ulink>
to download and install the <filename>lttng</filename> parser library.
</para></listitem>
<listitem><para>Select <filename>Window -> Open Perspective -> Other</filename>
and then select <filename>LTTng</filename>.</para></listitem>
and then select <filename>Tracing</filename>.</para></listitem>
<listitem><para>Click <filename>OK</filename> to change the Eclipse perspective
into the <filename>LTTng</filename> perspective.</para></listitem>
<listitem><para>Create a new <filename>LTTng</filename> project by selecting
into the <filename>Tracing</filename> perspective.</para></listitem>
<listitem><para>Create a new <filename>Tracing</filename> project by selecting
<filename>File -> New -> Project</filename>.</para></listitem>
<listitem><para>Choose <filename>LTTng -> LTTng Project</filename>.</para></listitem>
<listitem><para>Click <filename>YoctoTools -> lttng-ust</filename> to start user mode
<filename>lttng</filename> on the remote target.</para></listitem>
</orderedlist></para>
<para>After the output data has been transferred from the remote target back to the local
host machine, new traces will be imported into the selected <filename>LTTng</filename> project.
Then you can go to the <filename>LTTng</filename> project, right click the imported
trace, and set the trace type as the <filename>LTTng</filename> kernel trace.
Finally, right click the imported trace and select <filename>Open</filename>
to display the data graphically.</para></listitem>
<listitem><para>Choose <filename>Tracing -> Tracing Project</filename>.
</para></listitem>
<listitem><para>Generate your tracing data on the remote target.
</para></listitem>
<listitem><para>Click
<filename>Yocto Project Tools -> Lttng2.0 ust trace import</filename>
to start the data import process.</para></listitem>
<listitem><para>Specify your remote connection name.</para></listitem>
<listitem><para>For the Ust directory path, specify the location of
your remote tracing data.
Make sure the location ends with <filename>ust</filename> (e.g.
<filename>/usr/mysession/ust</filename>.</para></listitem>
<listitem><para>Click <filename>OK</filename> to complete the import process.
The data is now in the local tracing project you created.</para></listitem>
<listitem><para>Right click on the data and then use the menu to
<filename>Select Trace Type... -> Common Trace Format -> Generic CTF Trace</filename>
to map the tracing type.</para></listitem>
<listitem><para>Right click the mouse and select <filename>Open</filename>
to bring up the Eclipse <filename>Lttng</filename> Trace Viewer so you
view the tracing data.</para></listitem>
</orderedlist></para></listitem>
<listitem><para><emphasis><filename>PowerTOP</filename>:</emphasis> Selecting this tool runs
<filename>powertop</filename> on the remote target machine and displays the results in a
new view called <filename>powertop</filename>.</para>
@@ -1457,7 +1388,7 @@ directory.</para></listitem>
to open a new recipe wizard.</para></listitem>
<listitem><para>Point to your source by filling in the "SRC_URL" field.
For example, you can add a recipe to your
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
<link linkend='source-directory'>Source Directory</link>
by defining "SRC_URL" as follows:
<literallayout class='monospaced'>
ftp://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
@@ -1479,7 +1410,7 @@ directory.</para></listitem>
<orderedlist>
<listitem><para>Select your Yocto Bitbake Commander project.</para></listitem>
<listitem><para>Select <filename>Project -> Launch HOB</filename>.</para></listitem>
<listitem><para>Enter the build directory where you want to put your final images.</para></listitem>
<listitem><para>Enter the Build Directory where you want to put your final images.</para></listitem>
<listitem><para>Click <filename>OK</filename> to launch Hob.</para></listitem>
<listitem><para>Use Hob to customize and build your own images.
For information on Hob, see the
@@ -1550,7 +1481,7 @@ directory.</para></listitem>
to figure out your solution.
After you have initially built the package, you can iteratively tweak the
source code, which is located in the
<link linkend='build-directory'>build directory</link>, and then
<link linkend='build-directory'>Build Directory</link>, and then
you can force a re-compile and quickly test your altered code.
Once you settle on a solution, you can then preserve your changes in the form of
patches.
@@ -1564,7 +1495,7 @@ directory.</para></listitem>
<para>
During a build, the unpacked temporary source code used by recipes
to build packages is available in the build directory as
to build packages is available in the Build Directory as
defined by the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-S'>S</ulink></filename> variable.
Below is the default value for the <filename>S</filename> variable as defined in the
@@ -1598,7 +1529,7 @@ directory.</para></listitem>
Let's look at an example without variables.
Assuming a top-level <link linkend='source-directory'>Source Directory</link>
named <filename>poky</filename>
and a default build directory of <filename>poky/build</filename>,
and a default Build Directory of <filename>poky/build</filename>,
the following is the work directory for the <filename>acl</filename> recipe that
creates the <filename>acl</filename> package:
<literallayout class='monospaced'>
@@ -1613,11 +1544,13 @@ directory.</para></listitem>
${TMPDIR}/work/${MACHINE}-poky-${TARGET_OS}/${PN}-${PV}-${PR}
</literallayout>
Again, assuming top-level Source Directory named <filename>poky</filename>
and a default build directory of <filename>poky/build</filename>, the
following is the work directory for the <filename>acl</filename> package that is being
and a default Build Directory of <filename>poky/build</filename>, the
following are the work and temporary source directories, respectively,
for the <filename>acl</filename> package that is being
built for a MIPS-based device:
<literallayout class='monospaced'>
~/poky/build/tmp/work/mips-poky-linux/acl-2.2.51-r2
~/poky/build/tmp/work/mips-poky-linux/acl-2.2.51-r2/acl-2.2.51
</literallayout>
</para>
@@ -1659,7 +1592,7 @@ directory.</para></listitem>
<orderedlist>
<listitem><para><emphasis>Find the Source Code:</emphasis>
The temporary source code used by the OpenEmbedded build system is kept in the
build directory.
Build Directory.
See the
"<link linkend='finding-the-temporary-source-code'>Finding the Temporary Source Code</link>"
section to learn how to locate the directory that has the temporary source code for a
@@ -1667,7 +1600,7 @@ directory.</para></listitem>
<listitem><para><emphasis>Change Your Working Directory:</emphasis>
You need to be in the directory that has the temporary source code.
That directory is defined by the
<ulink url='&YOCTO_DOCS_REF_URL;#var-S'>S</ulink>
<ulink url='&YOCTO_DOCS_REF_URL;#var-S'><filename>S</filename></ulink>
variable.</para></listitem>
<listitem><para><emphasis>Create a New Patch:</emphasis>
Before modifying source code, you need to create a new patch.
@@ -1676,14 +1609,16 @@ directory.</para></listitem>
$ quilt new my_changes.patch
</literallayout></para></listitem>
<listitem><para><emphasis>Notify Quilt and Add Files:</emphasis>
After creating the patch, you need to notify Quilt about the files you will
be changing.
Add the files you will be modifying into the patch you just created:
After creating the patch, you need to notify Quilt about the files
you plan to edit.
You notify Quilt by adding the files to the patch you just created:
<literallayout class='monospaced'>
$ quilt add file1.c file2.c file3.c
</literallayout></para></listitem>
</literallayout>
</para></listitem>
<listitem><para><emphasis>Edit the Files:</emphasis>
Make the changes to the temporary source code.</para></listitem>
Make your changes in the temporary source code to the files you added
to the patch.</para></listitem>
<listitem><para><emphasis>Test Your Changes:</emphasis>
Once you have modified the source code, the easiest way to test your changes
is by calling the <filename>compile</filename> task as shown in the following example:
@@ -1715,7 +1650,9 @@ directory.</para></listitem>
subdirectory of the source (<filename>S</filename>) directory.</para></listitem>
<listitem><para><emphasis>Copy the Patch File:</emphasis>
For simplicity, copy the patch file into a directory named <filename>files</filename>,
which you can create in the same directory as the recipe.
which you can create in the same directory that holds the recipe
(<filename>.bb</filename>) file or the
append (<filename>.bbappend</filename>) file.
Placing the patch here guarantees that the OpenEmbedded build system will find
the patch.
Next, add the patch into the
@@ -1753,7 +1690,7 @@ directory.</para></listitem>
<orderedlist>
<listitem><para><emphasis>Find the Source Code:</emphasis>
The temporary source code used by the OpenEmbedded build system is kept in the
build directory.
Build Directory.
See the
"<link linkend='finding-the-temporary-source-code'>Finding the Temporary Source Code</link>"
section to learn how to locate the directory that has the temporary source code for a
@@ -1761,30 +1698,24 @@ directory.</para></listitem>
<listitem><para><emphasis>Change Your Working Directory:</emphasis>
You need to be in the directory that has the temporary source code.
That directory is defined by the
<ulink url='&YOCTO_DOCS_REF_URL;#var-S'>S</ulink>
<ulink url='&YOCTO_DOCS_REF_URL;#var-S'><filename>S</filename></ulink>
variable.</para></listitem>
<listitem><para><emphasis>Initialize a Git Repository:</emphasis>
Use the <filename>git init</filename> command to initialize a new local repository
that is based on the work directory:
<listitem><para><emphasis>If needed, initialize a Git Repository:</emphasis>
If the recipe you are working with does not use a Git fetcher,
you need to set up a Git repository as follows:
<literallayout class='monospaced'>
$ git init
</literallayout></para></listitem>
<listitem><para><emphasis>Stage all the files:</emphasis>
Use the <filename>git add *</filename> command to stage all the files in the source
code directory so that they can be committed:
<literallayout class='monospaced'>
$ git add *
</literallayout></para></listitem>
<listitem><para><emphasis>Commit the Source Files:</emphasis>
Use the <filename>git commit</filename> command to initially commit all the files in
the work directory:
<literallayout class='monospaced'>
$ git commit
$ git commit -m "initial revision"
</literallayout>
The above Git commands initialize a Git repository that is based on the
files in your current working directory, stage all the files, and commit
the files.
At this point, your Git repository is aware of all the source code files.
Any edits you now make to files will be tracked by Git.</para></listitem>
Any edits you now make to files can be committed later and will be tracked by
Git.</para></listitem>
<listitem><para><emphasis>Edit the Files:</emphasis>
Make the changes to the temporary source code.</para></listitem>
Make your changes to the temporary source code.</para></listitem>
<listitem><para><emphasis>Test Your Changes:</emphasis>
Once you have modified the source code, the easiest way to test your changes
is by calling the <filename>compile</filename> task as shown in the following example:
@@ -1796,8 +1727,8 @@ directory.</para></listitem>
If you find problems with your code, you can just keep editing and
re-testing iteratively until things work as expected.
<note>All the modifications you make to the temporary source code
disappear once you <filename>-c clean</filename> or
<filename>-c cleanall</filename> with BitBake for the package.
disappear once you <filename>-c clean</filename>, <filename>-c cleansstate</filename>,
or <filename>-c cleanall</filename> with BitBake for the package.
Modifications will also disappear if you use the <filename>rm_work</filename>
feature as described in the
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>"
@@ -1823,25 +1754,30 @@ directory.</para></listitem>
Once you have committed the files, you can use the <filename>git log</filename>
command to see your changes:
<literallayout class='monospaced'>
$ git commit
$ git commit -m "&lt;commit-summary-message&gt;"
$ git log
</literallayout></para></listitem>
</literallayout>
<note>The name of the patch file created in the next step is based on your
<filename>commit-summary-message</filename>.</note></para></listitem>
<listitem><para><emphasis>Generate the Patch:</emphasis>
Once the changes are committed, use the <filename>git format-patch</filename>
command to generate a patch file:
<literallayout class='monospaced'>
$ git format-patch HEAD~1
$ git format-patch -1
</literallayout>
The <filename>HEAD~1</filename> part of the command causes Git to generate the
Specifying "-1" causes Git to generate the
patch file for the most recent commit.</para>
<para>At this point, the patch file has all your edits made
to the <filename>file1.c</filename>, <filename>file2.c</filename>, and
<filename>file3.c</filename> files.
You can find the resulting patch file in the current directory.
You can find the resulting patch file in the current directory and it
is named according to the <filename>git commit</filename> summary line.
The patch file ends with <filename>.patch</filename>.</para></listitem>
<listitem><para><emphasis>Copy the Patch File:</emphasis>
For simplicity, copy the patch file into a directory named <filename>files</filename>,
which you can create in the same directory as the recipe.
which you can create in the same directory that holds the recipe
(<filename>.bb</filename>) file or the
append (<filename>.bbappend</filename>) file.
Placing the patch here guarantees that the OpenEmbedded build system will find
the patch.
Next, add the patch into the
@@ -1849,7 +1785,7 @@ directory.</para></listitem>
of the recipe.
Here is an example:
<literallayout class='monospaced'>
SRC_URI += "file://my_changes.patch"
SRC_URI += "file://0001-&lt;commit-summary-message&gt;.patch"
</literallayout></para></listitem>
<listitem><para><emphasis>Increment the Recipe Revision Number:</emphasis>
Finally, don't forget to 'bump' the

View File

@@ -130,7 +130,7 @@
From the interface, you can click on any particular item in the "Name" column and
see the URL at the bottom of the page that you need to set up a Git repository for
that particular item.
Having a local Git repository of the source directory (poky) allows you to
Having a local Git repository of the Source Directory (poky) allows you to
make changes, contribute to the history, and ultimately enhance the Yocto Project's
tools, Board Support Packages, and so forth.
</para>
@@ -148,7 +148,7 @@
<ulink url='&YOCTO_HOME_URL;/download'>download page</ulink> and get a
tarball of the release.
You can also go to this site to download any supported BSP tarballs.
Unpacking the tarball gives you a hierarchical source directory that lets you develop
Unpacking the tarball gives you a hierarchical Source Directory that lets you develop
using the Yocto Project.
</para>
@@ -207,10 +207,9 @@
<filename>formfactor_0.0.bb</filename> and <filename>formfactor_0.0.bbappend</filename>).
</para>
<para>Information in append files overrides the information in the similarly-named recipe file.
For examples of <filename>.bbappend</filename> file in use, see the
"<link linkend='using-bbappend-files'>Using .bbappend Files</link>" and
"<link linkend='changing-recipes-kernel'>Changing <filename>recipes-kernel</filename></link>"
sections.</para></listitem>
For an example of an append file in use, see the
"<link linkend='using-bbappend-files'>Using .bbappend Files</link>" section.
</para></listitem>
<listitem><para id='bitbake-term'><emphasis>BitBake:</emphasis>
The task executor and scheduler used by
the OpenEmbedded build system to build images.
@@ -221,31 +220,31 @@
<para id='build-directory'><emphasis>Build Directory:</emphasis>
This term refers to the area used by the OpenEmbedded build system for builds.
The area is created when you <filename>source</filename> the setup
environment script that is found in the source directory
(i.e. <filename>oe-init-build-env</filename>).
environment script that is found in the Source Directory
(i.e. <filename>&OE_INIT_FILE;</filename>).
The <ulink url='&YOCTO_DOCS_REF_URL;#var-TOPDIR'><filename>TOPDIR</filename></ulink>
variable points to the build directory.</para>
variable points to the Build Directory.</para>
<para>You have a lot of flexibility when creating the build directory.
<para>You have a lot of flexibility when creating the Build Directory.
Following are some examples that show how to create the directory:
<itemizedlist>
<listitem><para>Create the build directory in your current working directory
<listitem><para>Create the Build Directory in your current working directory
and name it <filename>build</filename>.
This is the default behavior.
<literallayout class='monospaced'>
$ source oe-init-build-env
$ source &OE_INIT_PATH;
</literallayout></para></listitem>
<listitem><para>Provide a directory path and specifically name the build
directory.
This next example creates a build directory named <filename>YP-&POKYVERSION;</filename>
This next example creates a Build Directory named <filename>YP-&POKYVERSION;</filename>
in your home directory within the directory <filename>mybuilds</filename>.
If <filename>mybuilds</filename> does not exist, the directory is created for you:
<literallayout class='monospaced'>
$ source &OE_INIT_PATH; $HOME/mybuilds/YP-&POKYVERSION;
</literallayout></para></listitem>
<listitem><para>Provide an existing directory to use as the build directory.
<listitem><para>Provide an existing directory to use as the Build Directory.
This example uses the existing <filename>mybuilds</filename> directory
as the build directory.
as the Build Directory.
<literallayout class='monospaced'>
$ source &OE_INIT_PATH; $HOME/mybuilds/
</literallayout></para></listitem>
@@ -255,7 +254,7 @@
this term refers to the OpenEmbedded build system used by the project.
This build system is based on the project known as "Poky."
For some historical information about Poky, see the
<link linkend='poky'>poky</link> term further along in this section.
<link linkend='poky'>Poky</link> term further along in this section.
</para></listitem>
<listitem><para><emphasis>Classes:</emphasis> Files that provide for logic encapsulation
and inheritance allowing commonly used patterns to be defined once and easily used
@@ -265,14 +264,14 @@
<listitem><para><emphasis>Configuration File:</emphasis> Configuration information in various
<filename>.conf</filename> files provides global definitions of variables.
The <filename>conf/local.conf</filename> configuration file in the
<link linkend='build-directory'>build directory</link>
<link linkend='build-directory'>Build Directory</link>
contains user-defined variables that affect each build.
The <filename>meta-yocto/conf/distro/poky.conf</filename> configuration file
defines Yocto distro configuration
variables used only when building with this policy.
Machine configuration files, which
are located throughout the
<link linkend='source-directory'>source directory</link>, define
<link linkend='source-directory'>Source Directory</link>, define
variables for specific hardware and are only used when building for that target
(e.g. the <filename>machine/beagleboard.conf</filename> configuration file defines
variables for the Texas Instruments ARM Cortex-A8 development board).
@@ -326,14 +325,14 @@
<ulink url='&YOCTO_DOCS_REF_URL;#var-PE'><filename>PE</filename></ulink>).
</para></listitem>
<listitem><para id='poky'><emphasis>Poky:</emphasis> The term "poky" can mean several things.
In its most general sence, it is an open-source project that was initially developed
In its most general sense, it is an open-source project that was initially developed
by OpenedHand. With OpenedHand, poky was developed off of the existing OpenEmbedded
build system becoming a build system for embedded images.
After Intel Corporation aquired OpenedHand, the project poky became the basis for
the Yocto Project's build system.
Within the Yocto Project source repositories, poky exists as a separate Git repository
that can be cloned to yield a local copy on the host system.
Thus, "poky" can refer to the local copy of the source directory used to develop within
Thus, "poky" can refer to the local copy of the Source Directory used to develop within
the Yocto Project.</para></listitem>
<listitem><para><emphasis>Recipe:</emphasis> A set of instructions for building packages.
A recipe describes where you get source code and which patches to apply.
@@ -350,15 +349,15 @@
Sometimes you might here the term "poky directory" used to refer to this
directory structure.</para>
<para>The source directory contains BitBake, Documentation, metadata and
<para>The Source Directory contains BitBake, Documentation, metadata and
other files that all support the Yocto Project.
Consequently, you must have the source directory in place on your development
Consequently, you must have the Source Directory in place on your development
system in order to do any development using the Yocto Project.</para>
<para>For tarball expansion, the name of the top-level directory of the source directory
<para>For tarball expansion, the name of the top-level directory of the Source Directory
is derived from the Yocto Project release tarball.
For example, downloading and unpacking <filename>&YOCTO_POKY_TARBALL;</filename>
results in a source directory whose top-level folder is named
results in a Source Directory whose top-level folder is named
<filename>&YOCTO_POKY;</filename>.
If you create a local copy of the Git repository, then you can name the repository
anything you like.
@@ -367,15 +366,15 @@
So, for example, cloning the <filename>poky</filename> Git repository results in a
local Git repository whose top-level folder is also named <filename>poky</filename>.</para>
<para>It is important to understand the differences between the source directory created
<para>It is important to understand the differences between the Source Directory created
by unpacking a released tarball as compared to cloning
<filename>git://git.yoctoproject.org/poky</filename>.
When you unpack a tarball, you have an exact copy of the files based on the time of
release - a fixed release point.
Any changes you make to your local files in the source directory are on top of the release.
Any changes you make to your local files in the Source Directory are on top of the release.
On the other hand, when you clone the <filename>poky</filename> Git repository, you have an
active development repository.
In this case, any local changes you make to the source directory can be later applied
In this case, any local changes you make to the Source Directory can be later applied
to active development branches of the upstream <filename>poky</filename> Git
repository.</para>
@@ -439,7 +438,7 @@
<filename>meta/files/common-licenses</filename>.
Once the build completes, the list of all licenses found and used during that build are
kept in the
<link linkend='build-directory'>build directory</link> at
<link linkend='build-directory'>Build Directory</link> at
<filename>tmp/deploy/images/licenses</filename>.
</para>
@@ -467,6 +466,12 @@
<ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta/files/common-licenses'>here</ulink>.
This wiki page discusses the license infrastructure used by the Yocto Project.
</para>
<para>
For information that can help you to maintain compliance with various open source licensing
during the lifecycle of a product created using the Yocto Project, see the
"<link linkend='maintaining-open-source-license-compliance-during-your-products-lifecycle'>Maintaining Open Source License Compliance During Your Product's Lifecycle</link>" section.
</para>
</section>
<section id='git'>

View File

@@ -56,8 +56,9 @@
OpenSUSE, Ubuntu, or CentOS as these releases are frequently tested against the Yocto Project
and officially supported.
For a list of the distributions under validation and their status, see the
<ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution
Support</ulink> wiki page.</para>
"<ulink url='&YOCTO_DOCS_REF_URL;#detailed-supported-distros'>Supported Linux Distributions</ulink>" section
in the Yocto Project Reference Manual and the wiki page at
<ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution Support</ulink>.</para>
<para>
You should also have about 100 gigabytes of free disk space for building images.
</para></listitem>
@@ -69,12 +70,12 @@
for the supported distributions.</para></listitem>
<listitem id='local-yp-release'><para><emphasis>Yocto Project Release:</emphasis>
You need a release of the Yocto Project.
You set up a with local <link linkend='source-directory'>source directory</link>
You set up a with local <link linkend='source-directory'>Source Directory</link>
one of two ways depending on whether you
are going to contribute back into the Yocto Project or not.
<note>
Regardless of the method you use, this manual refers to the resulting local
hierarchical set of files as the "source directory."
hierarchical set of files as the "Source Directory."
</note>
<itemizedlist>
<listitem><para><emphasis>Tarball Extraction:</emphasis> If you are not going to contribute
@@ -83,7 +84,7 @@
Once you have the tarball, just extract it into a directory of your choice.</para>
<para>For example, the following command extracts the Yocto Project &DISTRO;
release tarball
into the current working directory and sets up the local source directory
into the current working directory and sets up the local Source Directory
with a top-level folder named <filename>&YOCTO_POKY;</filename>:
<literallayout class='monospaced'>
$ tar xfj &YOCTO_POKY_TARBALL;
@@ -125,11 +126,11 @@
You can find Git repositories of supported Yocto Project Kernels organized under
"Yocto Linux Kernel" in the Yocto Project Source Repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>.</para>
<para>This setup involves creating a bare clone of the Yocto Project kernel and then
<para>This setup can involve creating a bare clone of the Yocto Project kernel and then
copying that cloned repository.
You can create the bare clone and the copy of the bare clone anywhere you like.
For simplicity, it is recommended that you create these structures outside of the
source directory (usually <filename>poky</filename>).</para>
Source Directory (usually <filename>poky</filename>).</para>
<para>As an example, the following transcript shows how to create the bare clone
of the <filename>linux-yocto-3.4</filename> kernel and then create a copy of
that clone.
@@ -152,8 +153,8 @@
<para>Now create a clone of the bare clone just created:
<literallayout class='monospaced'>
$ git clone linux-yocto-3.4.git my-linux-yocto-3.4-work
Initialized empty Git repository in /home/scottrif/my-linux-yocto-3.4-work/.git/
Checking out files: 100% (37619/37619), done.
Cloning into 'my-linux-yocto-3.4-work'...
done.
</literallayout></para></listitem>
<listitem id='poky-extras-repo'><para><emphasis>
The <filename>poky-extras</filename> Git Repository</emphasis>:
@@ -168,9 +169,9 @@
<para>You can find the <filename>poky-extras</filename> Git Repository in the
"Yocto Metadata Layers" area of the Yocto Project Source Repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>.
It is good practice to create this Git repository inside the source directory.</para>
It is good practice to create this Git repository inside the Source Directory.</para>
<para>Following is an example that creates the <filename>poky-extras</filename> Git
repository inside the source directory, which is named <filename>poky</filename>
repository inside the Source Directory, which is named <filename>poky</filename>
in this case:
<literallayout class='monospaced'>
$ cd ~/poky
@@ -192,7 +193,7 @@
layer.
You can get set up for BSP development one of two ways: tarball extraction or
with a local Git repository.
It is a good idea to use the same method that you used to set up the source directory.
It is a good idea to use the same method that you used to set up the Source Directory.
Regardless of the method you use, the Yocto Project uses the following BSP layer
naming scheme:
<literallayout class='monospaced'>
@@ -218,13 +219,13 @@
Again, this method just produces a snapshot of the BSP layer in the form
of a hierarchical directory structure.</para></listitem>
<listitem><para><emphasis>Git Repository Method:</emphasis> If you are working
with a local Git repository for your source directory, you should also use this method
with a local Git repository for your Source Directory, you should also use this method
to set up the <filename>meta-intel</filename> Git repository.
You can locate the <filename>meta-intel</filename> Git repository in the
"Yocto Metadata Layers" area of the Yocto Project Source Repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>.</para>
<para>Typically, you set up the <filename>meta-intel</filename> Git repository inside
the source directory.
the Source Directory.
For example, the following transcript shows the steps to clone the
<filename>meta-intel</filename>
Git repository inside the local <filename>poky</filename> Git repository.
@@ -266,13 +267,13 @@
<para>
The build process is as follows:
<orderedlist>
<listitem><para>Make sure you have set up the source directory described in the
<listitem><para>Make sure you have set up the Source Directory described in the
previous section.</para></listitem>
<listitem><para>Initialize the build environment by sourcing a build environment
script.</para></listitem>
<listitem><para>Optionally ensure the <filename>conf/local.conf</filename> configuration file,
which is found in the
<link linkend='build-directory'>build directory</link>,
<link linkend='build-directory'>Build Directory</link>,
is set up how you want it.
This file defines many aspects of the build environment including
the target machine architecture through the
@@ -298,7 +299,7 @@
<para>
Another option you have to get started is to use pre-built binaries.
The Yocto Project provides many types of binaries with each release.
See the <ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>
See the "<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>"
chapter in the Yocto Project Reference Manual
for descriptions of the types of binaries that ship with a Yocto Project
release.

View File

@@ -41,7 +41,7 @@
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>Sometime in 2012</date>
<date>October 2012</date>
<revremark>Released with the Yocto Project 1.3 Release.</revremark>
</revision>
</revhistory>
@@ -76,13 +76,9 @@
<xi:include href="dev-manual-newbie.xml"/>
<xi:include href="dev-manual-common-tasks.xml"/>
<xi:include href="dev-manual-model.xml"/>
<xi:include href="dev-manual-bsp-appendix.xml"/>
<xi:include href="dev-manual-kernel-appendix.xml"/>
<xi:include href="dev-manual-common-tasks.xml"/>
</book>
<!--

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -320,7 +320,7 @@
Conceptually, configuration of a Yocto Project kernel occurs similarly to that needed for any
Linux kernel.
The build process for a Yocto Project kernel uses a <filename>.config</filename> file, which
is created through the Linux Kernel Coinfiguration (LKC) tool.
is created through the Linux Kernel Configuration (LKC) tool.
You can directly set various configurations in the
<filename>.config</filename> file by using the <filename>menuconfig</filename>
tool as built by BitBake.
@@ -344,7 +344,7 @@
After the tool is built, you can interact with it normally.
You can see how <filename>menuconfig</filename> is used to change a simple
kernel configuration in the
"<ulink url='&YOCTO_DOCS_DEV_URL;#changing-the-config-smp-configuration-using-menuconfig'>Changing the&nbsp;&nbsp;<filename>CONFIG_SMP</filename> Configuration Using&nbsp;&nbsp;<filename>menuconfig</filename></ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#configuring-the-kernel'>Configuring the Kernel</ulink>"
section of the Yocto Project Development Manual.
For general information on <filename>menuconfig</filename>, see
<ulink url='http://en.wikipedia.org/wiki/Menuconfig'></ulink>.

View File

@@ -55,7 +55,9 @@
"<ulink url='&YOCTO_DOCS_DEV_URL;#kernel-modification-workflow'>Kernel Modification Workflow</ulink>"
</para></listitem>
<listitem><para>
"<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-kernel-appendix'>Kernel Modification Example</ulink>"</para></listitem>
"<ulink url='&YOCTO_DOCS_DEV_URL;#patching-the-kernel'>Patching the Kernel</ulink>"</para></listitem>
<listitem><para>
"<ulink url='&YOCTO_DOCS_DEV_URL;#configuring-the-kernel'>Configuring the Kernel</ulink>"</para></listitem>
</itemizedlist>
</para>

View File

@@ -159,8 +159,9 @@
</para>
<itemizedlist>
<listitem><para>The <filename>SRC_URI</filename> points to the kernel Git
repository.</para></listitem>
<listitem><para>The
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink> points
to the kernel Git repository.</para></listitem>
<listitem><para>A BSP build branch exists.
This branch has the following form:
<literallayout class='monospaced'>
@@ -784,9 +785,9 @@
This section overviews the process of creating a BSP based on an
existing similar BSP.
The information is introductory in nature and does not provide step-by-step examples.
For detailed information on how to create a BSP given an existing similar BSP, see
the "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-bsp-appendix'>BSP Development
Example</ulink>" appendix in the Yocto Project Development Manual, or see the
For detailed information on how to create a new BSP, see
the "<ulink url='&YOCTO_DOCS_BSP_URL;#creating-a-new-bsp-layer-using-the-yocto-bsp-script'>Creating a New BSP Layer Using the yocto-bsp Script</ulink>" section in the
Yocto Project Board Support Package (BSP) Developer's Guide, or see the
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_creating_one_generic_Atom_BSP_from_another'>Transcript:_creating_one_generic_Atom_BSP_from_another</ulink>
wiki page.
</para>
@@ -794,9 +795,10 @@
<para>
The basic steps you need to follow are:
<orderedlist>
<listitem><para><emphasis>Make sure you have set up a local source directory:</emphasis>
You must create a local <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source
directory</ulink> by either creating a Git repository (recommended) or
<listitem><para><emphasis>Make sure you have set up a local Source Directory:</emphasis>
You must create a local
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
by either creating a Git repository (recommended) or
extracting a Yocto Project release tarball.</para></listitem>
<listitem><para><emphasis>Choose an existing BSP available with the Yocto Project:</emphasis>
Try to map your board features as closely to the features of a BSP that is

View File

@@ -56,7 +56,7 @@
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>Sometime in 2012</date>
<date>October 2012</date>
<revremark>Released with the Yocto Project 1.3 Release.</revremark>
</revision>
</revhistory>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -166,7 +166,7 @@
<answer>
<para>
The OpenEmbedded build system can build packages in various formats such as
<filename>ipk</filename> for <filename>ipkg</filename>/<filename>opkg</filename>,
<filename>ipk</filename> for <filename>opkg</filename>,
Debian package (<filename>.deb</filename>), or RPM.
The packages can then be upgraded using the package tools on the device, much like
on a desktop distribution such as Ubuntu or Fedora.

View File

@@ -87,10 +87,198 @@
<section id='intro-requirements'>
<title>System Requirements</title>
<para>
For Yocto Project system requirements, see the
<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>
What You Need and How You Get It</ulink> section in the Yocto Project Quick Start.
For general Yocto Project system requirements, see the
"<ulink url='&YOCTO_DOCS_QS_URL;#yp-resources'>What You Need and How You Get It</ulink>" section
in the Yocto Project Quick Start.
The remainder of this section provides details on system requirements
not covered in the Yocto Project Quick Start.
</para>
<section id='detailed-supported-distros'>
<title>Supported Linux Distributions</title>
<para>
Currently, the Yocto Project is supported on the following distributions:
<itemizedlist>
<listitem><para>Ubuntu 10.04.4 LTS</para></listitem>
<listitem><para>Ubuntu 11.10</para></listitem>
<listitem><para>Ubuntu 12.04.1 LTS</para></listitem>
<listitem><para>Ubuntu 12.04.1 LTS</para></listitem>
<listitem><para>Ubuntu 12.10</para></listitem>
<listitem><para>Fedora release 16 (Verne)</para></listitem>
<listitem><para>Fedora release 17 (Beefy Miracle)</para></listitem>
<listitem><para>Fedora release 18 (Spherical Cow)</para></listitem>
<listitem><para>CentOS release 5.6 (Final)</para></listitem>
<listitem><para>CentOS release 5.7 (Final)</para></listitem>
<listitem><para>CentOS release 5.8 (Final)</para></listitem>
<listitem><para>CentOS release 6.3 (Final)</para></listitem>
<listitem><para>Debian GNU/Linux 6.0.6 (squeeze)</para></listitem>
<listitem><para>openSUSE 11.4</para></listitem>
<listitem><para>openSUSE 12.1</para></listitem>
<listitem><para>openSUSE 12.2</para></listitem>
</itemizedlist>
</para>
<note>
For additional information on distributions that support the
Yocto Project, see the
<ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution Support</ulink> wiki page.
</note>
</section>
<section id='required-packages-for-the-host-development-system'>
<title>Required Packages for the Host Development System</title>
<para>
The list of packages you need on the host development system can
be large when covering all build scenarios using the Yocto Project.
This section provides required packages by Linux distribution and
further categorized by function.
</para>
<section id='ubuntu-packages'>
<title>Ubuntu</title>
<para>
The following list shows the required packages by function
given a supported Ubuntu Linux distribution:
<itemizedlist>
<listitem><para><emphasis>Essentials:</emphasis>
Packages needed to build an image on a headless
system:
<literallayout class='monospaced'>
$ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL;
</literallayout></para></listitem>
<listitem><para><emphasis>Graphical Extras:</emphasis>
Packages recommended if the host system has graphics support:
<literallayout class='monospaced'>
$ sudo apt-get install libsdl1.2-dev xterm
</literallayout></para></listitem>
<listitem><para><emphasis>Documentation:</emphasis>
Packages needed if you are going to build out the
Yocto Project documentation manuals:
<literallayout class='monospaced'>
$ sudo apt-get install make xsltproc docbook-utils fop
</literallayout></para></listitem>
<listitem><para><emphasis>ADT Installer Extras:</emphasis>
Packages needed if you are going to be using the
<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-adt-installer'>Application Development Toolkit (ADT) Installer</ulink>:
<literallayout class='monospaced'>
$ sudo apt-get install autoconf automake libtool libglib2.0-dev
</literallayout></para></listitem>
</itemizedlist>
</para>
</section>
<section id='fedora-packages'>
<title>Fedora Packages</title>
<para>
The following list shows the required packages by function
given a supported Fedora Linux distribution:
<itemizedlist>
<listitem><para><emphasis>Essentials:</emphasis>
Packages needed to build an image for a headless
system:
<literallayout class='monospaced'>
$ sudo yum install &FEDORA_HOST_PACKAGES_ESSENTIAL;
</literallayout></para></listitem>
<listitem><para><emphasis>Graphical Extras:</emphasis>
Packages recommended if the host system has graphics support:
<literallayout class='monospaced'>
$ sudo yum install SDL-devel xterm
</literallayout></para></listitem>
<listitem><para><emphasis>Documentation:</emphasis>
Packages needed if you are going to build out the
Yocto Project documentation manuals:
<literallayout class='monospaced'>
$ sudo yum install make docbook-style-dsssl docbook-style-xsl \
docbook-dtds docbook-utils fop libxslt
</literallayout></para></listitem>
<listitem><para><emphasis>ADT Installer Extras:</emphasis>
Packages needed if you are going to be using the
<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-adt-installer'>Application Development Toolkit (ADT) Installer</ulink>:
<literallayout class='monospaced'>
$ sudo yum install autoconf automake libtool glib2-devel
</literallayout></para></listitem>
</itemizedlist>
</para>
</section>
<section id='opensuse-packages'>
<title>OpenSUSE Packages</title>
<para>
The following list shows the required packages by function
given a supported OpenSUSE Linux distribution:
<itemizedlist>
<listitem><para><emphasis>Essentials:</emphasis>
Packages needed to build an image for a headless
system:
<literallayout class='monospaced'>
$ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL;
</literallayout></para></listitem>
<listitem><para><emphasis>Graphical Extras:</emphasis>
Packages recommended if the host system has graphics support:
<literallayout class='monospaced'>
$ sudo zypper install libSDL-devel xterm
</literallayout></para></listitem>
<listitem><para><emphasis>Documentation:</emphasis>
Packages needed if you are going to build out the
Yocto Project documentation manuals:
<literallayout class='monospaced'>
$ sudo zypper install make fop xsltproc
</literallayout></para></listitem>
<listitem><para><emphasis>ADT Installer Extras:</emphasis>
Packages needed if you are going to be using the
<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-adt-installer'>Application Development Toolkit (ADT) Installer</ulink>:
<literallayout class='monospaced'>
$ sudo zypper install autoconf automake libtool glib2-devel
</literallayout></para></listitem>
</itemizedlist>
</para>
</section>
<section id='centos-packages'>
<title>CentOS Packages</title>
<para>
The following list shows the required packages by function
given a supported CentOS Linux distribution:
<itemizedlist>
<listitem><para><emphasis>Essentials:</emphasis>
Packages needed to build an image for a headless
system:
<literallayout class='monospaced'>
$ sudo yum -y install &CENTOS_HOST_PACKAGES_ESSENTIAL;
</literallayout></para></listitem>
<listitem><para><emphasis>Graphical Extras:</emphasis>
Packages recommended if the host system has graphics support:
<literallayout class='monospaced'>
$ sudo yum -y install SDL-devel xterm
</literallayout></para></listitem>
<listitem><para><emphasis>Documentation:</emphasis>
Packages needed if you are going to build out the
Yocto Project documentation manuals:
<literallayout class='monospaced'>
$ sudo yum -y install make docbook-style-dsssl docbook-style-xsl \
docbook-dtds docbook-utils fop libxslt
</literallayout></para></listitem>
<listitem><para><emphasis>ADT Installer Extras:</emphasis>
Packages needed if you are going to be using the
<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-adt-installer'>Application Development Toolkit (ADT) Installer</ulink>:
<literallayout class='monospaced'>
$ sudo yum -y install autoconf automake libtool glib2-devel
</literallayout></para></listitem>
</itemizedlist>
<note>Depending on the CentOS version you are using, other requirements
and dependencies might exist.
For details, you should look at the CentOS sections on the
<ulink url='https://wiki.yoctoproject.org/wiki/Poky/GettingStarted/Dependencies'>Poky/GettingStarted/Dependencies</ulink>
wiki page.</note>
</para>
</section>
</section>
</section>
<section id='intro-getit'>
@@ -118,7 +306,7 @@
<title>Development Checkouts</title>
<para>
Development using the Yocto Project requires a local
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
You can set up the source directory by downloading a Yocto Project release tarball and unpacking it,
or by cloning a copy of the upstream
<ulink url='&YOCTO_DOCS_DEV_URL;#poky'>Poky</ulink> Git repository.

View File

@@ -0,0 +1,235 @@
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<chapter id='migration'>
<title>Migrating to a Newer Yocto Project Release</title>
<para>
This chapter provides information you can use to migrate work to a
newer Yocto Project release. You can find the same information in the
release notes for a given release.
</para>
<section id='moving-to-the-yocto-project-1.3-release'>
<title>Moving to the Yocto Project 1.3 Release</title>
<para>
This section provides migration information for moving to the
Yocto Project 1.3 Release.
</para>
<section id='1.3-local-configuration'>
<title>Local Configuration</title>
<para>
Differences include changes for
<link linkend='var-SSTATE_MIRRORS'><filename>SSTATE_MIRRORS</filename></link>
and <filename>bblayers.conf</filename>.
</para>
<section id='migration-1.3-sstate-mirrors'>
<title>SSTATE_MIRRORS</title>
<para>
The shared state cache (sstate-cache) as pointed to by
<link linkend='var-SSTATE_DIR'><filename>SSTATE_DIR</filename></link> by default
now has two-character subdirectories to prevent there being an issue with too
many files in the same directory.
Also, native sstate-cache packages will go into a subdirectory named using
the distro ID string.
If you copy the newly structured sstate-cache to a mirror location
(either local or remote) and then point to it in
<link linkend='var-SSTATE_MIRRORS'><filename>SSTATE_MIRRORS</filename></link>,
you need to append "PATH" to the end of the mirror URL so that
the path used by BitBake before the mirror substitution is
appended to the path used to access the mirror.
Here is an example:
<literallayout class='monospaced'>
SSTATE_MIRRORS = "file://.* http://someserver.tld/share/sstate/PATH"
</literallayout>
</para>
</section>
<section id='migration-1.3-bblayers-conf'>
<title>bblayers.conf</title>
<para>
The <filename>meta-yocto</filename> layer has been split into
two parts: <filename>meta-yocto</filename> and
<filename>meta-yocto-bsp</filename>, corresponding to the
Poky reference distro configuration and the reference
hardware Board Support Packages (BSPs), respectively.
When running BitBake or Hob for the first time after upgrading,
your <filename>conf/bblayers.conf</filename> file will be
updated to handle this change and you will be asked to
re-run/restart for the changes to take effect.
</para>
</section>
</section>
<section id='1.3-recipes'>
<title>Recipes</title>
<para>
Differences include changes for the following:
<itemizedlist>
<listitem><para>Python function whitespace</para></listitem>
<listitem><para><filename>proto=</filename> in <filename>SRC_URI</filename></para></listitem>
<listitem><para><filename>nativesdk</filename></para></listitem>
<listitem><para>Task recipes</para></listitem>
<listitem><para><filename>IMAGE_FEATURES</filename></para></listitem>
<listitem><para>Removed recipes</para></listitem>
</itemizedlist>
</para>
<section id='migration-1.3-python-function-whitespace'>
<title>Python Function Whitespace</title>
<para>
All Python functions must now use four spaces for indentation.
Previously, an inconsistent mix of spaces and tabs existed,
which made extending these functions using
<filename>_append</filename> or <filename>_prepend</filename>
complicated given that Python treats whitespace as
syntactically significant.
If you are defining or extending any Python functions (e.g.
<filename>populate_packages</filename>, <filename>do_unpack</filename>,
<filename>do_patch</filename> and so forth) in custom recipes
or classes, you need to ensure you are using consistent
four-space indentation.
</para>
</section>
<section id='migration-1.3-proto=-in-src-uri'>
<title>proto= in SRC_URI</title>
<para>
Any use of <filename>proto=</filename> in
<link linkend='var-SRC_URI'><filename>SRC_URI</filename></link>
needs to be changed to <filename>protocol=</filename>.
In particular, this applies to the following URIs:
<itemizedlist>
<listitem><para><filename>svn://</filename></para></listitem>
<listitem><para><filename>bzr://</filename></para></listitem>
<listitem><para><filename>hg://</filename></para></listitem>
<listitem><para><filename>osc://</filename></para></listitem>
</itemizedlist>
Other URIs were already using <filename>protocol=</filename>.
This change improves consistency.
</para>
</section>
<section id='migration-1.3-nativesdk'>
<title>nativesdk</title>
<para>
The suffix <filename>nativesdk</filename> is now implemented
as a prefix, which simplifies a lot of the packaging code for
<filename>nativesdk</filename> recipes.
All custom <filename>nativesdk</filename> recipes and any
references need to be updated to use
<filename>nativesdk-*</filename> instead of
<filename>*-nativesdk</filename>.
</para>
</section>
<section id='migration-1.3-task-recipes'>
<title>Task Recipes</title>
<para>
"Task" recipes are now known as "Package groups" and have
been renamed from <filename>task-*.bb</filename> to
<filename>packagegroup-*.bb</filename>.
Existing references to the previous <filename>task-*</filename>
names should work in most cases as there is an automatic
upgrade path for most packages.
However, you should update references in your own recipes and
configurations as they could be removed in future releases.
You should also rename any custom <filename>task-*</filename>
recipes to <filename>packagegroup-*</filename>, and change
them to inherit <filename>packagegroup</filename> instead of
<filename>task</filename>, as well as taking the opportunity
to remove anything now handled by
<filename>packagegroup.bbclass</filename>, such as providing
<filename>-dev</filename> and <filename>-dbg</filename>
packages, setting
<link linkend='var-LIC_FILES_CHKSUM'><filename>LIC_FILES_CHKSUM</filename></link>,
and so forth.
See the
"<link linkend='ref-classes-packagegroup'>Package Groups - packagegroup.bbclass</link>"
section for further details.
</para>
</section>
<section id='migration-1.3-image-features'>
<title>IMAGE_FEATURES</title>
<para>
Image recipes that previously included "apps-console-core"
in <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>
should now include "splash" instead to enable the boot-up
splash screen.
Retaining "apps-console-core" will still include the splash
screen generates a warning.
The "apps-x11-core" and "apps-x11-games"
<filename>IMAGE_FEATURES</filename> features have been removed.
</para>
</section>
<section id='migration-1.3-removed-recipes'>
<title>Removed Recipes</title>
<para>
The following recipes have been removed.
For most of them, it is unlikely that you would have any
references to them in your own metadata.
However, you should check your metadata against this list to be sure:
<itemizedlist>
<listitem><para><emphasis><filename>libx11-trim</filename></emphasis>:
Replaced by <filename>libx11</filename>, which has a negligible
size difference with modern Xorg.</para></listitem>
<listitem><para><emphasis><filename>xserver-xorg-lite</filename></emphasis>:
Use <filename>xserver-xorg</filename>, which has a negligible
size difference when DRI and GLX modules are not installed.</para></listitem>
<listitem><para><emphasis><filename>xserver-kdrive</filename></emphasis>:
Effectively unmaintained for many years.</para></listitem>
<listitem><para><emphasis><filename>mesa-xlib</filename></emphasis>:
No longer serves any purpose.</para></listitem>
<listitem><para><emphasis><filename>galago</filename></emphasis>:
Replaced by telepathy.</para></listitem>
<listitem><para><emphasis><filename>gail</filename></emphasis>:
Functionality was integrated into GTK+ 2.13.</para></listitem>
<listitem><para><emphasis><filename>eggdbus</filename></emphasis>:
No longer needed.</para></listitem>
<listitem><para><emphasis><filename>gcc-*-intermediate</filename></emphasis>:
The build has been restructured to avoid the need for
this step.</para></listitem>
<listitem><para><emphasis><filename>libgsmd</filename></emphasis>:
Unmaintained for many years.
Functionality now provided by
<filename>ofono</filename> instead.</para></listitem>
<listitem><para><emphasis>contacts, dates, tasks, eds-tools</emphasis>:
Largely unmaintained PIM application suite.
It has been moved to <filename>meta-gnome</filename>
in <filename>meta-openembedded</filename>.</para></listitem>
</itemizedlist>
In addition to the previously listed changes, the
<filename>meta-demoapps</filename> directory has also been removed
because the recipes in it were not being maintained and many
had become obsolete or broken.
Additionally, these recipes were not parsed in the default configuration.
Many of these recipes are already provided in an updated and
maintained form within OpenEmbedded community layers such as
<filename>meta-oe</filename> and <filename>meta-gnome</filename>.
For the remainder, you can now find them in the
<filename>meta-extras</filename> repository, which is in the
Yocto Project source repositories.
</para>
</section>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -57,7 +57,7 @@
</revision>
<revision>
<revnumber>1.3</revnumber>
<date>Sometime in 2012</date>
<date>October 2012</date>
<revremark>Released with the Yocto Project 1.3 Release.</revremark>
</revision>
</revhistory>
@@ -89,6 +89,8 @@
<xi:include href="technical-details.xml"/>
<xi:include href="migration.xml"/>
<xi:include href="ref-structure.xml"/>
<xi:include href="ref-bitbake.xml"/>

View File

@@ -36,7 +36,7 @@
<para>
The first thing BitBake does is look for the <filename>bitbake.conf</filename> file.
This file resides in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
within the <filename>meta/conf/</filename> directory.
BitBake finds it by examining its
<link linkend='var-BBPATH'><filename>BBPATH</filename></link> environment

View File

@@ -13,7 +13,7 @@
Class files are identified by the extension <filename>.bbclass</filename> and are usually placed
in a <filename>classes/</filename> directory beneath the
<filename>meta*/</filename> directory found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
Class files can also be pointed to by BUILDDIR (e.g. <filename>build/</filename>)in the same way as
<filename>.conf</filename> files in the <filename>conf</filename> directory.
Class files are searched for in <link linkend='var-BBPATH'><filename>BBPATH</filename></link>
@@ -302,7 +302,7 @@
<filename><link linkend='var-PACKAGE_CLASSES'>PACKAGE_CLASSES</link></filename>
variable defined in the <filename>local.conf</filename> configuration file,
which is located in the <filename>conf</filename> folder of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
When defining the variable, you can specify one or more package types.
Since images are generated from packages, a packaging class is
needed to enable image generation.
@@ -538,7 +538,7 @@
you can use this class to specify those packages and associate the users and groups
with those packages.
The <filename>meta-skeleton/recipes-skeleton/useradd/useradd-example.bb</filename>
recipe in the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
recipe in the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
provides a simple exmample that shows how to add three
users and groups to two packages.
See the <filename>useradd-example.bb</filename> for more information on how to
@@ -568,7 +568,7 @@
<link linkend='var-B'><filename>B</filename></link> variable to point to the directory in
which the OpenEmbedded build system places the generated objects built from the recipes.
By default, the <filename>B</filename> directory is set to the following, which is separate from the
source directory (<filename>S</filename>):
Source Directory (<filename>S</filename>):
<literallayout class='monospaced'>
${WORKDIR}/${BPN}-{PV}/
</literallayout>
@@ -616,7 +616,7 @@
Thus far, this chapter has discussed only the most useful and important
classes.
However, other classes exist within the <filename>meta/classes</filename> directory
in the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
in the <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
You can examine the <filename>.bbclass</filename> files directly for more
information.
</para>

View File

@@ -28,8 +28,9 @@
<title>Distro</title>
<para>
The items below are valid options for
<filename><link linkend='var-DISTRO_FEATURES'>DISTRO_FEATURES</link></filename>:
The items below are features you can use with
<link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>.
This list only represents features as shipped with the Yocto Project metadata:
<itemizedlist>
<listitem><para><emphasis>alsa:</emphasis> ALSA support will be included (OSS compatibility
kernel modules will be installed if available).</para></listitem>
@@ -74,8 +75,9 @@
<title>Machine</title>
<para>
The items below are valid options for
<filename><link linkend='var-MACHINE_FEATURES'>MACHINE_FEATURES</link></filename>:
The items below are features you can use with
<link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>.
This list only represents features as shipped with the Yocto Project metadata:
<itemizedlist>
<listitem><para><emphasis>acpi:</emphasis> Hardware has ACPI (x86/x86_64 only)
</para></listitem>
@@ -171,6 +173,83 @@
</itemizedlist>
</para>
</section>
<section id='ref-features-backfill'>
<title>Feature Backfilling</title>
<para>
Sometimes it is necessary in the OpenEmbedded build system to extend
<link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>
or <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
to control functionality that was previously enabled and not able
to be disabled.
For these cases, we need to add an
additional feature item to appear in one of these variables,
but we do not want to force developers who have existing values
of the variables in their configuration to add the new feature
in order to retain the same overall level of functionality.
Thus, the OpenEmbedded build system has a mechanism to
automatically "backfill" these added features into existing
distro or machine configurations.
You can see the list of features for which this is done by
finding the
<link linkend='var-DISTRO_FEATURES_BACKFILL'><filename>DISTRO_FEATURES_BACKFILL</filename></link>
and <link linkend='var-MACHINE_FEATURES_BACKFILL'><filename>MACHINE_FEATURES_BACKFILL</filename></link>
variables in the <filename>meta/conf/bitbake.conf</filename> file.
</para>
<para>
Because such features are backfilled by default into all
configurations as described in the previous paragraph, developers
who wish to disable the new features need to be able to selectively
prevent the backfilling from occurring.
They can do this by adding the undesired feature or features to the
<link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link>
or <link linkend='var-MACHINE_FEATURES_BACKFILL_CONSIDERED'><filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename></link>
variables for distro features and machine features respectively.
</para>
<para>
Here are two examples to help illustrate feature backfilling:
<itemizedlist>
<listitem><para><emphasis>The "pulseaudio" distro feature option</emphasis>:
Previously, PulseAudio support was enabled within the Qt and
GStreamer frameworks.
Because of this, the feature is backfilled and thus
enabled for all distros through the
<filename>DISTRO_FEATURES_BACKFILL</filename>
variable in the <filename>meta/conf/bitbake.conf</filename> file.
However, your distro needs to disable the feature.
You can disable the feature without affecting
other existing distro configurations that need PulseAudio support
by adding "pulseaudio" to
<filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename>
in your distro's <filename>.conf</filename> file.
Adding the feature to this variable when it also
exists in the <filename>DISTRO_FEATURES_BACKFILL</filename>
variable prevents the build system from adding the feature to
your configuration's <filename>DISTRO_FEATURES</filename>, effectively disabling
the feature for that particular distro.</para></listitem>
<listitem><para><emphasis>The "rtc" machine feature option</emphasis>:
Previously, real time clock (RTC) support was enabled for all
target devices.
Because of this, the feature is backfilled and thus enabled
for all machines through the <filename>MACHINE_FEATURES_BACKFILL</filename>
variable in the <filename>meta/conf/bitbake.conf</filename> file.
However, your target device does not have this capability.
You can disable RTC support for your device without
affecting other machines that need RTC support
by adding the feature to your machine's
<filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename>
list in the machine's <filename>.conf</filename> file.
Adding the feature to this variable when it also
exists in the <filename>MACHINE_FEATURES_BACKFILL</filename>
variable prevents the build system from adding the feature to
your configuration's <filename>MACHINE_FEATURES</filename>, effectively
disabling RTC support for that particular machine.</para></listitem>
</itemizedlist>
</para>
</section>
</chapter>
<!--

View File

@@ -7,14 +7,14 @@
<title>Source Directory Structure</title>
<para>
The <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink> consists of several components.
The <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink> consists of several components.
Understanding them and knowing where they are located is key to using the Yocto Project well.
This chapter describes the source directory and gives information about the various
This chapter describes the Source Directory and gives information about the various
files and directories.
</para>
<para>
For information on how to establish a local source directory on your development system, see the
For information on how to establish a local Source Directory on your development system, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#getting-setup'>Getting Set Up</ulink>"
section in the Yocto Project Development Manual.
</para>
@@ -26,7 +26,7 @@
<title><filename>bitbake/</filename></title>
<para>
The <ulink url='source-directory'>source directory</ulink>
The <ulink url='source-directory'>Source Directory</ulink>
includes a copy of BitBake for ease of use.
The copy usually matches the current stable BitBake release from the BitBake project.
BitBake, a metadata interpreter, reads the Yocto Project metadata and runs the tasks
@@ -39,7 +39,7 @@
When you run the <filename>bitbake</filename> command, the wrapper script in
<filename>scripts/</filename> is executed to run the main BitBake executable,
which resides in the <filename>bitbake/bin/</filename> directory.
Sourcing the <link linkend="structure-core-script">oe-init-build-env</link>
Sourcing the <link linkend="structure-core-script">&OE_INIT_FILE;</link>
script places the <filename>scripts</filename> and <filename>bitbake/bin</filename>
directories (in that order) into the shell's <filename>PATH</filename> environment
variable.
@@ -59,19 +59,19 @@
This directory contains user configuration files and the output
generated by the OpenEmbedded build system in its standard configuration where
the source tree is combined with the output.
The <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
The <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
is created initially when you <filename>source</filename>
the OpenEmbedded build environment setup script <filename>oe-init-build-env</filename>.
the OpenEmbedded build environment setup script <filename>&OE_INIT_FILE;</filename>.
</para>
<para>
It is also possible to place output and configuration
files in a directory separate from the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
by providing a directory name when you <filename>source</filename>
the setup script.
For information on separating output from your local source directory files, see <link
linkend='structure-core-script'>oe-init-build-env</link>.
For information on separating output from your local Source Directory files, see <link
linkend='structure-core-script'>&OE_INIT_FILE;</link>.
</para>
</section>
@@ -93,25 +93,37 @@
<para>
This directory contains the OpenEmbedded Core metadata.
The directory holds machine definitions, the Yocto Project distribution,
and the packages that make up a given system.
The directory holds recipes, common classes, and machine
configuration for emulated targets (qemux86, qemuarm,
and so on.)
</para>
</section>
<section id='structure-core-meta-demoapps'>
<title><filename>meta-demoapps/</filename></title>
<section id='structure-core-meta-yocto'>
<title><filename>meta-yocto/</filename></title>
<para>
This directory contains recipes for applications and demos that are not part of the
OpenEmbedded core.
This directory contains the configuration for the Poky
reference distribution.
</para>
</section>
<section id='structure-core-meta-rt'>
<title><filename>meta-rt/</filename></title>
<section id='structure-core-meta-yocto-bsp'>
<title><filename>meta-yocto-bsp/</filename></title>
<para>
This directory contains recipes for real-time kernels.
This directory contains the Yocto Project reference
hardware BSPs.
</para>
</section>
<section id='structure-meta-hob'>
<title><filename>meta-hob/</filename></title>
<para>
This directory contains template recipes used by the
<ulink url='&YOCTO_HOME_URL;/projects/hob'>Hob</ulink>
build UI.
</para>
</section>
@@ -129,7 +141,7 @@
<para>
This directory contains various integration scripts that implement
extra functionality in the Yocto Project environment (e.g. QEMU scripts).
The <link linkend="structure-core-script">oe-init-build-env</link> script appends this
The <link linkend="structure-core-script">&OE_INIT_FILE;</link> script appends this
directory to the shell's <filename>PATH</filename> environment variable.
</para>
@@ -141,7 +153,7 @@
</section>
<section id='structure-core-script'>
<title><filename>oe-init-build-env</filename></title>
<title><filename>&OE_INIT_FILE;</filename></title>
<para>
This script sets up the OpenEmbedded build environment.
@@ -154,16 +166,16 @@
</para>
<para>
By default, running this script without a build directory argument creates the
By default, running this script without a Build Directory argument creates the
<filename>build</filename> directory.
If you provide a build directory argument when you <filename>source</filename>
If you provide a Build Directory argument when you <filename>source</filename>
the script, you direct OpenEmbedded build system to create a
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink> of your choice.
For example, the following command creates a build directory named
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> of your choice.
For example, the following command creates a Build Directory named
<filename>mybuilds</filename> that is outside of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>:
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>:
<literallayout class='monospaced'>
$ source oe-init-build-env ~/mybuilds
$ source &OE_INIT_FILE; ~/mybuilds
</literallayout>
</para>
</section>
@@ -205,9 +217,13 @@
<para>
Edit this file to set the <filename><link linkend='var-MACHINE'>MACHINE</link></filename>
for which you want to build, which package types you
wish to use (<filename>PACKAGE_CLASSES</filename>), or where you want to downloaded files
(<filename><link linkend='var-DL_DIR'>DL_DIR</link></filename>).
for which you want to build, which package types you wish to use
(<link linkend='var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></link>),
where you want to downloaded files
(<filename><link linkend='var-DL_DIR'>DL_DIR</link></filename>),
and how you want your host machine to use resources
(<link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link> and
<link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></link>).
</para>
</section>
@@ -371,7 +387,7 @@
data.
Packages that need to share output with other packages do so within this directory.
The directory is subdivided by architecture so multiple builds can run within
the one build directory.
the one Build Directory.
</para>
</section>

File diff suppressed because it is too large Load Diff

View File

@@ -120,20 +120,13 @@
<para>
This section lists variables that are required for recipes.
<itemizedlist>
<listitem><para><filename><link linkend='var-DESCRIPTION'>DESCRIPTION</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-LICENSE'>LICENSE</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-LIC_FILES_CHKSUM'>LIC_FILES_CHKSUM</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-SECTION'>SECTION</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-HOMEPAGE'>HOMEPAGE</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-AUTHOR'>AUTHOR</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-SRC_URI'>SRC_URI</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-SRC_URI'>SRC_URI</link></filename> - used
in recipes that fetch local or remote files.
</para></listitem>
</itemizedlist>
</para>
</section>
@@ -180,8 +173,6 @@
<para>
This section lists variables that define extra build information for recipes.
<itemizedlist>
<listitem><para><filename><link linkend='var-DISTRO_PN_ALIAS'>DISTRO_PN_ALIAS</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-EXTRA_OECMAKE'>EXTRA_OECMAKE</link>
</filename></para></listitem>
<listitem><para><filename><link linkend='var-EXTRA_OECONF'>EXTRA_OECONF</link>

View File

@@ -129,7 +129,7 @@
between metadata files.
An example is the Autotools class, which contains
common settings for any application that Autotools uses.
The "<link linkend='ref-classes'>Reference: Classes</link>" chapter provides details
The "<link linkend='ref-classes'>Classes</link>" chapter provides details
about common classes and how to use them.
</para>
</section>
@@ -143,7 +143,7 @@
These files fall into several areas that define machine configuration options,
distribution configuration options, compiler tuning options, general common configuration
options and user configuration options (<filename>local.conf</filename>, which is found
in the <ulink url='build-directory'>build directory</ulink>).
in the <ulink url='build-directory'>Build Directory</ulink>).
</para>
</section>
</section>
@@ -304,7 +304,7 @@
Information based on direct inputs is referred to as the "basehash" in the
code.
However, there is still the question of a task's indirect inputs - the
things that were already built and present in the build directory.
things that were already built and present in the Build Directory.
The checksum (or signature) for a particular task needs to add the hashes
of all the tasks on which the particular task depends.
Choosing which dependencies to add is a policy decision.
@@ -442,14 +442,24 @@
<para>
Behind the scenes, the shared state code works by looking in
<filename>SSTATE_DIR</filename> and
<filename>SSTATE_MIRRORS</filename> for shared state files.
<link linkend='var-SSTATE_DIR'><filename>SSTATE_DIR</filename></link> and
<link linkend='var-SSTATE_MIRRORS'><filename>SSTATE_MIRRORS</filename></link>
for shared state files.
Here is an example:
<literallayout class='monospaced'>
SSTATE_MIRRORS ?= "\
file://.* http://someserver.tld/share/sstate/ \n \
file://.* file:///some/local/dir/sstate/"
file://.* http://someserver.tld/share/sstate/PATH \n \
file://.* file:///some/local/dir/sstate/PATH"
</literallayout>
<note>
The shared state directory (<filename>SSTATE_DIR</filename>) is
organized into two-character subdirectories, where the subdirectory
names are based on the first two characters of the hash.
If the shared state directory structure for a mirror has the
same structure as <filename>SSTATE_DIR</filename>, you must
specify "PATH" as part of the URI to enable the build system
to map to the appropriate subdirectory.
</note>
</para>
<para>
@@ -640,7 +650,7 @@
Yocto Project, you can follow these steps to use the x32 spABI:
<itemizedlist>
<listitem><para>Add the <filename>experimental/meta-x32</filename> layer to your local
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
You can find the <filename>experimental/meta-x32</filename> source repository at
<ulink url='&YOCTO_GIT_URL;'></ulink>.</para></listitem>
<listitem><para>Edit your <filename>conf/bblayers.conf</filename> file so that it includes
@@ -650,6 +660,7 @@
BBLAYERS ?= " \
/home/nitin/prj/poky.git/meta \
/home/nitin/prj/poky.git/meta-yocto \
/home/nitin/prj/poky.git/meta-yocto-bsp \
/home/nitin/prj/meta-x32.git \
"
</literallayout></para></listitem>
@@ -687,6 +698,13 @@
which by default are disabled.
</para>
<para>
For information that can help you maintain compliance with various open
source licensing during the lifecycle of the product, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#maintaining-open-source-license-compliance-during-your-products-lifecycle'>Maintaining Open Source License Compliance During Your Project's Lifecycle</ulink>" section
in the Yocto Project Development Manual.
</para>
<section id="usingpoky-configuring-LIC_FILES_CHKSUM">
<title>Tracking License Changes</title>

View File

@@ -30,20 +30,20 @@
The first thing you need to do is set up the OpenEmbedded build environment by sourcing
the environment setup script as follows:
<literallayout class='monospaced'>
$ source oe-init-build-env [build_dir]
$ source &OE_INIT_FILE; [build_dir]
</literallayout>
</para>
<para>
The <filename>build_dir</filename> is optional and specifies the directory the
OpenEmbedded build system uses for the build -
the <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>.
If you do not specify a build directory it defaults to <filename>build</filename>
the <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
If you do not specify a Build Directory it defaults to <filename>build</filename>
in your current working directory.
A common practice is to use a different build directory for different targets.
A common practice is to use a different Build Directory for different targets.
For example, <filename>~/build/x86</filename> for a <filename>qemux86</filename>
target, and <filename>~/build/arm</filename> for a <filename>qemuarm</filename> target.
See <link linkend="structure-core-script">oe-init-build-env</link>
See <link linkend="structure-core-script">&OE_INIT_FILE;</link>
for more information on this script.
</para>
@@ -58,7 +58,7 @@
The <filename>target</filename> is the name of the recipe you want to build.
Common targets are the images in <filename>meta/recipes-core/images</filename>,
<filename>/meta/recipes-sato/images</filename>, etc. all found in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
Or, the target can be the name of a recipe for a specific piece of software such as
<application>busybox</application>.
For more details about the images the OpenEmbedded build system supports, see the
@@ -91,7 +91,7 @@
<para>
Once an image has been built, it often needs to be installed.
The images and kernels built by the OpenEmbedded build system are placed in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink> in
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> in
<filename class="directory">tmp/deploy/images</filename>.
For information on how to run pre-built images such as <filename>qemux86</filename>
and <filename>qemuarm</filename>, see the
@@ -268,7 +268,7 @@
For guidance on how logging is handled in both Python and Bash recipes, see the
<filename>logging.bbclass</filename> file in the
<filename>meta/classes</filename> folder of the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>.
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>.
</para>
<section id='logging-with-python'>

View File

@@ -48,3 +48,10 @@
<!ENTITY YOCTO_POKY_TARBALL "&YOCTO_POKY;.tar.bz2">
<!ENTITY OE_INIT_PATH "&YOCTO_POKY;/oe-init-build-env">
<!ENTITY OE_INIT_FILE "oe-init-build-env">
<!ENTITY UBUNTU_HOST_PACKAGES_ESSENTIAL "awk wget git-core diffstat unzip texinfo build-essential chrpath">
<!ENTITY FEDORA_HOST_PACKAGES_ESSENTIAL "awk make wget tar bzip2 gzip python unzip perl patch diffutils diffstat git
cpp gcc gcc-c++ eglibc-devel texinfo chrpath ccache">
<!ENTITY OPENSUSE_HOST_PACKAGES_ESSENTIAL "python gcc gcc-c++ git chrpath make wget diffstat texinfo python-curses">
<!ENTITY CENTOS_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python unzip perl patch diffutils diffstat git
cpp gcc gcc-c++ glibc-devel texinfo chrpath">

View File

@@ -56,7 +56,7 @@
<listitem><para><emphasis>FAQs:</emphasis> Lists commonly asked Yocto Project questions and answers.
You can find two FAQs: <ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>Yocto Project FAQ</ulink> on
a wiki, and the
<ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink> chapter in
"<ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink>" chapter in
the Yocto Project Reference Manual.
</para></listitem>
<listitem><para><emphasis>Developer Screencast:</emphasis> The
@@ -177,9 +177,10 @@
<listitem><para>openSUSE</para></listitem>
<listitem><para>CentOS</para></listitem>
</itemizedlist>
For a list of the distributions under validation and their status, see the
<ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution
Support</ulink> wiki page.
For a more detailed list of distributions that support the Yocto Project,
see the
"<ulink url='&YOCTO_DOCS_REF_URL;#detailed-supported-distros'>Supported Linux Distributions</ulink>" section
in the Yocto Project Reference Manual.
<note>
For notes about using the Yocto Project on a RHEL 4-based host, see the
<ulink url='&YOCTO_WIKI_URL;/wiki/BuildingOnRHEL4'>BuildingOnRHEL4</ulink>
@@ -211,94 +212,85 @@
<title>The Packages</title>
<para>
Packages and package installation vary depending on your development system.
In general, you need to have root access and then install the required packages.
The next few sections show you how to get set up with the right packages for
Ubuntu, Fedora, openSUSE, and CentOS.
Packages and package installation vary depending on your development system
and on your intent.
For example, if you want to build an image that can run
on QEMU in graphical mode (a minimal, basic build
requirement), then the number of packages is different than if you want to
build an image on a headless system or build out the Yocto Project
documentation set.
Collectively, the number of required packages is large
if you want to be able to cover all cases.
<note>In general, you need to have root access and then install the
required packages.
Thus, the commands in the following section may or may not work
depending on whether or not your Linux distribution has
<filename>sudo</filename> installed.</note>
</para>
<para>
The next few sections list, by supported Linux Distributions, the required
packages needed to build an image that runs on QEMU in graphical mode
(e.g. essential plus graphics support).
</para>
<para>
For lists of required packages for other scenarios, see the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
section in the Yocto Project Reference Manual.
</para>
<section id='ubuntu'>
<title>Ubuntu</title>
<para>
The packages you need for a supported Ubuntu distribution are shown in the following command:
</para>
The essential packages you need for a supported Ubuntu distribution
are shown in the following command:
<literallayout class='monospaced'>
$ sudo apt-get install sed wget subversion git-core coreutils \
unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk \
python-pysqlite2 diffstat make gcc build-essential xsltproc \
g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \
autoconf automake groff libtool xterm libxml-parser-perl dblatex
$ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL; libsdl1.2-dev xterm
</literallayout>
</para>
</section>
<section id='fedora'>
<title>Fedora</title>
<para>
The packages you need for a supported Fedora distribution are shown in the following
commands:
</para>
The essential packages you need for a supported Fedora distribution
are shown in the following command:
<literallayout class='monospaced'>
$ sudo yum groupinstall "development tools"
$ sudo yum install python m4 make wget curl ftp tar bzip2 gzip \
unzip perl texinfo texi2html diffstat openjade \
docbook-style-dsssl sed docbook-style-xsl docbook-dtds fop libxslt \
docbook-utils sed bc eglibc-devel ccache pcre pcre-devel quilt \
groff linuxdoc-tools patch cmake \
perl-ExtUtils-MakeMaker tcl-devel gettext chrpath ncurses apr \
SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \
autoconf automake libtool xterm dblatex glib-gettextize
$ sudo yum install &FEDORA_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
</literallayout>
</para>
</section>
<section id='opensuse'>
<title>openSUSE</title>
<para>
The packages you need for a supported openSUSE distribution are shown in the following
command:
</para>
The essential packages you need for a supported openSUSE
distribution are shown in the following command:
<literallayout class='monospaced'>
$ sudo zypper install python gcc gcc-c++ libtool fop \
subversion git chrpath automake make wget xsltproc \
diffstat texinfo freeglut-devel libSDL-devel dblatex \
python-curses
$ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL; libSDL-devel xterm
</literallayout>
</para>
</section>
<section id='centos'>
<title>CentOS</title>
<para>
The packages you need for a supported CentOS distribution are shown in the following
commands:
</para>
The essential packages you need for a supported CentOS
distribution are shown in the following command:
<literallayout class='monospaced'>
$ sudo yum -y groupinstall "development tools"
$ sudo yum -y install tetex gawk sqlite-devel vim-common redhat-lsb xz \
m4 make wget curl ftp tar bzip2 gzip python-devel \
unzip perl texinfo texi2html diffstat openjade zlib-devel \
docbook-style-dsssl sed docbook-style-xsl docbook-dtds \
docbook-utils bc glibc-devel pcre pcre-devel \
groff linuxdoc-tools patch cmake \
tcl-devel gettext ncurses apr \
SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \
autoconf automake libtool xterm dblatex
$ sudo yum -y install &CENTOS_HOST_PACKAGES_ESSENTIAL; SDL-devel xterm
</literallayout>
<note><para>
Depending on the CentOS version you are using, other requirements and dependencies
might exist.
For details, you should look at the CentOS sections on the
<ulink url='&YOCTO_WIKI_URL;/wiki/Poky/GettingStarted/Dependencies'>Poky/GettingStarted/Dependencies</ulink>
wiki page.
</para></note>
<note>Depending on the CentOS version you are using, other requirements
and dependencies might exist.
For details, you should look at the CentOS sections on the
<ulink url='https://wiki.yoctoproject.org/wiki/Poky/GettingStarted/Dependencies'>Poky/GettingStarted/Dependencies</ulink>
wiki page.</note>
</para>
</section>
</section>
@@ -414,23 +406,23 @@
them into a directory named <filename>&YOCTO_POKY;</filename> in the current
directory.</para></listitem>
<listitem><para>The third and fourth commands change the working directory to the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
and run the Yocto Project environment setup script.
Running this script defines OpenEmbedded build environment settings needed to
complete the build.
The script also creates the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>,
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>,
which is <filename>build</filename> in this case and is located in the
source directory.
Source Directory.
After the script runs, your current working directory is set
to the build directory.
Later, when the build completes, the build directory contains all the files
to the Build Directory.
Later, when the build completes, the Build Directory contains all the files
created during the build.
</para></listitem>
</itemizedlist>
<para>
Take some time to examine your <filename>local.conf</filename> file
in your project's configuration directory, which is found in the build directory.
in your project's configuration directory, which is found in the Build Directory.
The defaults in that file should work fine.
However, there are some variables of interest at which you might look.
</para>
@@ -749,7 +741,7 @@
<title>Getting the Yocto Project</title>
<para>
Set up your <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
Set up your <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
one of two ways:
<itemizedlist>
<listitem><para><emphasis>Tarball:</emphasis>
@@ -783,9 +775,9 @@
<para>
From the parent directory your
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>,
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>,
initialize your environment and provide a meaningful
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
name:
<literallayout class='monospaced'>
$ source poky/&OE_INIT_FILE; mybuilds
@@ -793,7 +785,7 @@
At this point, the <filename>mybuilds</filename> directory has been created for you
and it is now your current working directory.
If you don't provide your own directory name it defaults to <filename>build</filename>,
which is inside the source directory.
which is inside the Source Directory.
</para>
</section>
@@ -802,7 +794,7 @@
<para>
Initializing the build environment creates a <filename>conf/local.conf</filename> configuration file
in the build directory.
in the Build Directory.
You need to manually edit this file to specify the machine you are building and to optimize
your build time.
Here are the minimal changes to make:

View File

@@ -13,10 +13,7 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "3.0%"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-dri2 \
xserver-xorg-extension-glx \
xserver-xorg-extension-extmod \
xserver-xorg-extension-dbe \
xf86-input-mouse \
xf86-input-keyboard \
xf86-input-evdev \

View File

@@ -6,7 +6,7 @@ PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-video-omapfb \
xf86-video-omap \
xf86-input-keyboard"
# Ship all kernel modules by default

View File

@@ -19,7 +19,6 @@ PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-extmod \
xf86-input-evdev \
xf86-video-fbdev"

View File

@@ -14,7 +14,6 @@ PREFERRED_VERSION_linux-yocto ?= "3.4%"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-extmod \
xf86-input-evdev \
xf86-video-fbdev"

View File

@@ -3,11 +3,10 @@ KBRANCH_routerstationpro = "standard/routerstationpro"
KBRANCH_mpc8315e-rdb = "standard/fsl-mpc8315e-rdb"
KBRANCH_beagleboard = "standard/beagleboard"
SRCREV_machine_atom-pc ?= "59c3ff750831338d05ab67d5efd7fc101c451aff"
SRCREV_machine_routerstationpro ?= "009935376be574746446f4bead6f0fb7b40d6d79"
SRCREV_machine_mpc8315e-rdb ?= "6b18b6f483716b757c7c8642fa3792235118bb63"
SRCREV_machine_beagleboard ?= "59c3ff750831338d05ab67d5efd7fc101c451aff"
SRCREV_machine_atom-pc ?= "449f7f520350700858f21a5554b81cc8ad23267d"
SRCREV_machine_routerstationpro ?= "27e8b8dabfed786aaaafd2f7104c141597830089"
SRCREV_machine_mpc8315e-rdb ?= "524ce8107febcfd88717f54d50d36ca7c6e6e437"
SRCREV_machine_beagleboard ?= "449f7f520350700858f21a5554b81cc8ad23267d"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
COMPATIBLE_MACHINE_routerstationpro = "routerstationpro"

View File

@@ -1,2 +0,0 @@
QT_GLFLAGS_atom-pc = "-opengl"
QT_GLFLAGS_mpc8315e-rdb = "-opengl"

View File

@@ -10,3 +10,7 @@ BBLAYERS ?= " \
##COREBASE##/meta-yocto \
##COREBASE##/meta-yocto-bsp \
"
BBLAYERS_NON_REMOVABLE ?= " \
##COREBASE##/meta \
##COREBASE##/meta-yocto \
"

View File

@@ -13,8 +13,11 @@ DISTRO_PN_ALIAS_pn-aaina = "Intel"
DISTRO_PN_ALIAS_pn-abiword-embedded = "Fedora=abiword Ubuntu=abiword"
DISTRO_PN_ALIAS_pn-adt-installer = "Intel"
DISTRO_PN_ALIAS_pn-alsa-state = "OE-Core"
DISTRO_PN_ALIAS_pn-anjuta-remote-run = "OpenedHand"
DISTRO_PN_ALIAS_pn-augeas = "Ubuntu=libaugeas0 Debian=libaugeas0"
DISTRO_PN_ALIAS_pn-avahi-ui = "Ubuntu=avahi-discover Debian=avahi-discover"
DISTRO_PN_ALIAS_pn-babeltrace = "OSPDT"
DISTRO_PN_ALIAS_pn-bdwgc = "OSPDT"
DISTRO_PN_ALIAS_pn-bigreqsproto = "Meego=xorg-x11-proto-bigreqsproto"
DISTRO_PN_ALIAS_pn-blktool = "Debian=blktool Mandriva=blktool"
DISTRO_PN_ALIAS_pn-bluez4= "Fedora=bluez Ubuntu=bluez Debian=bluez-utils Opensuse=bluez"
@@ -22,6 +25,7 @@ DISTRO_PN_ALIAS_pn-bluez4="Meego=bluz Fedora=bluz Ubuntu=bluz OpenSuSE=bluz Mand
DISTRO_PN_ALIAS_pn-bluez-dtl1-workaround = "OE-Core"
DISTRO_PN_ALIAS_pn-btrfs-tools = "Debian=btrfs-tools Fedora=btrfs-progs"
DISTRO_PN_ALIAS_pn-builder = "OE-Core"
DISTRO_PN_ALIAS_pn-build-appliance-image = "OSPDT"
DISTRO_PN_ALIAS_pn-calibrateproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/lib/libXCalibrate/"
DISTRO_PN_ALIAS_pn-calibrateproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/proto/calibrateproto"
DISTRO_PN_ALIAS_pn-cdrtools = "OpenSUSE=cdrtools OSPDT"
@@ -30,8 +34,9 @@ DISTRO_PN_ALIAS_pn-claws-plugin-maildir = "Fedora=claws-mail-plugins OpenSuSE=cl
DISTRO_PN_ALIAS_pn-claws-plugin-mailmbox = "Fedora=claws-mail-plugins OpenSuSE=claws-mail-extra-plugins Debian=claws-mail-extra-plugins"
DISTRO_PN_ALIAS_pn-claws-plugin-rssyl = "Fedora=claws-mail-plugins OpenSuSE=claws-mail-extra-plugins Debian=claws-mail-extra-plugins"
DISTRO_PN_ALIAS_pn-clipboard-manager = "OpenedHand"
DISTRO_PN_ALIAS_pn-clutter-1.8 = "Fedora=clutter OpenSuse=clutter Ubuntu=clutter-1.0 Mandriva=clutter Debian=clutter"
DISTRO_PN_ALIAS_pn-clutter = "Fedora=clutter OpenSuse=clutter Ubuntu=clutter-1.0 Mandriva=clutter Debian=clutter"
DISTRO_PN_ALIAS_pn-clutter-1.8 = "Fedora=clutter OpenSuse=clutter Ubuntu=clutter-1.0 Mandriva=clutter Debian=clutter"
DISTRO_PN_ALIAS_pn-clutter-box2d = "Meego=clutter-box2d"
DISTRO_PN_ALIAS_pn-clutter-gst-1.8 = "Fedora=clutter-gst Debian=libclutter-gst"
DISTRO_PN_ALIAS_pn-clutter-gtk-1.8 = "Fedora=clutter-gtk OpenSuSE=clutter-gtk Ubuntu=clutter-gtk-0.10 Mandriva=clutter-gtk Debian=clutter-gtk"
DISTRO_PN_ALIAS_pn-cogl = "Fedora=cogl OpenSuse=cogl Ubuntu=cogl Mandriva=cogl Debian=cogl"
@@ -64,7 +69,7 @@ DISTRO_PN_ALIAS_pn-core-image-sato-sdk-directdisk = "OE-Core"
DISTRO_PN_ALIAS_pn-core-image-sato-sdk-live = "OE-Core"
DISTRO_PN_ALIAS_pn-core-image-sato-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-core-image-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-core-x11 = "OE-Core"
DISTRO_PN_ALIAS_pn-core-image-x11 = "OE-Core"
DISTRO_PN_ALIAS_pn-cross-localedef = "OSPDT"
DISTRO_PN_ALIAS_pn-cwautomacros= "OSPDT upstream=http://cwautomacros.berlios.de/"
DISTRO_PN_ALIAS_pn-damageproto = "Meego=xorg-x11-proto-damageproto"
@@ -72,9 +77,9 @@ DISTRO_PN_ALIAS_pn-db = "Debian=db5.1 Ubuntu=db5.1"
DISTRO_PN_ALIAS_pn-dbus-wait = "OpenedHand"
DISTRO_PN_ALIAS_pn-directfb-examples = "Debian=directfb Fedora=directfb"
DISTRO_PN_ALIAS_pn-distcc = "Debian=distcc Fedora=distcc"
DISTRO_PN_ALIAS_pn-distcc-config = "OpenedHand"
DISTRO_PN_ALIAS_pn-dmxproto = "Meego=xorg-x11-proto-dmxproto Ubuntu=x11proto-dmx Debian=x11proto-dmx"
DISTRO_PN_ALIAS_pn-docbook-dsssl-stylesheet = "Fedora=docbook-style-dsssl Ubuntu=docbook-dsssl"
DISTRO_PN_ALIAS_pn-docbook-dsssl-stylesheet-native = "Fedora=docbook-style-dsssl Ubuntu=docbook-dsssl"
DISTRO_PN_ALIAS_pn-docbook-dsssl-stylesheets = "Fedora=docbook-style-dsssl Ubuntu=docbook-dsssl"
DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-3.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd31-sgml"
DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-4.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd41-sgml"
DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-4.5 = "Fedora=docbook-dtds Mandriva=docbook-dtd42-sgml"
@@ -84,7 +89,8 @@ DISTRO_PN_ALIAS_pn-dtc = "Fedora=dtc Ubuntu=dtc"
DISTRO_PN_ALIAS_pn-dtc-native = "Fedora=dtc Ubuntu=dtc"
DISTRO_PN_ALIAS_pn-eds-tools = "OpenedHand"
DISTRO_PN_ALIAS_pn-eee-acpi-scripts = "Debian=eeepc-acpi-scripts Ubuntu=eeepc-acpi-scripts"
DISTRO_PN_ALIAS_pn-eglibc-locale-nativesdk = "OE-Core"
DISTRO_PN_ALIAS_pn-eglibc = "OE-Core"
DISTRO_PN_ALIAS_pn-eglibc-initial = "OE-Core"
DISTRO_PN_ALIAS_pn-eglibc-locale = "OE-Core"
DISTRO_PN_ALIAS_pn-emgd-driver-bin = "Intel"
DISTRO_PN_ALIAS_pn-encodings = "Ubuntu=xfonts-encodings Mandriva=x11-font-encodings Debian=xfonts-encodings"
@@ -111,9 +117,11 @@ DISTRO_PN_ALIAS_pn-gcc-runtime = "Ubuntu=gcc Fedora=gcc"
DISTRO_PN_ALIAS_pn-gconf-dbus = "Meego=GConf-dbus"
DISTRO_PN_ALIAS_pn-gdk-pixbuf-csource-native = "Debian=libgdk-pixbuf2.0-0 Fedora=gdk-pixbuf2"
DISTRO_PN_ALIAS_pn-gdk-pixbuf = "Debian=libgdk-pixbuf2.0 Fedora=gdk-pixbuf"
DISTRO_PN_ALIAS_pn-gettext-minimal-native = "Debian=gettext Fedora=gettext"
DISTRO_PN_ALIAS_pn-glib-2.0 = "Meego=glib2 Fedora=glib2 OpenSuSE=glib2 Ubuntu=glib2.0 Mandriva=glib2.0 Debian=glib2.0"
DISTRO_PN_ALIAS_pn-glproto = "Meego=xorg-x11-proto-glproto"
DISTRO_PN_ALIAS_pn-gnu-config = "OpenedHand"
DISTRO_PN_ALIAS_pn-grub-efi-i586 = "Ubuntu=grub Fedora=grub"
DISTRO_PN_ALIAS_pn-gst-ffmpeg = "Mandriva=gstreamer0.10-ffmpeg Debian=gstreamer0.10-ffmpeg"
DISTRO_PN_ALIAS_pn-gst-fluendo-mp3 = "Debian=gstreamer0.10-fluendo-mp3 Ubuntu=gstreamer0.10-fluendo-mp3"
DISTRO_PN_ALIAS_pn-gst-fluendo-mpegdemux = "Ubuntu=gstreamer0.10-fluendo-mpegdemux Debian=gstreamer0.10-fluendo-mpegdemux"
@@ -124,6 +132,7 @@ DISTRO_PN_ALIAS_pn-gst-plugins-bad = "Fedora=gstreamer-plugins-bad-free OpenSuSE
DISTRO_PN_ALIAS_pn-gst-plugins-base = "Meego=gst-plugins-base Fedora=gstreamer-plugins-base OpenSuSE=gstreamer-plugins-base Ubuntu=gst-plugins-base0.10 Mandriva=gstreamer0.10-plugins-base Debian=gst-plugins-base0.10"
DISTRO_PN_ALIAS_pn-gst-plugins-good = "Meego=gst-plugins-good Fedora=gstreamer-plugins-good OpenSuSE=gstreamer-plugins-good Ubuntu=gst-plugins-good0.10 Mandriva=gstreamer0.10-plugins-good Debian=gst-plugins-good0.10"
DISTRO_PN_ALIAS_pn-gst-plugins-ugly = "OpenSuSE=gstreamer-plugins-ugly Mandriva=gstreamer0.10-plugins-ugly Debian=gst-plugins-ugly0.10"
DISTRO_PN_ALIAS_pn-gtk-doc-stub = "Fedora=gtk-doc Ubuntu=gtk-doc"
DISTRO_PN_ALIAS_pn-gtk-engines = "Fedora=gtk2-engines OpenSuSE=gtk2-engines Ubuntu=gtk2-engines Mandriva=gtk-engines2 Debian=gtk2-engines"
DISTRO_PN_ALIAS_pn-gtkhtml2 = "Debian=libgtkhtml2-0 Fedora=gtkhtml2"
DISTRO_PN_ALIAS_pn-gtk+ = "Meego=gtk2 Fedora=gtk2 OpenSuSE=gtk2 Ubuntu=gtk+2.0 Mandriva=gtk+2.0 Debian=gtk+2.0"
@@ -131,15 +140,19 @@ DISTRO_PN_ALIAS_pn-gtk-sato-engine = "OpenedHand"
DISTRO_PN_ALIAS_pn-gtk-theme-torturer = "OSPDT upstream=http://wiki.laptop.org/go/GTK_for_OLPC"
DISTRO_PN_ALIAS_pn-hello-mod = "OE-Core"
DISTRO_PN_ALIAS_pn-hostap-conf = "OE-Core"
DISTRO_PN_ALIAS_pn-hwlatdetect = "OSPDT"
DISTRO_PN_ALIAS_pn-icecc-create-env = "OE-Core"
DISTRO_PN_ALIAS_pn-imake = "Mandriva=xutils Ubuntu=xutils"
DISTRO_PN_ALIAS_pn-initramfs-boot = "OE-Core"
DISTRO_PN_ALIAS_pn-initramfs-framework = "OE-Core"
DISTRO_PN_ALIAS_pn-initramfs-live-boot = "OE-Core"
DISTRO_PN_ALIAS_pn-initramfs-live-install = "OE-Core"
DISTRO_PN_ALIAS_pn-initramfs-live-install-efi = "OE-Core"
DISTRO_PN_ALIAS_pn-inputproto = "Meego=xorg-x11-proto-inputproto"
DISTRO_PN_ALIAS_pn-iproute2 = "OSPDT"
DISTRO_PN_ALIAS_pn-jpeg="OpenSuSE=libjpeg Ubuntu=libjpeg62"
DISTRO_PN_ALIAS_pn-kbproto = "Meego=xorg-x11-proto-kbproto Ubuntu=x11proto-kb-dev Debian=x11proto-kb-dev"
DISTRO_PN_ALIAS_pn-kconfig-frontends = "OSPDT"
DISTRO_PN_ALIAS_pn-kernelshark = "Mandriva=kernelshark Ubuntu=kernelshark"
DISTRO_PN_ALIAS_pn-kern-tools-native = "OpenedHand"
DISTRO_PN_ALIAS_pn-kern-tools-native = "Windriver"
@@ -152,14 +165,19 @@ DISTRO_PN_ALIAS_pn-liba52 = "Mandriva=a52dec Debian=a52dec"
DISTRO_PN_ALIAS_pn-libacpi="Ubuntu=libacpi Mandriva=libacpi"
DISTRO_PN_ALIAS_pn-libatomics-ops = "Meego=libatomic-ops Debian=libatomic-ops Ubuntu=libatomic-ops OpenSuSE=libatomic-ops Mandriva=libatomic-ops"
DISTRO_PN_ALIAS_pn-libcheck = "Ubuntu=check Fedora=check OpenSuSE=check"
DISTRO_PN_ALIAS_pn-libclass-isa-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libdrm-poulsbo = "Debian=libdrm-intel1 Ubuntu=libdrm-intel1"
DISTRO_PN_ALIAS_pn-libdumpvalue-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libenv-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libfakekey="Meego1.0=libfakekey Debian=libfakekey"
DISTRO_PN_ALIAS_pn-libfile-checktree-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libfribidi = "OpenSuSE=fribidi Ubuntu=fribidi Mandriva=fribidi Debian=fribidi"
DISTRO_PN_ALIAS_pn-libgcc = "Debian=libgcc4 Ubuntu=libgcc1 OpenSuSE=libgcc46"
DISTRO_PN_ALIAS_pn-libgdbus = "Intel"
DISTRO_PN_ALIAS_pn-libglade = "Meego=libglade2 Fedora=libglade2 OpenSuSE=libglade2 Ubuntu=libglade2 Mandriva=libglade2.0 Debian=libglade2"
DISTRO_PN_ALIAS_pn-libgsmd = "Fedora=gsm Ubuntu=libgsm Debian=libgsm Opensuse=libgsm"
DISTRO_PN_ALIAS_pn-libgtkstylus = "Debian=libgtkstylus Ubuntu=libgtkstylus"
DISTRO_PN_ALIAS_pn-libi18n-collate-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libiconv = "Fedora=mingw-libiconv Opensuse=cross-mingw-libiconv"
DISTRO_PN_ALIAS_pn-libjson = "Ubuntu=libjson0-dev Debian=libjson0-dev"
DISTRO_PN_ALIAS_pn-libksba = "Fedora=libksba Debian=libksba8"
@@ -172,6 +190,7 @@ DISTRO_PN_ALIAS_pn-libowl-av = "OpenedHand"
DISTRO_PN_ALIAS_pn-libowl = "Debian=owl OpenedHand"
DISTRO_PN_ALIAS_pn-libpam = "Meego=pam Fedora=pam OpenSuSE=pam Ubuntu=pam Mandriva=pam Debian=pam"
DISTRO_PN_ALIAS_pn-libpcre = "Mandriva=libpcre0 Fedora=pcre"
DISTRO_PN_ALIAS_pn-libpod-plainer-perl = "OSPDT"
DISTRO_PN_ALIAS_pn-libsamplerate0 = "Meego=libsamplerate Fedora=libsamplerate OpenSuSE=libsamplerate Ubuntu=libsamplerate Mandriva=libsamplerate Debian=libsamplerate"
DISTRO_PN_ALIAS_pn-libsdl = "Fedora=SDL Opensuse=SDL"
DISTRO_PN_ALIAS_pn-libsndfile1 = "Meego=libsndfile Fedora=libsndfile OpenSuSE=libsndfile Ubuntu=libsndfile Mandriva=libsndfile Debian=libsndfile"
@@ -197,11 +216,17 @@ DISTRO_PN_ALIAS_pn-linux-libc-headers = "Debian=linux-kernel-headers Ubuntu=linu
DISTRO_PN_ALIAS_pn-linux-libc-headers-yocto = "Debian=linux-kernel-headers Ubuntu=linux-kernel-headers"
DISTRO_PN_ALIAS_pn-linux-yocto = "Debian=linux-base Ubuntu=linux"
DISTRO_PN_ALIAS_pn-linux-yocto-rt = "Debian=linux-base Ubuntu=linux"
DISTRO_PN_ALIAS_pn-linux-yocto-tiny = "OSPDT"
DISTRO_PN_ALIAS_pn-lsbinitscripts = "Windriver"
DISTRO_PN_ALIAS_pn-lsbsetup = "Windriver"
DISTRO_PN_ALIAS_pn-lsbtest = "Windriver"
DISTRO_PN_ALIAS_pn-ltp = "Ubuntu=ltp"
DISTRO_PN_ALIAS_pn-lttng-control = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-lttng-modules = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-lttng-tools = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-lttng-ust = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-lttng-viewer = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-lttng2-ust = "OSPDT upstream=http://lttng.org/"
DISTRO_PN_ALIAS_pn-makedepend = "Mandriva=makedepend Ubuntu=xutils-dev"
DISTRO_PN_ALIAS_pn-makedevs = "OE-Core"
DISTRO_PN_ALIAS_pn-matchbox-config-gtk = "OpenedHand"
@@ -223,12 +248,13 @@ DISTRO_PN_ALIAS_pn-menu-cache = "OSPDT"
DISTRO_PN_ALIAS_pn-mesa-dri = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
DISTRO_PN_ALIAS_pn-mesa-dri-glsl-native = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
DISTRO_PN_ALIAS_pn-meta-environment-i586 = "OE-Core"
DISTRO_PN_ALIAS_pn-meta-ide-support = 'OE-Core'
DISTRO_PN_ALIAS_pn-meta-ide-support = "OE-Core"
DISTRO_PN_ALIAS_pn-meta-toolchain-gmae = "OE-Core"
DISTRO_PN_ALIAS_pn-meta-toolchain = "OE-Core"
DISTRO_PN_ALIAS_pn-meta-toolchain-qte = "OE-Core"
DISTRO_PN_ALIAS_pn-meta-toolchain-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-mkfontdir = "Mandriva=mkfontdir Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
DISTRO_PN_ALIAS_pn-meta-toolchain-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-mini-x-session = "OSPDT"
DISTRO_PN_ALIAS_pn-mkfontscale = "Mandriva=mkfontscale Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
DISTRO_PN_ALIAS_pn-mktemp = "Mandriva=mktemp Fedora=mktemp"
DISTRO_PN_ALIAS_pn-moblin-proto = "OE-Core"
@@ -237,20 +263,55 @@ DISTRO_PN_ALIAS_pn-modutils-initscripts = "OE-Core"
DISTRO_PN_ALIAS_pn-msynctool = "OpenSuse=msynctool Mandriva=msynctool"
DISTRO_PN_ALIAS_pn-n450-audio = "Intel"
DISTRO_PN_ALIAS_pn-network-suspend-scripts = "OE-Core"
DISTRO_PN_ALIAS_pn-nfs-export-root = "OpenedHand"
DISTRO_PN_ALIAS_pn-npth = "OSPDT"
DISTRO_PN_ALIAS_pn-ocf-linux = "OSPDT"
DISTRO_PN_ALIAS_pn-ofono = "Debian=ofono Ubuntu=ofono"
DISTRO_PN_ALIAS_pn-oh-puzzles = "OpenedHand"
DISTRO_PN_ALIAS_pn-opkg-collateral = "OE-Core"
DISTRO_PN_ALIAS_pn-opkg-config-base = "OE-Core"
DISTRO_PN_ALIAS_pn-opkg-nogpg-native = "OE-Core"
DISTRO_PN_ALIAS_pn-opkg-nogpg-nativesdk = "OE-Core"
DISTRO_PN_ALIAS_pn-opkg-nogpg = "OE-Core"
DISTRO_PN_ALIAS_pn-opkg_nogpg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
DISTRO_PN_ALIAS_pn-opkg-nogpg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
DISTRO_PN_ALIAS_pn-opkg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
DISTRO_PN_ALIAS_pn-opkg-utils = "OSPDT upstream=http://svn.openmoko.org/trunk/src/target/opkg/"
DISTRO_PN_ALIAS_pn-oprofileui = "Fedora=oprofileui Ubuntu=oprofile-gui Debian=oprofile-gui"
DISTRO_PN_ALIAS_pn-oprofileui-server = "Fedora=oprofileui Ubuntu=oprofile-gui Debian=oprofile-gui"
DISTRO_PN_ALIAS_pn-orinoco-conf = "OE-Core"
DISTRO_PN_ALIAS_pn-owl-video = "OpenedHand"
DISTRO_PN_ALIAS_pn-package-index = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-base = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-basic = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-boot = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-clutter = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-console = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-device-devel = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-gtk-directfb = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-lsb = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-nfs = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-qt = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-qt4e = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk-gmae = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-dropbear = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-openssh = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-gmae-sdk-target = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-sdk-target = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-debug = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-profile = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-testapps = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-mini = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11 = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-base = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-sato = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-xserver = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-i586 = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qt4e = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-host = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-target = "Intel"
DISTRO_PN_ALIAS_pn-packagegroup-sdk-host = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-self-hosted = "OE-Core"
DISTRO_PN_ALIAS_pn-perf = "OSPDT"
DISTRO_PN_ALIAS_pn-pointercal = "OE-Core"
DISTRO_PN_ALIAS_pn-poky-feed-config-opkg = "OE-Core"
DISTRO_PN_ALIAS_pn-pong-clock = "OpenedHand"
@@ -271,6 +332,7 @@ DISTRO_PN_ALIAS_pn-python-pygtk = "Debian=python-gtk2 Fedora=pygtk2 OpenSuSE=pyt
DISTRO_PN_ALIAS_pn-python-pyrex = "Mandriva=python-pyrex Ubuntu=python-pyrex"
DISTRO_PN_ALIAS_pn-python-scons = "Fedora=scons OpenSuSE=scons Ubuntu=scons Mandriva=scons Debian=scons"
DISTRO_PN_ALIAS_pn-python-ZSI = "OE-Core"
DISTRO_PN_ALIAS_pn-qemu-helper = "OpenedHand"
DISTRO_PN_ALIAS_pn-qemu-config = "OpenedHand"
DISTRO_PN_ALIAS_pn-qemugl = "OpenedHand"
DISTRO_PN_ALIAS_pn-qemu-helper-native = "OpenedHand"
@@ -281,7 +343,7 @@ DISTRO_PN_ALIAS_pn-qt4-embedded = "OSPDT"
DISTRO_PN_ALIAS_pn-qt4-graphics-system = "OE-Core"
DISTRO_PN_ALIAS_pn-qt4-native = "Fedora=qt4 Debian=qt4-dev-tools"
DISTRO_PN_ALIAS_pn-qt4-native = "Mandriva=libqt4-devel Ubuntu=libqt4-dev"
DISTRO_PN_ALIAS_pn-qt4-tools-nativesdk = "Mandriva=libqt4-devel Ubuntu=libqt4-dev"
DISTRO_PN_ALIAS_pn-qt4-tools = "Mandriva=libqt4-devel Ubuntu=libqt4-dev"
DISTRO_PN_ALIAS_pn-qt4-x11-free = "Ubuntu=qt-x11-free Debian=qt-x11-free"
DISTRO_PN_ALIAS_pn-qt-demo-init = "OE-Core"
DISTRO_PN_ALIAS_pn-qt-mobility-embedded = "Ubuntu=qtmobility-dev Debian=qtmobility-dev"
@@ -289,9 +351,11 @@ DISTRO_PN_ALIAS_pn-qt-mobility-x11 = "Ubuntu=qtmobility-dev Debian=qtmobility-de
DISTRO_PN_ALIAS_pn-quicky = "OSPDT"
DISTRO_PN_ALIAS_pn-randrproto = "Meego=xorg-x11-proto-randrproto"
DISTRO_PN_ALIAS_pn-recordproto = "Meego=xorg-x11-proto-recordproto"
DISTRO_PN_ALIAS_pn-remake = "Mandriva=remake Debian=remake"
DISTRO_PN_ALIAS_pn-renderproto = "Meego=xorg-x11-proto-renderproto"
DISTRO_PN_ALIAS_pn-resourceproto = "Meego=xorg-x11-proto-resourceproto"
DISTRO_PN_ALIAS_pn-rgb = "Fedora=xorg-X11-server-utils Debian=x11-xserver-utils"
DISTRO_PN_ALIAS_pn-rpmresolve = "OSPDT"
DISTRO_PN_ALIAS_pn-rt-tests = "Debian=rt-tests Ubuntu=rt-tests"
DISTRO_PN_ALIAS_pn-run-postinsts = "OE-Core"
DISTRO_PN_ALIAS_pn-sato-icon-theme = "OpenedHand"
@@ -304,6 +368,7 @@ DISTRO_PN_ALIAS_pn-sgmlspl = "Debian=sgmlspl Ubuntu=sgmlspl"
DISTRO_PN_ALIAS_pn-shadow-securetty = "Ubuntu=shadow Fedora=shadow"
DISTRO_PN_ALIAS_pn-shadow-sysroot = "Ubuntu=shadow Fedora=shadow"
DISTRO_PN_ALIAS_pn-shasum-native = "OE-Core"
DISTRO_PN_ALIAS_pn-shutdown-desktop = "OpenedHand"
DISTRO_PN_ALIAS_pn-signgp-native = "OE-Core"
DISTRO_PN_ALIAS_pn-stat = "Debian=coreutils Fedora=coreutils"
DISTRO_PN_ALIAS_pn-swabber-native = "OE-Core"
@@ -311,41 +376,14 @@ DISTRO_PN_ALIAS_pn-systemtap-uprobes = "Ubuntu=systemtap Debian=systemtap"
DISTRO_PN_ALIAS_pn-sysvinit-inittab = "OE-Core"
DISTRO_PN_ALIAS_pn-table = "Intel"
DISTRO_PN_ALIAS_pn-tar-replacement-native = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-base = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-basic = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-boot = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-clutter = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-console = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-gtk-directfb = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-lsb = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-nfs = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-qt = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk-gmae = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-sdk = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-dropbear = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-openssh = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-gmae-sdk-target = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-sdk-target = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-debug = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-profile = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-tools-testapps = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-mini = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11 = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-core-x11-sato = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-i586 = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qt4e = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-host-nativesdk = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-host-natives = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-qte-toolchain-target = "Intel"
DISTRO_PN_ALIAS_pn-packagegroup-sdk-host = "OE-Core"
DISTRO_PN_ALIAS_pn-packagegroup-self-hosted = "OE-Core"
DISTRO_PN_ALIAS_pn-tcf-agent = "Windriver upstream=http://www.eclipse.org/dsdp/tm/"
DISTRO_PN_ALIAS_pn-telepathy-python = "Debian=telepathy-python Ubuntu=telepathy-python"
DISTRO_PN_ALIAS_pn-tiny-init = "OSPDT"
DISTRO_PN_ALIAS_pn-tinylogin = "Debian=busybox Ubuntu=busybox Mandriva=busybox"
DISTRO_PN_ALIAS_pn-trace-cmd = "Mandriva=trace-cmd Ubuntu=trace-cmd"
DISTRO_PN_ALIAS_pn-trapproto = "Meego=xorg-x11-proto-trapproto"
DISTRO_PN_ALIAS_pn-tremor = "OSPDT upstream=http://www.xiph.org/vorbis/"
DISTRO_PN_ALIAS_pn-tslib = "Debian=tslib Ubuntu=tslib"
DISTRO_PN_ALIAS_pn-ttf-bitstream-vera = "Debian=ttf-bitstream-vera Ubuntu=ttf-bitstream-vera"
DISTRO_PN_ALIAS_pn-tzcode = "OSPDT"
DISTRO_PN_ALIAS_pn-ubootchart = "OSPDT upstream=http://code.google.com/p/ubootchart"
@@ -361,14 +399,17 @@ DISTRO_PN_ALIAS_pn-util-macros = "Meego=xorg-x11-util-macros Fedora=xorg-x11-uti
DISTRO_PN_ALIAS_pn-v86d = "Debian=v86d Ubuntu=v86d"
DISTRO_PN_ALIAS_pn-videoproto = "Meego=xorg-x11-proto-videoproto"
DISTRO_PN_ALIAS_pn-watchdog = "Debian=watchdog Ubuntu=watchdog Mandriva=watchdog"
DISTRO_PN_ALIAS_pn-webkit-gtk = "Fedora=webkitgtk"
DISTRO_PN_ALIAS_pn-webkit-gtk = "Fedora=webkitgtk Ubuntu=libwebkit"
DISTRO_PN_ALIAS_pn-web = "OpenedHand"
DISTRO_PN_ALIAS_pn-web-webkit = "OpenedHand"
DISTRO_PN_ALIAS_pn-which = "Mandriva=which Fedora=which"
DISTRO_PN_ALIAS_pn-wpa-supplicant = "Meego=wpa_supplicant Fedora=wpa_supplicant OpenSuSE=wpa_supplicant Ubuntu=wpasupplicant Mandriva=wpa_supplicant Debian=wpasupplicant"
DISTRO_PN_ALIAS_pn-x11-common = "OE-Core"
DISTRO_PN_ALIAS_pn-x11perf = "Fedora=xorg-x11-apps Ubuntu=x11-apps"
DISTRO_PN_ALIAS_pn-x11vnc = "Fedora=x11vnc Ubuntu=x11vnc"
DISTRO_PN_ALIAS_pn-xcb-util-wm = "Debian=xcb-util Fedora=xcb-util"
DISTRO_PN_ALIAS_pn-xcb-util-image = "Debian=xcb-util Fedora=xcb-util"
DISTRO_PN_ALIAS_pn-xcb-util-keysyms = "Debian=xcb-util Fedora=xcb-util"
DISTRO_PN_ALIAS_pn-xcmiscproto = "Meego=xorg-x11-proto-xcmiscproto"
DISTRO_PN_ALIAS_pn-xcursor-transparent-theme = "OpenedHand"
DISTRO_PN_ALIAS_pn-xdpyinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"

File diff suppressed because it is too large Load Diff

View File

@@ -24,10 +24,15 @@
#
RECIPE_UPSTREAM_VERSION_pn-acpid = "1.0.10"
RECIPE_UPSTREAM_DATE_pn-acpid = "Apr 22, 2009"
CHECK_DATE_pn-acpid = "Aug 27, 2012"
CHECK_DATE_pn-acpid = "Nov 09, 2012"
RECIPE_UPSTREAM_VERSION_pn-adt-installer = "1.1"
CHECK_DATE_pn-adt-installer = "Sep 11, 2012"
RECIPE_UPSTREAM_DATE_pn-alsa-utils="Jan 25, 2012"
RECIPE_UPSTREAM_VERSION_pn-alsa-utils = "1.0.26"
RECIPE_UPSTREAM_DATE_pn-alsa-utils = "Jan 25, 2012"
CHECK_DATE_pn-alsa-utils = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-alsa-lib = "1.0.26"
RECIPE_UPSTREAM_DATE_pn-alsa-lib = "Jan 25, 2012"
CHECK_DATE_pn-alsa-lib = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-apmd = "3.2.2-14"
RECIPE_UPSTREAM_DATE_pn-apmd = "Jul 01, 2009"
CHECK_DATE_pn-apmd = "Aug 27, 2012"
@@ -62,7 +67,7 @@ RECIPE_UPSTREAM_DATE_pn-bdwc = "Aug 15, 2012"
CHECK_DATE_pn-bdwgc = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-beecrypt = "4.2.1"
RECIPE_UPSTREAM_DATE_pn-beecrypt = "Jul 12, 2009"
CHECK_DATE_pn-beecrypt = "Aug 27, 2012"
CHECK_DATE_pn-beecrypt = "Nov 09, 2012"
RECIPE_UPSTREAM_VERSION_pn-bigreqsproto= "1.1.1"
RECIPE_UPSTREAM_DATE_pn-bigreqsproto= "Feb 25, 2011"
CHECK_DATE_pn-bigreqsproto= "Aug 27, 2012"
@@ -86,7 +91,7 @@ RECIPE_UPSTREAM_VERSION_pn-bluez4="4.101"
RECIPE_UPSTREAM_DATE_pn-bluez4="Jun 22, 2012"
CHECK_DATE_pn-bluez4 = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-boost = "1.51.0"
CHECK_DATE_pn-boost = "Aug 27, 2012"
CHECK_DATE_pn-boost = "Nov 02, 2012"
RECIPE_UPSTREAM_DATE_pn-boost = "Aug 20, 2012"
RECIPE_UPSTREAM_VERSION_pn-btrfs-tools="git"
RECIPE_UPSTREAM_VERSION_pn-busybox = "1.20.2"
@@ -132,12 +137,12 @@ RECIPE_UPSTREAM_VERSION_pn-compositeproto = "0.4.2"
RECIPE_UPSTREAM_DATE_pn-compositeproto = "Oct 29, 2010"
CHECK_DATE_pn-compositeproto = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-connman-gnome="Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-connman = "1.6"
RECIPE_UPSTREAM_DATE_pn-connman="Aug 22, 2012"
CHECK_DATE_pn-connman = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-connman = "1.9"
RECIPE_UPSTREAM_DATE_pn-connman="Oct 26, 2012"
CHECK_DATE_pn-connman = "Nov 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-console-tools = "0.3.2"
RECIPE_UPSTREAM_DATE_pn-console-tools = "Feb 18, 2002"
CHECK_DATE_pn-console-tools = "Aug 28, 2012"
CHECK_DATE_pn-console-tools = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-consolekit = "0.4.5"
RECIPE_UPSTREAM_DATE_pn-consolekit = "May 2, 2011"
CHECK_DATE_pn-consolekit = "Aug 28, 2012"
@@ -149,7 +154,7 @@ RECIPE_UPSTREAM_VERSION_pn-cpio = "2.11"
RECIPE_UPSTREAM_DATE_pn-cpio = "Mar 01, 2010"
CHECK_DATE_pn-cpio = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-cracklib="2.8.19"
CHECK_DATE_pn-cracklib = "Aug 28, 2012"
CHECK_DATE_pn-cracklib = "Nov 02, 2012"
RECIPE_UPSTREAM_DATE_pn-cracklib = "May 18, 2010"
RECIPE_UPSTREAM_VERSION_pn-createrepo = "0.9.9"
RECIPE_NO_UPDATE_REASON_pn-createrepo = "Versions after 0.9.* use YUM, so we hold at 0.4.11"
@@ -165,7 +170,7 @@ RECIPE_UPSTREAM_DATE_pn-curl = "Jul 27, 2012"
CHECK_DATE_pn-curl = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-cwautomacros = "20110201"
RECIPE_UPSTREAM_DATE_pn-cwautomacros = "Feb 01, 2011"
CHECK_DATE_pn-cwautomacros = "Aug 28, 2012"
CHECK_DATE_pn-cwautomacros = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-damageproto = "1.2.1"
RECIPE_UPSTREAM_DATE_pn-damageproto = "Oct 29, 2010"
CHECK_DATE_pn-damageproto = "Aug 28, 2012"
@@ -183,14 +188,14 @@ RECIPE_UPSTREAM_VERSION_pn-diffstat="1.55"
RECIPE_UPSTREAM_DATE_pn-diffstat = "Jan 03, 2012"
CHECK_DATE_pn-diffstat = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-diffutils = "3.2"
RECIPE_UPSTREAM_DATE_pn-diffutils = "Sept 3, 2011"
RECIPE_UPSTREAM_DATE_pn-diffutils = "Sep 3, 2011"
CHECK_DATE_pn-diffutils = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-direcfb = "Jun 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-directfb = "1.6.1"
CHECK_DATE_pn-directfb = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-distcc="3.1.1"
RECIPE_UPSTREAM_DATE_pn-distcc="Dec 10, 2008"
CHECK_DATE_pn-distcc="Aug 28, 2012"
CHECK_DATE_pn-distcc="Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-dmxproto = "2.3.1"
RECIPE_UPSTREAM_DATE_pn-dmxproto = "Jan 5, 2011"
CHECK_DATE_pn-dmxproto = "Aug 28, 2012"
@@ -262,11 +267,11 @@ RECIPE_UPSTREAM_VERSION_pn-fixesproto = "5.0"
RECIPE_UPSTREAM_DATE_pn-fixesproto = "Mar 8, 2011"
CHECK_DATE_pn-fixesproto = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-flac="1.2.1"
CHECK_DATE_pn-flac = "Aug 28, 2012"
CHECK_DATE_pn-flac = "Nov 08, 2012"
RECIPE_UPSTREAM_DATE_pn-flac="Sep 16, 2007"
RECIPE_UPSTREAM_VERSION_pn-flex = "2.5.37"
RECIPE_UPSTREAM_DATE_pn-flex = "Aug 08, 2012"
CHECK_DATE_pn-flex = "Aug 28, 2012"
CHECK_DATE_pn-flex = "Nov 8, 2012"
RECIPE_UPSTREAM_DATE_pn-font-alias = "Oct 01, 2009"
RECIPE_UPSTREAM_VERSION_pn-fontcacheproto = "0.1.3"
RECIPE_UPSTREAM_DATE_pn-fontcacheproto = "Oct 01, 2009"
@@ -320,19 +325,19 @@ CHECK_DATE_pn-gdbm = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-gdk-pixbuf-csource-native = "May 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-genext2fs = "1.4.1"
RECIPE_UPSTREAM_DATE_pn-genext2fs = "Apr 01, 2007"
CHECK_DATE_pn-genext2fs = "Aug 29, 2012"
CHECK_DATE_pn-genext2fs = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-gettext = "0.18.1.1"
RECIPE_UPSTREAM_DATE_pn-gettext = "Jun 06, 2010"
CHECK_DATE_pn-gettext = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-ghostscript = "9.06"
RECIPE_UPSTREAM_DATE_pn-ghostscript = "Aug 8, 2012"
CHECK_DATE_pn-ghostscript = "Aug 29, 2012"
RECIPE_UPSTREAM_VERION_pn-git = "1.7.12"
RECIPE_UPSTREAM_DATE_pn-git = "Aug 20, 2012"
CHECK_DATE_pn-git = "Aug 29, 2012"
RECIPE_UPSTREAM_VERION_pn-git = "1.8.0"
RECIPE_UPSTREAM_DATE_pn-git = "unknown"
CHECK_DATE_pn-git = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-glew = "1.9.0"
RECIPE_UPSTREAM_DATE_pn-glew = "Jun 08, 2012"
CHECK_DATE_pn-glew = "Aug 29, 2012"
CHECK_DATE_pn-glew = "Nov 02, 2012"
RECIPE_UPSTREAM_DATE_pn-glib-2.0 = "Nov 11, 2011"
RECIPE_UPSTREAM_VERSION_pn-glibc = "2.11.2"
RECIPE_UPSTREAM_DATE_pn-glibc = "May 01, 2010"
@@ -367,9 +372,9 @@ CHECK_DATE_pn-groff = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-grub = "0.97"
RECIPE_UPSTREAM_DATE_pn-grub = "Dec 01, 2005"
RECIPE_NO_UPDATE_REASON_pn-grub="grub2 is a different thing"
RECIPE_UPSTREAM_VERSION_pn-gssdp = "0.10.0"
RECIPE_UPSTREAM_DATE_pn-gssdp="Apr 07, 2011"
CHECK_DATE_pn-gssdp = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gssdp = "0.12.2"
RECIPE_UPSTREAM_DATE_pn-gssdp="Aug 19, 2012"
CHECK_DATE_pn-gssdp = "Nov 08, 2012"
RECIPE_UPSTREAM_DATE_pn-gst-meta-base="n/a"
RECIPE_NO_UPDATE_REASON_pn-gst-plugins-base = "not compatible with gst-fluendo 0.10.x"
RECIPE_UPSTREAM_VERSION_pn-gst-plugins-base = "0.11.90"
@@ -400,10 +405,13 @@ RECIPE_UPSTREAM_DATE_pn-guile = "Jul 07, 2012"
CHECK_DATE_pn-guile = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp-av = "0.10.3"
RECIPE_UPSTREAM_DATE_pn-gupnp-av= "Aug 19, 2012"
CHECK_DATE_pn-gupnp-av = "Aug 29, 2012"
CHECK_DATE_pn-gupnp-av = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp = "0.18.4"
RECIPE_UPSTREAM_DATE_pn-gupnp= "Aug 19, 2012"
CHECK_DATE_pn-gupnp = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp-tools = "0.8.4"
RECIPE_UPSTREAM_DATE_pn-gupnp-tools = "Dec 12, 2011"
CHECK_DATE_pn-gupnp-tools = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-gypsy="0.9"
RECIPE_UPSTREAM_DATE_pn-gypsy="Aug 28, 2012"
CHECK_DATE_pn-gypsy = "Aug 29, 2012"
@@ -418,7 +426,7 @@ RECIPE_UPSTREAM_DATE_pn-hal = "Nov 01, 2009"
CHECK_DATE_pn-hal = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-hdparm = "9.39"
RECIPE_UPSTREAM_DATE_pn-hdparm = "Feb 03, 2012"
CHECK_DATE_pn-hdparm = "Aug 29, 2012"
CHECK_DATE_pn-hdparm = "Nov 09, 2012"
RECIPE_UPSTREAM_VERSION_pn-hicolor-icon-theme = "0.12"
RECIPE_UPSTREAM_DATE_pn-hicolor-icon-theme = "Jan 13, 2010"
CHECK_DATE_pn-hicolor-icon-theme = "Aug 29, 2012"
@@ -443,7 +451,7 @@ CHECK_DATE_pn-insserv = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-insserv = "unknown"
RECIPE_UPSTREAM_VERSION_pn-intltool="0.50.2"
RECIPE_UPSTREAM_DATE_pn-intltool = "Feb 26, 2012"
CHECK_DATE_pn-intltool = "Aug 29, 2012"
CHECK_DATE_pn-intltool = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-iproute2 = "3.5.1"
RECIPE_UPSTREAM_DATE_pn-iproute2 = "Aug 13, 2012"
CHECK_DATE_pn-iproute2 = "Aug 29, 2012"
@@ -455,7 +463,7 @@ RECIPE_UPSTREAM_DATE_pn-iputils = "Oct 06, 2010"
CHECK_DATE_pn-iputils = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-irda-utils = "0.9.18"
RECIPE_UPSTREAM_DATE_pn-irda-utils="Jul 10, 2006"
CHECK_DATE_pn-irda-utils = "Aug 29, 2012"
CHECK_DATE_pn-irda-utils = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-iso-codes = "3.38"
RECIPE_UPSTREAM_DATE_pn-iso-codes = "Aug 08, 2012"
CHECK_DATE_pn-iso-codes = "Aug 29, 2012"
@@ -471,9 +479,9 @@ CHECK_DATE_pn-json-glib = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-kbproto = "1.0.6"
RECIPE_UPSTREAM_DATE_pn-kbproto = "Mar 23, 2012"
CHECK_DATE_pn-kbproto = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-kconfig-frontends = "3.5.0"
RECIPE_UPSTREAM_DATE_pn-kconfig-frontends = "Jul 22, 2012"
CHECK_DATE_pn-kconfig-frontends = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-kconfig-frontends = "3.6.0"
RECIPE_UPSTREAM_DATE_pn-kconfig-frontends = "Oct 06, 2012"
CHECK_DATE_pn-kconfig-frontends = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-kern-tools-native = "check"
RECIPE_UPSTREAM_VERSION_pn-kernelshark = "0.2"
RECIPE_NO_UPDATE_REASON_pn-kernelshark = "0.2 is the latest version."
@@ -492,16 +500,16 @@ RECIPE_UPSTREAM_VERSION_pn-lame = "3.99.5"
RECIPE_UPSTREAM_DATE_pn-lame = "Feb 28, 2012"
CHECK_DATE_pn-lame = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-latencytop = "0.5"
CHECK_DATE_pn-latencytop = "Aug 29, 2011"
CHECK_DATE_pn-latencytop = "Nov 8, 2012"
RECIPE_UPSTREAM_DATE_pn-latencytop = "Apr 28, 2009"
RECIPE_UPSTREAM_VERSION_pn-leafpad = "0.8.18.1"
RECIPE_UPSTREAM_DATE_pn-leafpad = "Dec 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-less = "444"
CHECK_DATE_pn-less = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-less = "Jun 9, 2011"
RECIPE_UPSTREAM_VERSION_pn-less = "451"
RECIPE_UPSTREAM_DATE_pn-less = "Sep 04, 2012"
CHECK_DATE_pn-less = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-liba52="0.7.4"
CHECK_DATE_pn-liba52 = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-liba52="Jul 27, 2002"
CHECK_DATE_pn-liba52 = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libacpi = "0.2"
RECIPE_UPSTREAM_DATE_pn-libacpi = "unknown"
CHECK_DATE_pn-libacpi = "Aug 29, 2012"
@@ -526,10 +534,10 @@ CHECK_DATE_pn-libcap = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libcap = "Jan 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-libcgroup = "0.38-1"
RECIPE_UPSTREAM_DATE_pn-libcgroup = "Jun 06, 2012"
CHECK_DATE_pn-libcgroup = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-libcheck = "0.9.8"
CHECK_DATE_pn-libcheck = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libcheck = "Sep 23, 2009"
CHECK_DATE_pn-libcgroup = "Nov 2, 2012"
RECIPE_UPSTREAM_VERSION_pn-libcheck = "0.9.9"
RECIPE_UPSTREAM_DATE_pn-libcheck = "Oct 22, 2009"
CHECK_DATE_pn-libcheck = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-libconvert-asn1-perl="0.22"
RECIPE_UPSTREAM_DATE_pn-libconvert-asn1-perl = "Apr 16, 2008"
CHECK_DATE_pn-libconvert-asn1-perl = "Aug 30, 2012"
@@ -558,7 +566,7 @@ CHECK_DATE_pn-libevent = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libevent = "Aug 23, 2011"
RECIPE_UPSTREAM_DATE_pn-libexif = "Jul 07, 2012"
RECIPE_UPSTREAM_VERSION_pn-libexif = "0.6.21"
CHECK_DATE_pn-libexif = "Aug 30, 2012"
CHECK_DATE_pn-libexif = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-libfakekey = "0.0+svnr2031"
RECIPE_UPSTREAM_DATE_pn-libfakekey = "Jul 01, 2006"
CHECK_DATE_pn-libfakekey = "Aug 30, 2012"
@@ -615,7 +623,7 @@ RECIPE_UPSTREAM_DATE_pn-libgtkstylus = "Jun 1, 2012"
CHECK_DATE_pn-libgtkstylus = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libical = "0.48"
RECIPE_UPSTREAM_DATE_pn-libical ="Dec 13, 2011"
CHECK_DATE_pn-libical = "Aug 30, 2012"
CHECK_DATE_pn-libical = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libice = "1.0.8"
RECIPE_UPSTREAM_DATE_pn-libice = "Mar 02, 2012"
CHECK_DATE_pn-libice = "Aug 30, 2012"
@@ -624,7 +632,7 @@ RECIPE_UPSTREAM_DATE_pn-libiconv = "Aug 07, 2011"
CHECK_DATE_pn-libiconv = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libid3tag="0.15.1b"
RECIPE_UPSTREAM_DATE_pn-libid3tag="Feb 18, 2004"
CHECK_DATE_pn-libid3tag = "Aug 30, 2012"
CHECK_DATE_pn-libid3tag = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libidn = "1.25"
RECIPE_UPSTREAM_DATE_pn-libidn = "May 23, 2012"
CHECK_DATE_pn-libidn = "Aug 30, 2012"
@@ -634,15 +642,15 @@ CHECK_DATE_pn-libjson = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-liblbxutil = "1.1.0"
RECIPE_UPSTREAM_DATE_pn-liblbxutil = "Dec 4, 2009"
CHECK_DATE_pn-liblbuxutil = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmad = "0.15.2b"
CHECK_DATE_pn-libmad = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libmad = "Apr 04, 2004"
RECIPE_UPSTREAM_VERSION_pn-libmad = "0.15.1b"
RECIPE_UPSTREAM_DATE_pn-libmad = "Feb 18, 2004"
CHECK_DATE_pn-libmad = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmatchbox = "1.9"
RECIPE_UPSTREAM_DATE_pn-libmatchbox = "Aug 01, 2006"
CHECK_DATE_pn-libmatchbox = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmpc="0.9"
RECIPE_UPSTREAM_VERSION_pn-libmpc="1.0.1"
RECIPE_UPSTREAM_DATE_pn-libmpc = "unknown"
CHECK_DATE_pn-libmpc = "Jan 25, 2011"
CHECK_DATE_pn-libmpc = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmusicbrainz="5.0.1"
RECIPE_UPSTREAM_DATE_pn-libmusicbrainz="unknown"
CHECK_DATE_pn-libmusicbrainz = "Aug 30, 2012"
@@ -669,7 +677,7 @@ RECIPE_UPSTREAM_DATE_pn-liboil = "Feb 01, 2010"
CHECK_DATE_pn-liboil = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libomxil = "0.9.3"
RECIPE_UPSTREAM_DATE_pn-libomxil = "May 20, 2011"
CHECK_DATE_pn-libomxil = "Aug 30, 2012"
CHECK_DATE_pn-libomxil = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libopensync-plugin-evolution2 = "0.39"
RECIPE_UPSTREAM_DATE_pn-libopensyc-plugin-evolution2 = "Aug 26, 2011"
CHECK_DATE_pn-libopensync-plugin-evolution2 = "Aug 30, 2012"
@@ -685,19 +693,20 @@ CHECK_DATE_pn-libpam = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libpam = "Oct 25, 2011"
RECIPE_UPSTREAM_VERSION_pn-libpcap="4.3.0"
RECIPE_UPSTREAM_DATE_pn-libpcap="Jun 12, 2012"
CHECK_DATE_pn-libpcap = "Aug 30, 2012"
CHECK_DATE_pn-libpcap = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libpciaccess = "0.13.1"
RECIPE_UPSTREAM_DATE_pn-libpciaccess = "Apr 09, 2012"
CHECK_DATE_pn-libpciaccess = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libpcre = "8.31"
RECIPE_UPSTREAM_DATE_pn-libpcre = "Jul 23, 2012"
CHECK_DATE_pn-libpcre = "Aug 30, 2012"
CHECK_DATE_pn-libpcre = "Nov 8, 2012"
RECIPE_NO_UPDATE_REASON_pn-libpng = "1.4.3 and later changes the API and breaks libmatchbox. Sticking with the 1.2.x series instead"
RECIPE_UPSTREAM_VERSION_pn-libpng = "1.5.11"
RECIPE_UPSTREAM_DATE_pn-libpng = "Jun 14, 2012"
CHECK_DATE_pn-libpng = "Jul 05, 2012"
RECIPE_UPSTREAM_VERSION_pn-libproxy="0.4.7"
CHECK_DATE_pn-libproxy = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libproxy = "0.4.10"
RECIPE_UPSTREAM_DATE_pn-libproxy = "Oct 15, 2012"
CHECK_DATE_pn-libproxy = "Nov 08, 2012"
RECIPE_UPSTREAM_DATE_pn-libproxy="Jun 01, 2011"
RECIPE_UPSTREAM_DATE_pn-libpthread-stubs = "Oct 14, 2009"
RECIPE_UPSTREAM_VERSION_pn-libpthread-stubs = "0.3"
@@ -707,7 +716,7 @@ RECIPE_UPSTREAM_DATE_pn-librsvg = "Aug 19, 2012"
CHECK_DATE_pn-librsvg = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsamplerate0 = "0.1.8"
RECIPE_UPSTREAM_DATE_pn-libsamplerate0 = "Aug 15, 2011"
CHECK_DATE_pn-libsamplerate0 = "Aug 30, 2012"
CHECK_DATE_pn-libsamplerate0 = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsdl = "1.2.15"
CHECK_DATE_pn-libsdl = "Mar 14, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsm = "1.2.1"
@@ -732,7 +741,7 @@ CHECK_DATE_pn-libtheora = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libtimedate-perl = "1.20"
RECIPE_UPSTREAM_VERSION_pn-libtirpc = "0.2.2"
RECIPE_UPSTREAM_DATE_pn-libtirpc = "May 02, 2011"
CHECK_DATE_pn-libtirpc = "Aug 30, 2012"
CHECK_DATE_pn-libtirpc = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libtool="2.4.2"
CHECK_DATE_pn-libtool = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libunique = "2.91.4"
@@ -905,7 +914,7 @@ RECIPE_UPSTREAM_DATE_pn-loudmouth = "Mar 27, 2012"
CHECK_DATE_pn-loudmouth = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-lrzsz="0.12.20"
RECIPE_UPSTREAM_DATE_pn-lrzsz="Dec 31, 1998"
CHECK_DATE_pn-lrzsz = "Aug 31, 2012"
CHECK_DATE_pn-lrzsz = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-lsb = "4.1"
CHECK_DATE_pn-lsb = "Sep 5, 2012"
RECIPE_UPSTREAM_DATE_pn-lsb = "Jan 04, 2001"
@@ -917,7 +926,7 @@ CHECK_DATE_pn-lsof = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-lsof = "Apr 10, 2012"
RECIPE_UPSTREAM_VERSION_pn-ltp = "20120903"
RECIPE_UPSTREAM_DATE_pn-ltp = "Sep 3, 2012"
CHECK_DATE_pn-ltp = "Sep 5, 2012"
CHECK_DATE_pn-ltp = "Nov 27, 2012"
RECIPE_UPSTREAM_DATE_pn-lttng-ust = "Dec 15, 2011"
RECIPE_UPSTREAM_VERSION_pn-lzo = "2.06"
RECIPE_UPSTREAM_DATE_pn-lzo = "Aug 12, 2011"
@@ -951,7 +960,7 @@ RECIPE_UPSTREAM_DATE_pn-menu-cache = "May 20, 2012"
CHECK_DATE_pn-menu-cache = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-minicom = "2.6.1"
RECIPE_UPSTREAM_DATE_pn-minicom = "Mar 29, 2012"
CHECK_DATE_pn-minicom = "Aug 31, 2012"
CHECK_DATE_pn-minicom = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-mesa-dri = "8.0.3"
RECIPE_UPSTREAM_DATE_pn-mesa-dri="May 18, 2012"
CHECK_DATE_pn-mesa-dri = "Aug 31, 2012"
@@ -985,7 +994,7 @@ CHECK_DATE_pn-mpeg2dec = "Aug 31, 2012"
RECIPE_NO_UPDATE_REASON_pn-mpeg2dec = "Why are we currently at 0.4.1?"
RECIPE_UPSTREAM_VERSION_pn-mpfr="3.1.1"
RECIPE_UPSTREAM_DATE_pn-mpfr = "Jul 04, 2012"
CHECK_DATE_pn-mpfr = "Aug 31, 2012"
CHECK_DATE_pn-mpfr = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-msynctool = "0.38"
RECIPE_UPSTREAM_DATE_pn-msynctool = "Nov 11, 2008"
CHECK_DATE_pn-msynctool = "Aug 31, 2012"
@@ -1016,7 +1025,7 @@ CHECK_DATE_pn-nfs-utils = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-nfs-utils = "May 14, 2012"
RECIPE_UPSTREAM_DATE_pn-ocf-linux = "Jan 27, 2012"
RECIPE_UPSTREA_VERSION_pn-ocf-linux = "20120107"
CHECK_DATE_pn-ocf-linux = "Aug 31, 2012"
CHECK_DATE_pn-ocf-linux = "Nov 09, 2012"
RECIPE_UPSTREAM_VERSION_pn-ofono = "1.6"
RECIPE_UPSTREAM_DATE_pn-ofono="Apr 20, 2012"
CHECK_DATE_pn-ofono = "Aug 31, 2012"
@@ -1049,7 +1058,7 @@ RECIPE_UPSTREAM_DATE_pn-opkg_nogpg = "Feb 01, 2010"
CHECK_DATE_pn-opkg_nogpg = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-oprofile = "0.9.8"
RECIPE_UPSTREAM_DATE_pn-oprofile = "Aug 27, 2011"
CHECK_DATE_pn-oprofile = "Aug 31, 2012"
CHECK_DATE_pn-oprofile = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-oprofileui = "0.0+git0+82ecf8c6b53b84f80682a8312f9defa83a95f2a3"
CHECK_DATE_pn-oprofileui = "Aug 31, 2011"
RECIPE_UPSTREAM_DATE_pn-oprofileui = "Nov 14, 2011"
@@ -1112,8 +1121,8 @@ RECIPE_UPSTREAM_VERSION_pn-portmap = "6.0"
RECIPE_UPSTREAM_DATE_pn-portmap = "May 01, 2007"
CHECK_DATE_pn-portmap = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-postinsts="1.0"
RECIPE_UPSTREAM_VERSION_pn-powertop = "1.97"
CHECK_DATE_pn-powertop = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-powertop = "2.1"
CHECK_DATE_pn-powertop = "Nov 8, 2012"
RECIPE_NO_UPDATE_REASON_pn-powertop = "Do not upgrade to version 1.97 since it's a beta release of the comming PowerTOP 2.0"
RECIPE_UPSTREAM_DATE_pn-powertop = "Jan 5, 2011"
RECIPE_UPSTREAM_VERSION_pn-ppp-dialin = "check"
@@ -1130,9 +1139,9 @@ RECIPE_UPSTREAM_DATE_pn-procps = "unknown"
CHECK_DATE_pn-procps = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-pseudo = "1.2"
CHECK_DATE_pn-pseudo = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-psmisc = "22.19"
CHECK_DATE_pn-psmisc = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-psmisc = "Jun 22, 2012"
RECIPE_UPSTREAM_VERSION_pn-psmisc = "22.20"
RECIPE_UPSTREAM_DATE_pn-psmisc = "Sep 20, 2012"
CHECK_DATE_pn-psmisc = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-psplash = "0.0+svnr424"
RECIPE_UPSTREAM_DATE_pn-psplash = "May 01, 2009"
CHECK_DATE_pn-psplash = "Aug 31, 2012"
@@ -1149,7 +1158,7 @@ RECIPE_UPSTREAM_VERSION_pn-python-pycurl = "7.19.0"
CHECK_DATE_pn-python-pycurl = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-python-scons = "2.2.0"
RECIPE_UPSTREAM_DATE_pn-python-scons = "Aug 05, 2012"
CHECK_DATE_pn-python-scons = "Sep 11, 2012"
CHECK_DATE_pn-python-scons = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-python="3.2.3"
RECIPE_UPSTREAM_DATE_pn-python = "Apr 10, 2012"
CHECK_DATE_pn-python = "Aug 31, 2012"
@@ -1175,7 +1184,7 @@ RECIPE_UPSTREAM_DATE_pn-quilt = "Feb 29, 2012"
CHECK_DATE_pn-quilt = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-quota = "4.00"
RECIPE_UPSTREAM_DATE_pn-quota = "Aug 17, 2011"
CHECK_DATE_pn-quota = "Sep 03, 2012"
CHECK_DATE_pn-quota = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-randrproto = "1.4.0"
RECIPE_UPSTREAM_DATE_pn-randrproto = "Jul 12, 2012"
CHECK_DATE_pn-randrproto = "Sep 03, 2012"
@@ -1196,7 +1205,7 @@ RECIPE_UPSTREAM_DATE_pn-resourceproto = "May 27, 2011"
CHECK_DATE_pn-resourceproto = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-rpcbind = "0.2.0"
RECIPE_UPSTREAM_DATE_pn-rpcbind = "May 29, 2009"
CHECK_DATE_pn-rpcbind = "Sep 03, 2012"
CHECK_DATE_pn-rpcbind = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-rpm = "5.4.10"
RECIPE_UPSTREAM_DATE_pn-rpm = "Jul 06, 2012"
CHECK_DATE_pn-rpm = "Sep 03, 2012"
@@ -1226,7 +1235,7 @@ RECIPE_UPSTREAM_VERSION_pn-sed = "4.2"
CHECK_DATE_pn-sed = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-sed = "Apr 30, 2009"
RECIPE_UPSTREAM_VERSION_pn-setserial = "2.17"
CHECK_DATE_pn-setserial = "Sep 03, 2012"
CHECK_DATE_pn-setserial = "Nov 09, 2012"
RECIPE_UPSTREAM_DATE_pn-setserial = "Feb 09, 2000"
RECIPE_UPSTREAM_VERSION_pn-settings-daemon = "3.4.2"
RECIPE_UPSTREAM_DATE_pn-settings-daemon = "May 15, 2012"
@@ -1253,12 +1262,12 @@ RECIPE_UPSTREAM_DATE_pn-socat = "Aug 07, 2011"
RECIPE_UPSTREAM_VERSION_pn-speex="1.2rc1"
RECIPE_UPSTREAM_DATE_pn-speex="Jul 24, 2008"
CHECK_DATE_pn-speex = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.7.13"
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Jun 11, 2012"
CHECK_DATE_pn-sqlite3= "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.7.14.1"
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Oct 22, 2012"
CHECK_DATE_pn-sqlite3= "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-squashfs-tools = "4.2"
RECIPE_UPSTREAM_DATE_pn-squashfs-tools = "Feb 28, 2011"
CHECK_DATE_pn-squashfs-tools = "Sep 03, 2012"
CHECK_DATE_pn-squashfs-tools = "Nov 09, 2012"
RECIPE_UPSTREAM_DATE_pn-startup-notification = "May 16, 2011"
RECIPE_UPSTREAM_VERSION_pn-startup-notification = "0.12"
CHECK_DATE_pn-startup-notification = "Sep 03, 2012"
@@ -1266,7 +1275,7 @@ RECIPE_UPSTREAM_VERSION_pn-stat = "3.3"
CHECK_DATE_pn-stat = "Dec 30, 2011"
RECIPE_UPSTREAM_VERSION_pn-strace = "4.7"
RECIPE_UPSTREAM_DATE_pn-strace = "May 02, 2012"
CHECK_DATE_pn-strace = "Sep 03, 2012"
CHECK_DATE_pn-strace = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-subversion = "1.7.6"
RECIPE_UPSTREAM_DATE_pn-subversion = "Aug 15, 2012"
CHECK_DATE_pn-subversion = "Sep 03, 2012"
@@ -1274,7 +1283,7 @@ RECIPE_UPSTREAM_VERSION_pn-sudo = "1.8.5p3"
RECIPE_UPSTREAM_DATE_pn-sudo = "Aug 13, 2012"
CHECK_DATE_pn-sudo = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysfsutils = "2.1.0"
CHECK_DATE_pn-sysfsutils = "Sep 03, 2012"
CHECK_DATE_pn-sysfsutils = "Nov 02, 2012"
RECIPE_UPSTREAM_DATE_pn-sysfsutils = "Aug 23, 2006"
RECIPE_UPSTREAM_VERSION_pn-sysklogd = "1.5"
RECIPE_UPSTREAM_DATE_pn-sysklogd = "Oct 25, 2010"
@@ -1286,16 +1295,16 @@ RECIPE_UPSTREAM_VERSION_pn-sysprof = "1.1.8"
RECIPE_UPSTREAM_VERSION_pn-sysprof = "6b5b8432711ef5c747f8375073cd9af88922d3c6"
RECIPE_UPSTREAM_DATE_pn-sysprof = "Dec 01, 2010"
CHECK_DATE_pn-sysprof = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysstat = "10.1.1"
CHECK_DATE_pn-sysstat = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-sysstat = "Jul 07, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysstat = "10.1.2"
RECIPE_UPSTREAM_DATE_pn-sysstat = "Oct 06, 2012"
CHECK_DATE_pn-sysstat = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysvinit = "2.86"
RECIPE_UPSTREAM_DATE_pn-sysvinit = "Oct 10, 2006"
CHECK_DATE_pn-sysvinit = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-table = "d42a44938699ee30a998fc42bc149aebf69389db"
RECIPE_UPSTREAM_VERSION_pn-taglib = "1.7.2"
RECIPE_UPSTREAM_DATE_pn-taglib = "Apr 19, 2010"
CHECK_DATE_pn-taglib = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-taglib = "1.8"
RECIPE_UPSTREAM_DATE_pn-taglib = "Sep 05, 2012"
CHECK_DATE_pn-taglib = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-talloc = "2.0.7"
RECIPE_UPSTREAM_DATE_pn-talloc = "Sep 16, 2011"
CHECK_DATE_pn-talloc = "Sep 03, 2012"
@@ -1306,7 +1315,7 @@ RECIPE_UPSTREAM_DATE_pn-task-base="n/a"
RECIPE_UPSTREAM_DATE_pn-tcf-agent = "Jul 07, 2011"
RECIPE_UPSTREAM_VERSION_pn-tcl="8.5.12"
RECIPE_UPSTREAM_DATE_pn-tcl = "Jul 27, 2012"
CHECK_DATE_pn-tcl = "Sep 03, 2012"
CHECK_DATE_pn-tcl = "Nov 8, 2012"
RECIPE_UPSTREAM_DATE_pn-tcp-wrappers = "Apr 08, 1997"
RECIPE_UPSTREAM_DATE_pn-telepathy-glib = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-telepathy-glib = "0.19.8"
@@ -1344,7 +1353,7 @@ RECIPE_UPSTREAM_DATE_pn-trapproto = "Jan 01, 2006"
CHECK_DATE_pn-trapproto = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-tremor="20120122"
RECIPE_UPSTREAM_DATE_pn-tremor="Jan 22, 2012"
CHECK_DATE_pn-tremor = "Sep 03, 2012"
CHECK_DATE_pn-tremor = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-tslib = "1.0"
RECIPE_UPSTREAM_DATE_pn-tslib ="Sep 09, 2006"
CHECK_DATE_pn-tslib = "Sep 03, 2012"
@@ -1390,7 +1399,7 @@ RECIPE_UPSTREAM_DATE_pn-vte="May 30, 2012"
CHECK_DATE_pn-vte = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-watchdog = "5.12"
RECIPE_UPSTREAM_DATE_pn-watchdog = "Apr 05, 2012"
CHECK_DATE_pn-watchdog = "Sep 03, 2012"
CHECK_DATE_pn-watchdog = "Nov 09, 2012"
RECIPE_UPSTREAM_VERSION_pn-wbxml2 = "0.10.8"
RECIPE_UPSTREAM_DATE_pn-wbxml2 = "Jul 06, 2010"
CHECK_DATE_pn-wbxml2 = "Sep 03, 2012"
@@ -1406,7 +1415,7 @@ RECIPE_UPSTREAM_DATE_pn-which = "Aug 01, 2008"
CHECK_DATE_pn-which = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-wireless-tools = "29"
RECIPE_UPSTREAM_DATE_pn-wireless-tools="Sep 18, 2007"
CHECK_DATE_pn-wireless-tools = "Sep 03, 2012"
CHECK_DATE_pn-wireless-tools = "Nov 08, 2012"
RECIPE_UPSTREAM_DATE_pn-wpa-supplicant="Sep 07, 2010"
RECIPE_UPSTREAM_VERSION_pn-wpa-supplicant = "1.0"
CHECK_DATE_pn-wpa-supplicant = "Sep 03, 2012"

View File

@@ -37,7 +37,7 @@ DISTRO = "poky-tiny"
# Distro config is evaluated after the machine config, so we have to explicitly
# set the kernel provider to override a machine config.
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-tiny"
PREFERRED_VERSION_linux-yocto-tiny = "3.2%"
PREFERRED_VERSION_linux-yocto-tiny = "3.4%"
# We can use packagegroup-core-boot, but in the future we may need a new packagegroup-core-tiny
#POKY_DEFAULT_EXTRA_RDEPENDS += "packagegroup-core-boot"

View File

@@ -1,6 +1,6 @@
DISTRO = "poky"
DISTRO_NAME = "Poky 7.0 (Yocto Project 1.2 Reference Distro)"
DISTRO_VERSION = "1.2+snapshot-${DATE}"
DISTRO_NAME = "Poky 8.0 (Yocto Project 1.3 Reference Distro)"
DISTRO_VERSION = "1.3+snapshot-${DATE}"
SDK_VENDOR = "-pokysdk"
SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"
@@ -11,7 +11,7 @@ TARGET_VENDOR = "-poky"
LOCALCONF_VERSION = "1"
LAYER_CONF_VERSION ?= "6"
DISTRO_FEATURES_append = " largefile opengl"
DISTRO_FEATURES_append = " largefile opengl multiarch"
PREFERRED_VERSION_linux-yocto ?= "3.4%"
PREFERRED_VERSION_linux-yocto_qemux86 ?= "3.4%"
@@ -69,9 +69,10 @@ CONNECTIVITY_CHECK_URIS ?= " \
http://bugzilla.yoctoproject.org/report.cgi"
SANITY_TESTED_DISTROS ?= " \
Yocto (Built by Poky 8.0) 1.2 \n \
Yocto (Built by Poky 7.0) 1.2 \n \
Poky 7.0 (Yocto Project 1.2 Reference Distro) \n \
Poky 8.0 (Yocto Project 1.3 Reference Distro) \n \
Poky 7.0 (Yocto Project 1.2 Reference Distro) 1.2 \n \
Poky 8.0 (Yocto Project 1.3 Reference Distro) 1.3 \n \
Ubuntu 10.04.4 LTS \n \
Ubuntu 11.10 \n \
Ubuntu 12.04 LTS \n \
@@ -104,6 +105,6 @@ OELAYOUT_ABI = "8"
INHERIT += "poky-sanity"
#WARN_QA = "unsafe-references-in-binaries unsafe-references-in-scripts"
WARN_QA = ""
WARN_QA = "textrel"
ERROR_QA = "dev-so debug-deps dev-deps debug-files arch la2 pkgconfig la perms useless-rpaths rpaths staticdev ldflags"

View File

@@ -205,6 +205,22 @@ USER_CLASSES ?= "buildstats image-mklibs image-prelink"
# By default disable interactive patch resolution (tasks will just fail instead):
PATCHRESOLVE = "noop"
#
# Disk Space Monitoring during the build
#
# Monitor the disk space during the build. If there is less that 1GB of space or less
# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
# of the build. The reason for this is that running completely out of space can corrupt
# files and damages the build in ways which may not be easily recoverable.
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
#
# Shared-state files from other locations
#
@@ -216,9 +232,12 @@ PATCHRESOLVE = "noop"
# would contain the sstate-cache results from previous builds (possibly from other
# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the
# cache locations to check for the shared objects.
# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH
# at the end as shown in the examples below. This will be substituted with the
# correct path within the directory structure.
#SSTATE_MIRRORS ?= "\
#file://.* http://someserver.tld/share/sstate/ \n \
#file://.* file:///some/local/dir/sstate/"
#file://.* http://someserver.tld/share/sstate/PATH \n \
#file://.* file:///some/local/dir/sstate/PATH"
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
# track the version of this file when it was generated. This can safely be ignored if

View File

@@ -4,21 +4,25 @@
PACKAGE_ARCH = "all"
# No need for virtual/libc or a cross compiler
INHIBIT_DEFAULT_DEPS = "1"
python () {
# Allow this class to be included but overridden - only set
# the values if we're still "all" package arch.
if d.getVar("PACKAGE_ARCH") == "all":
# No need for virtual/libc or a cross compiler
d.setVar("INHIBIT_DEFAULT_DEPS","1")
# Set these to a common set of values, we shouldn't be using them other that for WORKDIR directory
# naming anyway
TARGET_ARCH = "allarch"
TARGET_OS = "linux"
TARGET_CC_ARCH = "none"
TARGET_LD_ARCH = "none"
TARGET_AS_ARCH = "none"
PACKAGE_EXTRA_ARCHS = ""
# Set these to a common set of values, we shouldn't be using them other that for WORKDIR directory
# naming anyway
d.setVar("TARGET_ARCH", "allarch")
d.setVar("TARGET_OS", "linux")
d.setVar("TARGET_CC_ARCH", "none")
d.setVar("TARGET_LD_ARCH", "none")
d.setVar("TARGET_AS_ARCH", "none")
d.setVar("PACKAGE_EXTRA_ARCHS", "")
# No need to do shared library processing or debug symbol handling
EXCLUDE_FROM_SHLIBS = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
INHIBIT_PACKAGE_STRIP = "1"
# No need to do shared library processing or debug symbol handling
d.setVar("EXCLUDE_FROM_SHLIBS", "1")
d.setVar("INHIBIT_PACKAGE_DEBUG_SPLIT", "1")
d.setVar("INHIBIT_PACKAGE_STRIP", "1")
}
do_package[stamp-extra-info] = ""

View File

@@ -8,7 +8,6 @@
ARCHIVE_EXCLUDE_FROM ?= ".pc autom4te.cache"
ARCHIVE_TYPE ?= "tar srpm"
DISTRO ?= "poky"
PATCHES_ARCHIVE_WITH_SERIES = 'yes'
SOURCE_ARCHIVE_LOG_WITH_SCRIPTS ?= '${@d.getVarFlag('ARCHIVER_MODE', 'log_type') \
if d.getVarFlag('ARCHIVER_MODE', 'log_type') != 'none' else 'logs_with_scripts'}'
@@ -491,7 +490,7 @@ def create_diff_gz(d):
f.close()
s=d.getVar('S', True)
distro = d.getVar('DISTRO',True)
distro = d.getVar('DISTRO',True) or ""
dest = s + '/' + distro + '/files'
if not os.path.exists(dest):
bb.mkdirhier(dest)

View File

@@ -34,6 +34,21 @@ EXTRA_AUTORECONF = "--exclude=autopoint"
export lt_cv_sys_lib_dlsearch_path_spec = "${libdir} ${base_libdir}"
# When building tools for use at build-time it's recommended for the build
# system to use these variables when cross-compiling.
# (http://sources.redhat.com/autobook/autobook/autobook_270.html)
export CPP_FOR_BUILD = "${BUILD_CPP}"
export CPPFLAGS_FOR_BUILD = "${BUILD_CPPFLAGS}"
export CC_FOR_BUILD = "${BUILD_CC}"
export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
export CXX_FOR_BUILD = "${BUILD_CXX}"
export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}"
export LD_FOR_BUILD = "${BUILD_LD}"
export LDFLAGS_FOR_BUILD = "${BUILD_LDFLAGS}"
def autotools_set_crosscompiling(d):
if not bb.data.inherits_class('native', d):
return " cross_compiling=yes"
@@ -127,10 +142,11 @@ autotools_do_configure() {
cd ${S}
# Remove any previous copy of the m4 macros
rm -rf ${B}/aclocal-copy/
ACLOCAL="aclocal --system-acdir=${B}/aclocal-copy/"
if [ x"${acpaths}" = xdefault ]; then
acpaths=
for i in `find ${S} -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \
grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do
grep -v 'acinclude.m4' | grep -v 'aclocal-copy' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do
acpaths="$acpaths -I $i"
done
else
@@ -140,16 +156,19 @@ autotools_do_configure() {
automake --version
echo "AUTOV is $AUTOV"
if [ -d ${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV ]; then
acpaths="$acpaths -I${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV"
ACLOCAL="$ACLOCAL --automake-acdir=${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV"
fi
# The aclocal directory could get modified by other processes
# uninstalling data from the sysroot. See Yocto #861 for details.
# We avoid this by taking a copy here and then files cannot disappear.
if [ -d ${STAGING_DATADIR}/aclocal ]; then
# for scratch build this directory can be empty
# so avoid cp's no files to copy error
cp-noerror ${STAGING_DATADIR}/aclocal ${B}/aclocal-copy/
acpaths="$acpaths -I ${B}/aclocal-copy/"
# We copy native first, then target. This avoids certain races since cp-noerror
# won't overwrite existing files.
mkdir -p ${B}/aclocal-copy/
if [ -d ${STAGING_DATADIR_NATIVE}/aclocal ]; then
cp-noerror ${STAGING_DATADIR_NATIVE}/aclocal/ ${B}/aclocal-copy/
fi
if [ -d ${STAGING_DATADIR}/aclocal -a "${STAGING_DATADIR_NATIVE}/aclocal" != "${STAGING_DATADIR}/aclocal" ]; then
cp-noerror ${STAGING_DATADIR}/aclocal/ ${B}/aclocal-copy/
fi
# autoreconf is too shy to overwrite aclocal.m4 if it doesn't look
# like it was auto-generated. Work around this by blowing it away
@@ -162,21 +181,24 @@ autotools_do_configure() {
else
CONFIGURE_AC=configure.ac
fi
if ! echo ${EXTRA_OECONF} | grep -q "\-\-disable-nls"; then
if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
: do nothing -- we still have an old unmodified configure.ac
else
bbnote Executing glib-gettextize --force --copy
echo "no" | glib-gettextize --force --copy
fi
else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
# We'd call gettextize here if it wasn't so broken...
cp ${STAGING_DATADIR}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
if [ -d ${S}/po/ -a ! -e ${S}/po/Makefile.in.in ]; then
cp ${STAGING_DATADIR}/gettext/po/Makefile.in.in ${S}/po/
fi
if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
: do nothing -- we still have an old unmodified configure.ac
else
bbnote Executing glib-gettextize --force --copy
echo "no" | glib-gettextize --force --copy
fi
else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
# We'd call gettextize here if it wasn't so broken...
cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
if [ -d ${S}/po/ ]; then
cp ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po/
fi
for i in gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4; do
for j in `find ${S} -name $i | grep -v aclocal-copy`; do
rm $j
done
done
fi
fi
mkdir -p m4
@@ -184,8 +206,8 @@ autotools_do_configure() {
bbnote Executing intltoolize --copy --force --automake
intltoolize --copy --force --automake
fi
bbnote Executing autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
bbnote Executing ACLOCAL=\"$ACLOCAL\" autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
cd $olddir
fi
if [ -e ${S}/configure ]; then

View File

@@ -80,7 +80,7 @@ BASEDEPENDS = "${@base_dep_prepend(d)}"
DEPENDS_prepend="${BASEDEPENDS} "
FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files"], d)}"
# THISDIR only works properly with imediate expansion as it has to run
# in the context of the location its used (:=)
THISDIR = "${@os.path.dirname(d.getVar('FILE', True))}"
@@ -183,6 +183,8 @@ def preferred_ml_updates(d):
providers.append(v)
for pkg, reason in blacklists.items():
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-") or 'cross-canadian' in pkg:
continue
for p in prefixes:
newpkg = p + "-" + pkg
if not d.getVarFlag('PNBLACKLIST', newpkg, True):
@@ -191,7 +193,18 @@ def preferred_ml_updates(d):
for v in versions:
val = d.getVar(v, False)
pkg = v.replace("PREFERRED_VERSION_", "")
if pkg.endswith("-native") or pkg.startswith("nativesdk-"):
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-"):
continue
if 'cross-canadian' in pkg:
for p in prefixes:
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(v)
if newname != v:
newval = localdata.getVar(v, True)
d.setVar(newname, newval)
continue
for p in prefixes:
newname = "PREFERRED_VERSION_" + p + "-" + pkg
@@ -201,16 +214,38 @@ def preferred_ml_updates(d):
for prov in providers:
val = d.getVar(prov, False)
pkg = prov.replace("PREFERRED_PROVIDER_", "")
if pkg.endswith("-native") or pkg.startswith("nativesdk-"):
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-"):
continue
if 'cross-canadian' in pkg:
for p in prefixes:
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(prov)
if newname != prov:
newval = localdata.expand(val)
d.setVar(newname, newval)
continue
virt = ""
if pkg.startswith("virtual/"):
pkg = pkg.replace("virtual/", "")
virt = "virtual/"
for p in prefixes:
newname = "PREFERRED_PROVIDER_" + virt + p + "-" + pkg
if pkg != "kernel":
val = p + "-" + val
# implement variable keys
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(prov)
if newname != prov:
d.setVar(newname, localdata.expand(val))
# implement alternative multilib name
newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg)
if not d.getVar(newname, False):
d.setVar(newname, val)
@@ -218,7 +253,7 @@ def preferred_ml_updates(d):
mp = (d.getVar("MULTI_PROVIDER_WHITELIST", True) or "").split()
extramp = []
for p in mp:
if p.endswith("-native") or p.startswith("nativesdk-"):
if p.endswith(("-native", "-crosssdk")) or p.startswith("nativesdk-") or 'cross-canadian' in p:
continue
virt = ""
if p.startswith("virtual/"):
@@ -334,6 +369,38 @@ do_build () {
:
}
def set_packagetriplet(d):
archs = []
tos = []
tvs = []
archs.append(d.getVar("PACKAGE_ARCHS", True).split())
tos.append(d.getVar("TARGET_OS", True))
tvs.append(d.getVar("TARGET_VENDOR", True))
def settriplet(d, varname, archs, tos, tvs):
triplets = []
for i in range(len(archs)):
for arch in archs[i]:
triplets.append(arch + tvs[i] + "-" + tos[i])
triplets.reverse()
d.setVar(varname, " ".join(triplets))
settriplet(d, "PKGTRIPLETS", archs, tos, tvs)
variants = d.getVar("MULTILIB_VARIANTS", True) or ""
for item in variants.split():
localdata = bb.data.createCopy(d)
overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
localdata.setVar("OVERRIDES", overrides)
bb.data.update_data(localdata)
archs.append(localdata.getVar("PACKAGE_ARCHS", True).split())
tos.append(localdata.getVar("TARGET_OS", True))
tvs.append(localdata.getVar("TARGET_VENDOR", True))
settriplet(d, "PKGMLTRIPLETS", archs, tos, tvs)
python () {
import exceptions, string, re
@@ -521,6 +588,8 @@ python () {
if ".zip" in srcuri:
d.appendVarFlag('do_unpack', 'depends', ' unzip-native:do_populate_sysroot')
set_packagetriplet(d)
# 'multimachine' handling
mach_arch = d.getVar('MACHINE_ARCH', True)
pkg_arch = d.getVar('PACKAGE_ARCH', True)

Some files were not shown because too many files have changed in this diff Show More