Compare commits

...

1426 Commits

Author SHA1 Message Date
Marko Lindqvist
3ae1a4ba97 harfbuzz: fix install of version.h
version.h is listed both in pkginclude_HEADERS (via $HBHEADERS) and
nodist_pkginclude_HEADERS. This double listing is likely cause of
the make install error:
/usr/bin/install: cannot create regular file `.../harfbuzz/0.9.10-r0/image/usr/include/harfbuzz/hb-version.h': File exists
Just remove the nodist_pkginclude_HEADERS entry. We're not creating
the tarball, and listing version.h here wouldn't prevent the other
listing from including it to tarball anyway.

(From OE-Core rev: 1489a69cecb1dcc3502a4c24beaea81e6ca6dacc)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-31 12:30:13 +00:00
Richard Purdie
5e17deac79 rpm: Ensure native binaries are correctly wrapped
(From OE-Core rev: 1cdeff2c50a13c7238543ee1e4e1eb60753120e2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-31 12:26:43 +00:00
Paul Eggleton
b47d0b23d9 valgrind: explicitly disable MPI2 support
We don't have support for this in OE-Core, so ensure we don't pick this
up from the build host if e.g. openmpi development files happen to be
installed there.

Fixes [YOCTO #3726].

(From OE-Core rev: cc490d76aba0a778409ca1a3d0e1f2c308684c9b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-30 08:34:32 -08:00
Saul Wold
8617f7eb15 module.bbclass: Don't add pkg_postinst/pkg_prerm to all packages in recipe
The code in module.bbclass was appending the pkg_postinst and
pkg_prerm to all packages that are part of a given recipe, meaning
that the -lic, -dev, -doc, ... packages all got the scriptlet
This change uses  only which macthes with the RDEPENDS and FILES
already used in module.bbclass.

The failure was that rootfs creation would fail due to the -lic package
being installed before the kernel and the script would fail.

[YOCTO #3803]

(From OE-Core rev: cf05c4578c99c0cb885cf2706f7f2b39b100aeb8)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-29 16:17:25 -08:00
Saul Wold
87017b554e rootfs_rpm: Escape the backtick to ensure the ls runs on the target
This change ensures that the ls /etc/rpm-postinsts runs in the target
at first boot time, rather than at the creation time of the script on
the host.

This was causing the following error in the rootfs log:

+ install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d
+ i=
+ ls /etc/rpm-postinsts/
ls: cannot access /etc/rpm-postinsts/: No such file or directory

(From OE-Core rev: e893cf0b3843701e80f5c9f47be04d1a88e5ed68)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-29 16:17:25 -08:00
Paul Eggleton
6930251f6c rpm: properly disable perl file dependency checking for rpmdeps
We don't want the perl module dependencies being added to each package
by rpmdeps because it causes too many problems when the modules aren't
available at install time (since they get added in do_package which is
too late for the build system to ensure they are available), and it
appears that the perl dependency gathering isn't working reliably in any
case judging by how they are detected on some build hosts and not
others.

This was being disabled previously but it seems like the macros moved
to a different file at some point and nobody noticed; thus make sure we
disable the macros in all RPM macro files.

Should fix [YOCTO #3699].

(From OE-Core rev: e43a72af9055b76eb2ad7e2e42e6a5f3c8854efa)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-25 12:42:08 +00:00
Radu Moisan
f0e02dc132 sample.extended: Add DISTRO_FEATURES_INITMAN
(From meta-yocto rev: 5d34575d3f732580ecfe0ccb0f915b5c6c0ca0a0)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:46 +00:00
Khem Raj
34fb092018 systemd: Fix build on ppc
ppc discovers an interesting issue in linking systemd where a library is
missing in link cmdline and linker barfs

./.libs/libsystemd-core.a(libsystemd_core_la-manager.o): In function
`manager_check_finished':
/builddir/build/BUILD/systemd-196/src/core/manager.c:2092: undefined
reference to `sd_notifyf'
collect2: error: ld returned 1 exit status

For more info see

https://bugzilla.redhat.com/show_bug.cgi?id=888255

(From OE-Core rev: 2e2a91025ca9c113365c810ce08b48201fe792b8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:03 +00:00
Paul Eggleton
5ec82dd847 libcheck: fix HOMEPAGE
This was pointing to the zypper homepage, presumably a copy-paste error.

(From OE-Core rev: 5f363483253af712f8ccb173c4cc9d77b7c1ae8c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Paul Eggleton
f0c8897dc8 classes/image-swab: remove zypper-related references
Remove references to libzypp, zypper and sat-solver which have been
removed.

(From OE-Core rev: cc9144f99844a8485b2b96182bdf40429286ae66)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Paul Eggleton
7b5b8d1eb0 sat-solver: remove
This was only needed by libzypp, which has itself been removed.

(From OE-Core rev: 905f0d407a259f89e420ccdbee5a471cb0fea8f5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Paul Eggleton
fcdc8d7f6d libzypp: remove
This was only needed by zypper, which has itself been removed.

(From OE-Core rev: 5c8169bd1c114aab76001a38ee4dd68d00d825e0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Paul Eggleton
e90fad58fa zypper: remove
Functionality provided by Zypper is now covered more effectively by
Smart (python-smartpm) which is now being used for package management
on the target when enabled and RPM packaging is selected.

Fixes [YOCTO #3349].

(From OE-Core rev: cc866433341532a0b5cf8cd5f67998960ea96499)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Richard Purdie
1f8f6fe4eb packagedata: Add error message if multiple recipes try to write the same package
If multiple recipes try and write the same package it resulted in a
rather confusing traceback and unintuitive error. This patch
prints a human readable error instead.

[YOCTO #3645]

(From OE-Core rev: 6f817779af77fdb0b861297f0f43c4c6607ce6f0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Richard Purdie
932a4cdf4b sanity.bbclass: Ensure tmpdir exists when running the check
This avoids tracebacks from bitbake if the directory doesn't already
exist.

[YOCTO #3640]

(From OE-Core rev: 1a60e96b21d328fe936e594f3061459e8f2f1b5e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Richard Purdie
f19bdeab37 core-image: Add hwcodecs IMAGE_FEATURE
Currently hardware codecs are being injected in rather ugly ways and end up
either in no or all images. This adds a dedicated IMAGE_FEATURE for them based
on the MACHINE_HWCODECS variable. We may need to refine this in due course
but this patch at least illustrates the concept.

(From OE-Core rev: 1cb370587fd72e3f0f69678748108cc4116767fb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:09:00 +00:00
Richard Purdie
b064818003 packagegroup-core-x11-xserver: Add XSERVERCODECS variable
At present its hard for the system to provide extra x11 hardware codecs.
We could lump them in with the XSERVER variable but this is suboptimal as
in some use cases the user might not want to include them in some images.

With this patch we keep our options open about separating usage of the two
in the future.

(From OE-Core rev: 285c7577813cf75a3b554f8a5d6d7ba002127ef4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:08:59 +00:00
Richard Purdie
4db8a3daaf base: make feature backfilling happen earlier
Backfilling DISTRO_FEATURES and MACHINE_FEATURES with _append statements happens
too late to use those variables with conditional inherits, like this:

inherit ${@base_contains('DISTRO_FEATURES','sysvinit','update-rc.d_real','',d)}

Instead, do the backfilling at ConfigParse time so that it happens earlier in
the parse, which results in that inherit behaving as expected when sysvinit was
backfilled.

(From OE-Core rev: 22429cdf79ed952072707a929643c7386fa7e056)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:08:59 +00:00
Marcin Juszkiewicz
c98363450f bitbake.conf: unbreak all builds with custom DISTRO_FEATURES
Commit 9e7c64ca9afbf27edd0d35a1830ce55ee6d778ab broke all builds where
custom DISTRO_FEATURES were used.

Resulting images ended in non-bootable state due to lack of initscripts
(unless someone had sysvinit or systemd in D_E already).

https://bugs.launchpad.net/linaro-oe/+bug/1102910
https://bugs.launchpad.net/linaro-oe/+bug/1099405/comments/12

(From OE-Core rev: 211e473432230765a48d7af9c66c8737a08cdec7)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:08:59 +00:00
Richard Purdie
4192520bd2 core-image-lsb-sdk/dev: Inherit the base image instead of duplicating
(From OE-Core rev: de2ad361e7dfe553e2c49c73199da58ce44d89e4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24 20:08:59 +00:00
Constantin Musca
8d6e55bf21 prserv: add LOCALCOUNT to AUTOINCs migration feature
- use migrate_localcount.bbclass to generate AUTOINC entries
which are exported to LOCALCOUNT_DUMPFILE
- import the generated AUTOINC entries
- one can migrate LOCALCOUNT to AUTOINC by executing:
    bitbake-prserv-tool migrate_localcount

[YOCTO #3071]

(From OE-Core rev: ffab86f13cafb10d8d6273b6af8cd9a3c84eae20)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 16:01:32 +00:00
Khem Raj
cb902c3503 qemu.inc: Define preferred providers for libgl, libgles1 and libgles2
This is needed to to boot efl images on qemuarm,qemumips and qemuppc
these options were already defined for qemux86 and qemux86-64 and
therefore the images were booting fine for these two machines

(From OE-Core rev: 60e73068cf542c2134106fe6cfc5971874bbc766)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:56:20 +00:00
Khem Raj
b1c7b57a05 systemd: Fix build on uclibc
Systemd has some uclibc specific patches which
needed to be forwarded ported to 196

(From OE-Core rev: e39f01ba4f6d9d9f1d24fd01745530cde9e92131)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:56:20 +00:00
Khem Raj
74ec9ba573 uclibc-git: Upgrades to latest git
Drop upstream accepted patches

(From OE-Core rev: b4ee580d37d15e699dd6efc6551f4c7f8e902e2a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:56:20 +00:00
Chen Qi
bd10a6d257 rootfs_rpm.bbclass: fix the unexpected postinst error
If the /etc/rpm-postinsts/ directory was empty, the following error
would occur at system startup.

      ERROR: postinst /etc/rpm-postinsts/* failed

This patch fixes this issue.

[YOCTO #3767]

(From OE-Core rev: 202263aeca837dc7b6615a3dc34569c199163733)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:54:34 +00:00
Saul Wold
a789dc9175 blktrace: add back do_install method
The recent change to blktrace removed the do_install method,
since this recipe does not use autotools it needs to specifiy
a do_install activity.

(From OE-Core rev: f8832d969746fb879e63d1b28e6beef5ab82a39d)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:52:44 +00:00
Wolfgang Denk
c3256233c6 populate_sdk_base.bbclass: Allow installation of ix86 SDK on x86_64 host
Commit c04f5435 "populate_sdk_base.bbclass: use SDK_ARCH instead
of SDKMACHINE" prevents not only the installation of 64 bit SDK
configurations on 32 bit hosts (which indeed cannot work), but also
the legitimate installation of a 32 bit SDK on a 64 bit host.

Fix this.

While there, also make sure we use the same patterns ("i[3-6]86" resp.
"x86[-_]64" to get unified strings for both INST_ARCH and SDK_ARCH.

(From OE-Core rev: 7ddd97b9b09fe7a327916ea88908a63375556ae6)

Signed-off-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:44:12 +00:00
Richard Purdie
cd9ff3c676 bitbake: crumbs: Add file lost from previous commit
(Bitbake rev: 90aabeb87d6c1f00d6333cc9930626d36b6d9709)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:38:09 +00:00
Kang Kai
0a0e03992c createrepo-native: update dependency
"RDEPENDS_${PN}_class-native" doesn't work for native recipe because no
-native package will be created. Then the dependencies listed here are
not built when bitbake createrepo-native.
Update and use DEPENDS_class-native instead.

(From OE-Core rev: 0b8dc781e4df0edffa10ac989f8745ac3f684de0)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:38:08 +00:00
wenzong.fan@windriver.com
ad1af9dc8b bind: disable nslookup man page
The nslookup is not shipped for now, we should disable its man page if
the binary tool is not installed.

[YOCTO#3754]

(From OE-Core rev: 1a31918733a7f8479220c01fc99dd9099fdcaf9b)

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:38:08 +00:00
Cristiana Voicu
685cde5065 bitbake: hob: combo box updated correctly
The 'select a base image' option is no longer displayed once
an image is selected

[YOCTO #3671]
(Bitbake rev: 27f2247b4c227c3b5adb1ca33d0cd7f7b492e170)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:35:06 +00:00
Constantin Musca
5fc3fc343e bitbake: persist_data: add get_by_pattern method to API
- one can use get_by_pattern to get a list of values associated
with keys that match the specified pattern

(Bitbake rev: 6ee1f58698e2d782c54ce5aec271bcec26107eac)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:35:06 +00:00
Constantin Musca
1e50274f55 bitbake: parse_py: add ~ to config_regexp
- enable the '~' character in bitbake variables

(Bitbake rev: 7c15ff1d50d7b601414f1d55c90e3c59981a0876)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22 15:35:06 +00:00
Cristiana Voicu
37e025f6f9 bitbake: hob: Hob should display warnings generated during parsing
-now Hob catches the warnings generated during parsing, and after the parsing
is completed, if there are any warnings, it shows a bar that contains a message
with how many warnings has encountered, and a button "View warnings"
-when "View warnings" button is clicked, Hob shows a dialog with the warnings;
if there more than 1 warning, you can use "Previous" and "Next" button to see them

[YOCTO #3215]
(Bitbake rev: d7b5311d35b3974398fecabfb5ecf1effa85c27e)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:05:31 +00:00
Cristiana Voicu
4c1ebc7ca7 bitbake: hob: progress bar changed to busy cursor when you open log file
-the first implementation for this bug used a progress bar, that is shown
during open file process; it revelead that the progress bar stops earlier
-now I have implemented using gtk.show_uri() method, that shows itself a
busy cursor when it opens a file;
-deleted the code for the first implementation

[YOCTO #2997]
(Bitbake rev: 09d1c4c2db124104b9da460547b20a2c2ff07bb3)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:05:31 +00:00
Ross Burton
eb9d31db70 distro-tracking: remove e-d-s and libical
(From meta-yocto rev: 16d4a6c44fdda6a230a26848347bbaa057a966af)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
7f9bbccecc systemd: remove unused SERIAL_CONSOLE variable
(From OE-Core rev: 751c11e998431613389f094264f096fac5a1c1ae)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
cd9483c9bf systemd-serialgetty: skip package when not using systemd
As this package RDEPENDS on systemd it wants to build systemd, but if systemd
isn't a DISTRO_FEATURE then that package is skipped so world builds fail.  Solve
this by skipping this package too.

(From OE-Core rev: 192efd033c38205e114f62e9f62696a9a49b0970)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
1377a2dbb2 systemd-serialgetty: remove redundant statements
(From OE-Core rev: e5820f56becb3bcee44a461f7fc5640159679a15)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Richard Purdie
f2f0a1aa48 perl: Fix errors if configure is reattempted
If configure of perl is reattempted it currently fails as it tries to edit
files outside ${S}. Chaging from ${WORKDIR} to ${S} avoids this issue
and allows rebuilds to work.

(From OE-Core rev: 1b66c30eb6085aedce118ce086efbd2e562d0d6c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
d1e680916e systemd: update uclibc patch headers
Discussion has revealed that upstream has formally rejected patches to support
uclibc, so mark this in the headers.

(From OE-Core rev: caf6aa1c996a949ca85f4beaf40d2a19433d18c8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
087e5e30a7 packagegroup-sdk-gmae: remove GUPnP stack as it's no longer in oe-core
GUPnP is now in meta-multimedia, so remove it from this SDK packagegroup.

(From OE-Core rev: 356a5ee5a74f9cee112eac2c595c13ef707eca82)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
dcf494fd4c gupnp: remove, migrated to meta-multimedia
The GUPnP stack was stagnating in oe-core and untested.  It's now moved to
meta-multimedia where it's also been upgraded.

(From OE-Core rev: 51e548a4e61709d9d87a424586529638873835b3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:34 +00:00
Ross Burton
d3b84e77d7 site: add x86-32/64 alignment values for at-spi2-core
This package isn't yet in oe-core, but GTK+ 3.6 depends on it so will be here at
some point.

(From OE-Core rev: 8c46ec2edc0197b32d32e0f27d5b60271338b600)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 19:04:33 +00:00
Ross Burton
6b5e11d8d6 systemd: add missing patch headers
The reverts were by Koen and are literal revert commits, the uclibc patches were
mostly introduced by Khem.

(From OE-Core rev: 8925501890cbe630258d9c6fe348f1e3c821fc71)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:54 +00:00
Ross Burton
064d30803b systemd: use new GTKDOC_DOCDIR and clean up
Now that gtk-doc.bbclass supports overriding the documentation directory,
systemd can just inherit gtk-doc and all of the manual operations can be
removed.

(From OE-Core rev: 8b7816804dcfdc380fbebe6dc8c81f431a7fc450)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:54 +00:00
Ross Burton
779d915c7d gtk-doc: parameterise the documentation directory
Not every package puts the gtk-doc infrastructure into ${S}, so allow this to be
overridden.

(From OE-Core rev: 40353c9ef83f986a0d49cc6eb654b3ace6ef4dc4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:54 +00:00
Ross Burton
600ea90263 systemd: fix typo in FILES
Accidently managed to corrupt FILES_udev.

(From OE-Core rev: b1d8187f66d9646a53928fe288085f4605bc43ef)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:54 +00:00
Ross Burton
e07e0f80d6 udev: skip in systemd distros, to fix world builds
(From OE-Core rev: 1179e43d67c96367480e563a36684d550d83fcbe)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:53 +00:00
Ross Burton
148bcc1124 systemd: skip in non-systemd distros to fix world builds
(From OE-Core rev: a2553b5f8b80ca0cd578afa2d2857ebb2b70ee3c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 12:44:53 +00:00
Richard Purdie
a5358511b1 bitbake: BBHandler/ConfHandler: Merge fix for multiline comments
This was meant to be squashed into the previous commit for multiline comment
handling. It fixes the case the commented multiline is followed by an empty
line which was resulting in a traceback instead of a sane error message.

(Bitbake rev: 7e7d692e244fe8dca533f842ca143b9c821e317c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 11:01:53 +00:00
Richard Purdie
73dc22b728 bitbake: bitbake: BBHandler/ConfHandler: Improve multiline comment handling
Faced with an expression like:

 # Some comment \
 FOO = "bar"

what should bitbake do? Technically, the \ character means its multiline and
currently the code treats this as a continuation of the comment. This can
surprise some people and is not intuitive.

This patch makes bitbake simply error and asks the user to be clearer
about what they mean.

(Bitbake rev: 589d31ce41e019ee6a7cb6527d67bc76c0b6382a)

(Bitbake rev: 79c00fabe08b4c210a3bd81cfaffbc47ffdc2e2b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:55:45 +00:00
Cristian Iorga
bac53df5e5 dbus: upgrade to 1.6.8
dbus, dbus-ptest upgraded to v1.6.8

(From OE-Core rev: 272661a7fca7e0ee8f6b0d7a4ba97f09a82a540e)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:09 +00:00
Khem Raj
21d04932de boost: Upgrade 1.51 -> 1.52
Drop hash_enums.patch which is already applied upstream

(From OE-Core rev: c4d3f5596662d6aced46f270f566b510a36e4952)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:09 +00:00
Ross Burton
3d3555839d gtk+3: refresh cross.patch
cross.patch was accepted upstream, so update this patch with the commit that was
merged.

(From OE-Core rev: 8e5ffa370c4259f925a0454fe7fd81c80ef2174b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:09 +00:00
Darren Hart
4287f70341 bb-matrix: Fix min and max calculations
The BB and PM ranges were originally intended to use leading 0s to
ensure all the values were the same string length, making for nice log
filenames and columnar dat files. However, not everyone will do this -
especially if it isn't documented.

Document the intent. Make the generation and parsing of dat files robust
to either method.

(From OE-Core rev: 90dc44c8246f2a580fe4a41ce28c201e52307500)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:08 +00:00
Matthew McClintock
4de6f9b17c oprofile: backport patches to fix ppc build issues
Fixes:

| operf_utils.cpp: In function 'bool _op_get_event_codes(std::vector*)':
| operf_utils.cpp:151:21: error: 'pfm_initialize' was not declared in this scope
| operf_utils.cpp:151:26: error: 'PFM_SUCCESS' was not declared in this scope
| operf_utils.cpp:166:45: error: 'PFM_PLM3' was not declared in this scope
| operf_utils.cpp:166:55: error: 'PFM_OS_NONE' was not declared in this scope
| operf_utils.cpp:166:72: error: 'pfm_get_os_event_encoding' was not declared in this scope
| operf_utils.cpp:167:14: error: 'PFM_SUCCESS' was not declared in this scope

[YOCTO #3717]

(From OE-Core rev: 121cb96964fe2f374d814bf39036119bd63b9589)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:08 +00:00
Christopher Larson
f63f387b83 package.bbclass: drop unnecessary and broken packages.remove()
(From OE-Core rev: 5480371d0473482437ce4350e6593f006101ef40)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21 10:22:08 +00:00
Bogdan Marinescu
be2a1508b1 oprofile: set correct kernel path
oprofile's "configure" was always looking at the configuration of the host
kernel, not the target kernel. This patch instructs oprofile to use the
target kernel to configure itself.

(From OE-Core rev: 5892db9a34c188b8a9bdaa86e19ba62a7f4793b5)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:14:08 +00:00
Saul Wold
e9b73c0b01 rpm2cpio: Update to match rpm4 specs for decompression
[YOCTO #3753]

(From OE-Core rev: 1377278187d20853304fe2689105f2848d796d86)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:06:43 +00:00
Mark Hatle
59e15f6712 update-alternatives: Add a build-time dependency
We need to add a build time dependency on virtual/update-alternatives,
however we can't just do DEPENDS +=, or we end up with various problems.  To
work around this, in the anonymous python space we ensure we only do the
addition when the package does not provide virtual/update-alternatives and
it is a target package.

Also the system wide PREFERRED_PROVIDER was incorrect.  It references a
runtime package, and not the recipe it should have.  This has been corrected.

[YOCTO #3691]

(From OE-Core rev: 56a59ef12936dcc6464cf1d43dda6957a5aa8c65)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Tested-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:06:43 +00:00
Mark Hatle
3df0d2390d populate_sdk_rpm: Re-add a few system provides to the SDK
When building the target SDK portion, we can safely ignore various
package rdepends.  These dependencies are not required on a build
only environment like an SDK.

[YOCTO #3691]

(From OE-Core rev: 1edd44bed9e9829f7c2466928bc3f45be102b84b)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Tested-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:06:43 +00:00
Tom Zanussi
37d295c816 scripts/lib/bsp/engine.py: add handling for JSON strings
Normally pre-canned properties are supplied as JSON from a file, which
the user can specify using e.g. the -i option.

We can reuse that basic functionality for dedicated command-line
parameters by sythesizing a JSON string containing those param values
on the fly and passing that in instead.

This adds the ability for the common creation code to accept JSON
strings as well as JSON files.

(From meta-yocto rev: 5a2e840b24822e018de94ec4f554363b59c4e8bd)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
1ca4b36445 yocto-layer: add optional layer priority param
If the user specifies a layer priority following the layer name, layer
creation will proceed without further queries using the specified
layer priority and the remaining values defaulted.

(From meta-yocto rev: 84a0bd8940f82fb938972d7b026367d40c9472e7)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
7b0026ea12 scripts/lib/bsp/engine.py: refactor bsp-creation code
This does a bit of refactoring of the bsp-generation code to make it
generically reusable for generating non-bsp layers.

The first user remains the existing yocto-bsp tool; these changes
allow a second user, the new yocto-layer tool, to use the same code.

(From meta-yocto rev: 1527a0ee7bce08a527c9d80516531b17816dff17)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
93d37a261b yocto-layer: add 'layer' template data
Add a 'layer' target containing all the data that will be used to
generate a generic yocto layer.

(From meta-yocto rev: 198a85f61ebd6435830285b2a9b1b925aea6779e)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
bd1cb7b36d yocto-layer: add help/usage
This is essentially 'the documentation' for the yocto-layer tool.

(From meta-yocto rev: 34229b931bad8fc0e4d4431bb5cb46fccbea03bf)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
be425050b1 yocto-layer: new script
Implementation of the 'yocto-layer' command-line tool, for creating
generic layers and listing their input properties.

(From meta-yocto rev: 8170bea55379d1a25acc0fea108675526eeab6f6)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:39 +00:00
Tom Zanussi
792b1bf014 scripts/lib/bsp/engine.py: add yocto_layer_create()
Add a new yocto_layer_create() function that will be used to generate
a generic yocto layer (for the new 'yocto-layer' command).

(From meta-yocto rev: 44acd01bf47c2e0a777e686c9339a6ff951fc972)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:38 +00:00
Riku Voipio
3b75d85ac2 attr: convert to generic syscall numbers
xattr system calls are old enough that we can switch
to just pulling the system call numbers from kernel
headers.

Upstream-Status: Submitted acl-devel@nongnu.org

(From OE-Core rev: 4dab91a4109a452f43483ef11ea9037ca8df1b33)

Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:38 +00:00
Riku Voipio
c14d9d6e1a nspr: add aarch64 support
Add needed defines for Aarch64 support.

Upstream-Status: Submitted https://bugzilla.mozilla.org/show_bug.cgi?id=827271

(From OE-Core rev: 53b4f10bf7e8e83275a64da6700a52c5a4ba533d)

Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:05:38 +00:00
Richard Purdie
6404dd1c5d poky-bleeding: Ensure poky overrides are applied
(From meta-yocto rev: 79d8d084f1053041540355c0712643be91c21905)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:01:47 +00:00
Cristiana Voicu
4d37fd3a72 Added DISTRO var to poky-bleeding conf file
-noticed in Hob that when DISTRO was set to poky-bleeding, it was
not saved; it was overriten by "poky"

[YOCTO #3670]
(From meta-yocto rev: 9295b3f89b81a52b2693ae97edb1a4467c630e5f)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:01:47 +00:00
Constantin Musca
be319aad4b gtk-directfb: rename to directfb
- core-image-gtk-directfb has been renamed to core-image-directfb
- packagegroup-core-gtk-directfb has been renamed to
packagegroup-core-directfb
- DirectFB is not supported by gtk versions >= 2.18

(From meta-yocto rev: 545b3fdebc0d4d5e5bf2e56eab2288a5c4282e9e)

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>
2013-01-20 13:01:46 +00:00
Emilia Ciobanu
0dedf2d68a Modified meta-yocto/conf/distro/include/package_regex.inc
Removed all *alpha*, *beta*, *rc* from regexes.

(From meta-yocto rev: 49ec9a8abfff5a29296681b81c1ca8d35039bc3b)

Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:01:46 +00:00
Tom Zanussi
b353c3fb7d lttng: update references to legacy lttng recipes
'legacy' lttng was removed, so we need to remove the references to the
legacy lttng recipes, namely lttng-control and lttng-viewer.  Also
update recipe_color to add entries for the new lttng-2.0 recipes
lttng-modules, lttng-tools, and babeltrace, to maintain consistency.

(From meta-yocto rev: ce68fe95471200261e1ac968f63ae82020ac8871)

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>
2013-01-20 13:01:46 +00:00
Bogdan Marinescu
208a641416 maintainers.inc: updated package owners
The linux-libc-headers and linux-libc-headers-yocto packages are currently
maintained by Bruce Ashfield. The maintainers.inc file was updated with
this information.

(From meta-yocto rev: 37e2db30e957fa2b0e515813e678b557fafadc8c)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 13:01:46 +00:00
Bruce Ashfield
651b16872c linux-yocto/meta-yocto: update hardware reference BSPs to 3.4.26 and LTSI
Bumping the yocto reference BSPs to pickup the latest oe-core 3.4.26, -rt
and LTSI updates.

(From meta-yocto rev: fa7adfafb521e7de81beebd4525a5d2ce1763dc3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:59 +00:00
Richard Purdie
8bb0353e08 cpan_build: Fix bashism
Fix a build failure caused by a bashism and improve quoting whilst in
the area.

(From OE-Core rev: 9eb78340c61acddb0c2012e25c76c18735febb4d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:59 +00:00
Richard Purdie
545b00ae18 libtool-cross: Add missing libltdl components to install
Without this some software fails to build complaining it can't find these
utilities.

(From OE-Core rev: db84eaf851b22b262d9dc48eb55bd5224a00fdd2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:59 +00:00
Richard Purdie
4d8abe2bd7 liburi-perl: Add BBCLASSEXTEND for native version
(From OE-Core rev: cac29d930910c257293ed2165faa5397f0a5d07c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:58 +00:00
Richard Purdie
eabd8606f9 package.bbclass: Fix shlibs cross package-arch contamination
I found that if I had two packages architectures built (say core2 and i586),
that the shlibs data from i586 was being used in the core2 build. This
lead to odd dependency issues if the i586 build was out of date and core2
was being targetted.

When loading shlibs files, the last loaded wins so we need to iterate the
lists from least to strongest weighting, not the other way around. With this
patch applied, the contamination issue is resolved.

(From OE-Core rev: acd7b1c2ee9f3ff84c45a723dba5e0bc5f6a100c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:58 +00:00
Holger Hans Peter Freyther
4a61ee99fc dropbear: Deal with truncated host keys by removing them
Dropbear does not start when the host key is empty and it is possible
that a device is switched off before the host key is generated. This
is possible because the dropbearkey code doesn't create a temporary
file first. Detect truncated keys and then remove them which will lead
to the re-generation. This way the dropbear process will always start.

(From OE-Core rev: 16b57e352f5844f301cc6c7ea4f87bf750c11d67)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:58 +00:00
Jason Wessel
63ccf62420 populate_sdk_base.bbclass: Work around bugs with gnu tar < 1.24
The gnu tar versions less than 1.24 pose a problem with the SDK
extraction.  A typical SDK will have hard links.  The SDK is created
with a newer version of tar but extracted with the host version of tar
which may be much older.  The specific defect is that older version of
gnu tar do not properly handle the "--strip-components=" argument when
processing hard links and the paths do not get properly truncated and
hooked up with the corresponding real file payloads.  This leads to
errors like the following during the SDK install:

tar: sysroots/qemux86-yocto-linux/usr/bin/getconf: Cannot hard link to `./opt/yocto/SDK-qemux86/sysroots/qemux86-yocto-linux/usr/bin/POSIX_V6_ILP32_OFFBIG': No such file or directory

The simple way to work around the problem is to just not save the path
information that is going to get chopped off anyway.  This has the
added benefit that it saves a small amount of space in the tar archive
as well.

(From OE-Core rev: 0f4112016bac07f0294f2a4d0fde4659c0fed2d2)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:58 +00:00
Enrico Scholz
116fb4a72f package.bbclass: replace AUTOINC directly in PKGV
b27b438221e16ac3df6ac66d761b77e3bd43db67 introduced a regression when
PKGV is modified by the recipe.  E.g. when having something like

| PV = "1.7.33+gitr${SRCPV}"
| PKGV = "1.7.33+gitr${GITPKGV}"
| RDEPENDS_${PN}-subpkg += "${PN} (= ${EXTENDPKGV})"
| inherit gitpkgv

The resulting core package has

| Version: 1.7.33+git234+cd01e8c-r11

and because the subpackage has

| Depends: vdr (= 1.7.33+git0+cd01e8c18d494150730214f033f84e5282ce7639-r11)

image build fails with

|  * satisfy_dependencies_for: Cannot satisfy the following dependencies ...
|  *    vdr (= 1.7.33+git0+cd01e8c18d494150730214f033f84e5282ce7639-r11)

Patch avoids the 'PKGV = "cleanup(${PV})"' operation and replaces
AUTOINC directly within PKGV.  This might introduce a regression too
when 'AUTOINC' is added to PKGV intentionally but impact is small and
can be fixed trivially by using another string.

(From OE-Core rev: 6e46664085fa49bc204fc944ca23ed6383e2ec51)

Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Cc: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:57 +00:00
Bruce Ashfield
b5659b7acd linux-yocto/3.4: update intel graphics features/configs
Updating the meta branch to import the following commits that cleanup and
reorganize the features that make up the graphics features of the Intel
BSPs

  c0b3904 meta: add config fragment for gma600 graphics driver
  f41638f meta: add config fragment for gma500 graphics driver
  ff8ad3e meta: sys940x: drop vesa fragment from bsp config
  fcb82ac meta: sys940x: remove emgd config from bsp config
  c1677bb meta: fri2: drop vesa fragment from bsp config
  7324440 meta: fri2: remove emgd config from bsp config
  dd435c6 meta: emenlow: drop vesa fragment from bsp config
  243b515 meta: emenlow: remove emgd config from bsp config
  3e1be82 meta: crownbay: drop vesa fragment from bsp config
  fc5ed4e meta: crownbay: remove emgd config from bsp config
  d46236b meta: drm-emgd.cfg: add configs for dependent routines
  db4bc5e meta: relocate git-merge of emgd branch

(From OE-Core rev: 8d0074ef2b61bf022ed1bb3b5f1afe526d8c921b)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:57 +00:00
Bruce Ashfield
0fdb0aed3b linux-yocto/3.4: update to 3.4.26 and 3.4.25-rt37
Updating the yocto 3.4 kernel tree to the 3.4.25 and 3.4.26 -stable updates
as well as refreshing the preempt-rt branches to 3.4.25-rt37.

(From OE-Core rev: da536703bdcf31c8c2ef17f5a49d06280fe77600)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:57 +00:00
Khem Raj
e4410b5658 consolekit_0.4.5.bb: Package unpackaged systemd files
(From OE-Core rev: 8ac35f3bba5d00549f5255acf17a8be914402d50)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:57 +00:00
Khem Raj
a3ca06c3b4 kernel.bbclass, module-base.bbclass: Use CC to form KERNEL_CC
kernel compiler is not special and we currently have it so
we want to pass -march and -mtune options as CFLAGS to kernel
build so that compiler picks the right subarch flags when
compiling assembly files in particular. Otherwise defaults
are chosen which may not be right in many case e.g. when
compiling kernel for collie machine we should use arch=armv4
but it uses toolchain/as defaults which is armv5te

in some case e.g. thumb1 we know that kernel can not be compiled
in thumb1 mode so we can provide that information e.g. -marm
option through KERNEL_HOST_CC_ARCH variable as we do now

(From OE-Core rev: c49f967384ccbfe131bbb33ee518014f3fc4b38f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:56 +00:00
Koen Kooi
e344f3e7d5 libpam: register PAM session with logind
This make screen/tmux/etc work as intended.

(From OE-Core rev: 58731bbdbd4ab4cfd560f14758a65efdfad2e28f)

Signed-off-by: Martin Donnelly <martin.donnelly@ge.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:56 +00:00
Ross Burton
c55926c1ea packagegroup-core-boot: only install initscripts if we're using sysvinit
(From OE-Core rev: 9e7c64ca9afbf27edd0d35a1830ce55ee6d778ab)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:56 +00:00
Martin Donnelly
20dc0a5b9b base-files: add fstab for systemd based systems
The default fstab has entries which are not necessary
in systemd based systems so add a simpler default in
this case.

(From OE-Core rev: 77bbb839ba25b974a538b90d346b454ccd5deefd)

Signed-off-by: Martin Donnelly <martin.donnelly@ge.com>
Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:56 +00:00
Radu Moisan
b94227f729 update-rc.d: disable update-rc.d.bbclass when systemd enabled
update-rc.d is not necessary when systemd is enabled,
systemctl is the replacement

(From OE-Core rev: eaa82c842d3197e0251a887ba16028c22f9d8d94)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:55 +00:00
Ross Burton
5b2e201736 packagegroup-core-boot: install systemd-compat-units on systemd images
systemd-compat-units is needed to run postinsts for example.

(From OE-Core rev: cf783377767c70db544da57593616cfc952dbfb9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:55 +00:00
Radu Moisan
b1add7cd1e default-providers: Add systemd option to PREFERRED_PROVIDER_udev
(From OE-Core rev: fb8e5285bbc6d5aac5d4103c0a983b7b6c54d73d)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:55 +00:00
Radu Moisan
b8744d5376 systemd: add systemd recipes
Add systemd recipes and associated support recipes.

Mostly based on meta-oe/meta-systemd, so almost all credit should go to:

Andreas Müller <schnitzeltony@googlemail.com>
Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Holger Hans Peter Freyther <holger@moiji-mobile.com>
Khem Raj <raj.khem@gmail.com>
Koen Kooi <koen@dominion.thruhere.net>
Martin Jansa <Martin.Jansa@gmail.com>

(From OE-Core rev: 6a8a48b4d0d0b9b8d8af46cae11245bcb870bbc3)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:55 +00:00
Ross Burton
b18886d9b7 dbus: respect systemd distro feature
Only configure for systemd if we are using systemd, and remove the dbus-systemd
package by putting the service files into PN itself.

(From OE-Core rev: 06e262c9b4c406b886db6ca8eee55ab441599151)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:54 +00:00
Radu Moisan
4c8b2ddbec default-providers: Automatically set PREFERRED_PROVIDER_udev
This is a more generic way to set preferred provider for udev.
We expect to have multiple choices once we integrate other init
managers, and this way we can automatically set it considering
distro settings.

(From OE-Core rev: da13562af73d144b5782ee8d755e2249cd9d2d8c)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:54 +00:00
Radu Moisan
f8fb9675cf default-distrovars: Add DISTRO_FEATURES_INITMAN to DISTRO_FEATURES
This is a more generic way to set the init manager since we
plan to support other init managers as well.
I will use this variable as a switch to turn on/off any
init scheme that we might support in the future.
By default we use sysvinit.

(From OE-Core rev: 87f06346728bda000c0c0f95312b6a0a1b149ab4)

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:44:26 +00:00
Bruce Ashfield
349e5bea53 guilt: add git 1.8.x support
Updating guilt to allow git 1.8.x as a supported version. This version has
no impact on other functionality within the scripts, so no other adjustments
are necessary.

[YOCTO #3275]

(From OE-Core rev: 18bc7b44ef58cbcbe32d45504d71eed54ef695a4)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:10 +00:00
Bruce Ashfield
09d0bc521a linux-yocto/3.4: integrate LTSI-3.4
Updating the linux-yocto-3.4 SRCREVS to activate the merge of the 3.4.25-ltsi
tree:

   http://git.linuxfoundation.org/?p=ltsi-kernel.git;a=tag;h=refs/tags/v3.4.25-ltsi

The pristine patch queue can be seen on the "ltsi" branch in the repository.
This branch has been merged into the standard/base branch of linux-yocto-3.4
and to all BSP branches in the tree.

LTSI based BSPs or features are not activated as part of this commit, they
are controlled by the meta branch of the kernel repository and are activated
in separate patches.

[YOCTO #2396]

(From OE-Core rev: 8f03ebe9b164e0c0493c56d9eb2e7d0b039832f1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:10 +00:00
Bruce Ashfield
97fdac7cfc linux-yocto/routerstationpro: enable GPIO_SYSFS
We had a request to enable GPIO_SYSFS to allow easy use of the available
GPIOs in the board out of the box. This is a simple / contained config item
to enable, so there's no reason not to.

[YOCTO #3519]

(From OE-Core rev: 9a5948ff07b62f54d6215d37e9028384d3b430da)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:10 +00:00
Bruce Ashfield
d6e2fffc5c linux-yocto/meta: update include statements to explicit .scc format
The kernel tooling can support a "shorthand" method of including other features
that doesn't require the full filename ending in .scc. This format is confusing
when compared to the source tree, and is inconsitently use. This commit updates
all shorthand includes to a full "include <foo>.scc" format.

[YOCTO #3418]

(From OE-Core rev: acf015f079907da8a4f1b80e44bb64bc7696a6ad)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:09 +00:00
Bruce Ashfield
486e19d180 kernel-yocto: add KBUILD_OUTPUT to OE_TERMINAL_EXPORTS
Since linux-yocto based recipes have a split build and source directory,
we should export KBUILD=${B} to the devshell. This allows the kernel to
be incrementally build within the shell and not dirty the source
directory (which breaks subsequent full builds).

(From OE-Core rev: 88f88a22dfa730161168b0f228e3954178b74c6a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:09 +00:00
Bruce Ashfield
28fb81ab56 linux-yocto: normalize repository naming and SRC_URI options
linux-yocto-tiny and linux-yocto had minor differences from the rest
of the linux-yocto recipes. After this commit, all the recipes are
using bareclone=1 and repository names that end with .git.

(From OE-Core rev: 1acf3ad17bbc1cdcad31c243b7b50daaea99ee7a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:09 +00:00
Bruce Ashfield
11bafdee06 kernel-yocto: remove unnecessary non-bare warning
In the past working from a non-bare clone would cause problems,
due to branches not existing in the WORKDIR clone. This hasn't
been true for some time, since the routines which convert remotes
into local branches have been functioning without problems.

So we no longer need the warning and it can be removed.

(From OE-Core rev: 42d42c24a37af0ea8896087c7cc8215eb19f633d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:09 +00:00
Hongxu Jia
363cb2bfee libnss-mdns:fix support prerm at image creation time
The pkg_prerm_${PN} failed at image creation time because $D is not assigned
as the prefix of "/etc/nsswitch.conf"

[YOCTO #3633]

(From OE-Core rev: c09767086307d552a18f11250ae42ec34be220fb)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:08 +00:00
Hongxu Jia
ee5333b0bd update-rc.d:fix support postrm at image creation time
updatercd_postrm failed at image creation time because "-f -r ${D}" is not
used as update-rc.d's option.

[YOCTO #3633]

(From OE-Core rev: deb8ac868a989f41c0664312a5fb855358be2296)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:08 +00:00
Laurentiu Palcu
fbfaefb7e9 bitbake.conf: remove update-modules from DISTRO_FEATURES
Since update-modules is obsolete, remove it from DISTRO_FEATURES.

[YOCTO #3598]

(From OE-Core rev: 5a404ba472c51cec8e13d79e073a1d104a747c44)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:08 +00:00
Laurentiu Palcu
71537bb721 kernel.bbclass: remove references to update-modules
Since update-modules is now obsolete, remove it from the bbclass.

[YOCTO #3598]

(From OE-Core rev: 323146c7fdf1c47241f3fd5adab2cb3c6d24b56c)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:08 +00:00
Laurentiu Palcu
173a618263 module.bbclass: do not use update-modules anymore
update-modules is obsolete. The bbclass was updated not to use it
anymore.

[YOCTO #3598]

(From OE-Core rev: 6fafbf71adb8b34211c2bc24226f0b1eb206a7d3)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:07 +00:00
Laurentiu Palcu
fb7ea95fc3 hostap-conf: remove dependencies of update-modules
Also:
 * install the alias file in the correct /etc/modprobe.d directory since
   this is the directory used by modprobe now;
 * rewrite the alias file to be up-to-date with modprobe's syntax;
 * remove the postinst/postrm scriptlets because this is just an alias
   file;

[YOCTO #3598]

(From OE-Core rev: 427010fd289534d4b4af0bfd74419a4ad0eb5a39)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:07 +00:00
Laurentiu Palcu
950704e392 orinoco-conf: remove dependencies of update-modules
Since update-modules became obsolete, no need for these dependencies.
Also:
 * install the conf files in the modprobe.d directory. /etc/modutils is
   also obsolete;
 * remove postinst/postrm scriptlets since they ran update-modules and
   this is just an alias file;

[YOCTO #3598]

(From OE-Core rev: ab262d33993c223ec193786951d43d13ca6691e0)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:07 +00:00
Laurentiu Palcu
36a6430727 modutils-initscripts: improve modutils.sh
modutils.sh reads /etc/modules to load the listed modules at boot time.
/etc/modules is generated by update-modules which scans
/etc/modules-load.d directory. However, update-modules became obsolete
because the files it generates are not used by modprobe anymore.

Hence, change modutils.sh to scan also /etc/modules-load.d/*.conf and
load the modules listed there.

Basically, the behavior is this:
 * if /etc/modules exists, load those modules;
 * if the directory /etc/modules-load.d exists, load the modules listed
   in the .conf files but ignore those already loaded (from
   /etc/modules);

[YOCTO #3598]

(From OE-Core rev: f2d6e84cb1694e2365beca331439bb2d23843a5b)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:07 +00:00
Ross Burton
e7ebff0a98 initramfs-live-boot: handle multiple udev locations
udevd isn't on $PATH and is in different places depending on what version of
udev is being used.  Copy the code from initramfs-framework to search for the
right udevd at boot time instead of hard-coding a location.

(From OE-Core rev: a5de76317112fc065a78a745c2f23775dca15d75)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:06 +00:00
Constantin Musca
26bddbd41b pango: use qemu_run_binary instead of pango-native
- use qemu_run_binary from qemu.bbclass to run pango-querymodules
- remove pango-native from DEPENDS in order to do not create
unbuildable dependency chains (e.g. ['gtk+', 'pango', 'pango-native',
'cairo-native', 'directfb-native'])

[YOCTO #3642]

(From OE-Core rev: c34bb3554112cbaeb4e125ff5ed190c0d3bbcf36)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:06 +00:00
Christopher Larson
aac03657ee base.bbclass: improve the incompatible license logic a bit
Handle the potential case where the recipe level LICENSE contains an
incompatible license, but all of its emitted packages are in fact compatible.
Without this adjustment, it would skip such a recipe.

(From OE-Core rev: 9256361cf2e929004dcc5615b21fe3c46d9f7740)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:06 +00:00
Christopher Larson
d597053ce2 base.bbclass: use debug messages for INCOMPATIBLE_LICENSE
Spamming potentially over a screenful of messages due to their
INCOMPATIBLE_LICENSE selection seems a bit unnecessary. If the distro was
configured that way, the user likely won't care, and if the user set it, they
likely know the implications, so make the messages debug instead.

(From OE-Core rev: 72f47df32dce91e3364e3837e2c47bdd2d632571)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:06 +00:00
Christopher Larson
197a4d56a9 linux-firmware: use LICENSEs which can actually be parsed
: is an invalid character for our license format.

(From OE-Core rev: adb06f5907e8c28c7ee08aeb7c9ca40a1a98cf5f)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:06 +00:00
Christopher Larson
cea9f48ea8 license.bbclass: cleanly handle invalid licenses in incompatible_license
This gives us an error message (bb.fatal) rather than a traceback due to the
uncaught LicenseError.

(From OE-Core rev: 7fab4cd27a2ad896218123ca82252e2b59526726)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Christopher Larson
8491c2a522 license: correct re.search/fnmatch indentation
This was causing it to only obey the last of the elements in
INCOMPATIBLE_LICENSE.

(From OE-Core rev: df4a4b9792e3bd13b396b94e232c69054fdf19b5)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Christopher Larson
feca9f7849 license.bbclass: check LICENSE_pkg, not LICENSE_pn-pkg
Recipes define the latter, as that's what goes into the binary packages, not
the former.

(From OE-Core rev: 6a59b294b99b05e8973b5f2d60678988e90e2de3)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Paul Eggleton
411413aa28 classes/image: improve debug-tweaks ssh server configuration
Create a single postprocessing function that enables no-password logins
for both openssh and dropbear when debug-tweaks is in IMAGE_FEATURES,
changing its behaviour slightly:
* Run it regardless of whether ssh-server-* are in IMAGE_FEATURES so
  that it still takes effect if these are installed by adding
  dropbear/openssh to IMAGE_INSTALL.
* Enable it to be run from image.bbclass rather than core-image.bbclass
  so that it works for images that are using the former.

Second half of the fix for [YOCTO #2578].

(From OE-Core rev: 0937054e6e3e02565f57e60a8bdc14b0ad62e249)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Paul Eggleton
955568ddfa dropbear: allow configuring blank password option at runtime
Instead of using IMAGE_FEATURES to control something within a recipe,
allow this to be set at runtime, avoiding the need to rebuild dropbear
when we want to change this option.

First half of the fix for [YOCTO #2578].

(From OE-Core rev: 313039590171456b652fa7a2f5823c9b7060b20f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Paul Eggleton
8ca0d592c5 classes/rootfs_*: error out if postinstalls exist with read-only rootfs
If there are postinstall scripts to be run on first boot and
IMAGE_FEATURES contains "read-only-rootfs", we know this will fail on
the target device so just error out during do_rootfs. This check was
already implemented for ipk, so add it to the deb and rpm backends. Also
make all backends use bberror rather than just echo to display the
error.

Fixes [YOCTO #3407].

(From OE-Core rev: 510e377f252dece8850487c30482f83df4a89c7e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:05 +00:00
Cristian Iorga
5e4671b30d iptables: upgrade to 1.4.17
patch added to fix cross-compilation issues

(From OE-Core rev: f6c7d5e0590e3e70fb435e747ffdb9fe586e7bfc)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 13:28:04 +00:00
Christopher Larson
89031c2651 ptest.bbclass: don't add to PACKAGES if disabled
Without this, we have excessive dependencies leaking into the build. In
particular, glib-2.0 was sucking in python modules even if ptest wasn't in
DISTRO_FEATURES.

(From OE-Core rev: 7bf5ee91aa84a6fa85d6da361b64139889faa172)

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>
2013-01-18 13:28:04 +00:00
Ross Burton
7cdfbc6b2f weston: add reference Wayland compositor
This is the reference Wayland compositor.

If the "wayland" DISTRO_FEATURE is present the KMS and Wayland (nested)
compositors are enabled.

If the "x11" DISTRO_FEATURE is present the X11 compositor is enabled, and a
launcher installed.

This also ships a basic Wayland terminal.

Based on work by Alexandru Damian <alexandru.damian@intel.com>, Daniel Stone
<daniel@fooishbar.org>, and Damien Lespiau <damien.lespiau@intel.com>.

(From OE-Core rev: 94fcb80121b64974ff57b76275addaa684c559cf)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
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>
2013-01-18 13:28:04 +00:00
Alexandru DAMIAN
1e3372bdd1 mesa-dri: enable the wayland-egl platform
If the "wayland" DISTRO_FEATURE is present, enable the Wayland EGL platform.
This is required by the reference Wayland compositor, Weston.

(From OE-Core rev: 0e56ecdd78212e7743e71c5d6a42ceb65c182786)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
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>
2013-01-18 13:28:04 +00:00
Alexandru DAMIAN
cca05e3dca wayland: add Wayland protocol library
Wayland is a protocol for a client application to display user interface windows
through the use of a compositing window manager. This package include the
specific set of server-side and client-side C libraries that implement the
protocol.

(From OE-Core rev: 41538cb52f3a79c52aa37c34d8f275010b93c2c2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
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>
2013-01-18 13:28:03 +00:00
Ross Burton
1e1db8439b x11-common: set XDG_RUNTIME_DIR if it isn't already set
Wayland needs this set for the communication pipes, so set a fallback in case it
hasn't already been set.

(From OE-Core rev: 263508220674321473a746a137bb5d4b21c55119)

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>
2013-01-18 13:28:03 +00:00
Jessica Zhang
2ad1894520 bitbake: hob: Fix GTK+ and PyGtk version check error message to be more clear
Improve the error message the user sees if the versions are incorrect.

[YOCTO #3637]

(Bitbake rev: 7e3a99949358f4362876df5a82f8aeaae72c3c97)

Signed-off-by: Jessica Zhang <jessica.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:53:05 +00:00
Jon Szymaniak
94284f1ce0 bitbake: hg.py: Fixed fetch failure that occurs when SRCREV is a tag.
Removed "-r REV" from hg clone invocation to fetch the entire repo,
rather than just the subset at the specified revision. This will ensure
that the specified tag exists for successive commands (e.g., the update
built on line 149.)

(Bitbake rev: f0a6261d3a8ede9ebdb6383e02cb2c2de1690640)

Signed-off-by: Jon Szymaniak <jon.szymaniak@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:50:13 +00:00
Tyler Hall
0e408df69f bitbake: fetch2: Sort file checksums by value, not path
Changing the path to a file could change the task hash even if the file
still has the same checksum. This occurs when the task depends on
multiple files and the sort order of their paths changes. Usually the
sorting is consistent because layers tend to have the same relative
paths, but this should take care of other configuations.

The problem arose when using a .bbappend to add files to a recipe in
another layer. If the layer is located alongside the other layers and
their parent directory is moved, the hash does not change. However,
moving the .bbappend layer outside of the common directory can change
the path sort order and the task hash.

(Bitbake rev: 22bd19d208f0251f5a1f9b98f3cac66181f3fc07)

Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:50:12 +00:00
Peter Seebach
fe30cbc2cb bitbake: bitbake: data_smart.py and friends: Track variable history
This patch adds tracking of the history of variable assignments.
The changes are predominantly localized to data_smart.py and
parse/ast.py. cooker.py and data.py are altered to display the
recorded data, and turn tracking on for the bitbake -e case.
The data.py update_data() function warns DataSmart.finalize()
to report the caller one further back up the tree.

In general, d.setVar() does what it used to do. Optionally,
arguments describing an operation may be appended; if none
are present, the operation is implicitly ignored. If it's
not ignored, it will attempt to infer missing information
(name of variable, value assigned, file and line) by examining
the traceback. This slightly elaborate process eliminates a
category of problems in which the 'var' member of the keyword
arguments dict is set, and a positional argument corresponding
to 'var' is also set. It also makes calling much simpler for
the common cases.

The resulting output gives you a pretty good picture of what
values got set, and how they got set.

RP Modifications:

a) Split from IncludeHistory to separate VariableHistory
b) Add dedicated copy function instead of deepcopy
c) Use COW for variables dict
d) Remove 'value' loginfo value and just use 'details'
e) Desensitise code for calling order (set 'op' before/after
   infer_caller_details was error prone)
f) Fix bug where ?= "" wasn't shown correctly
g) Log more set operations as some variables mysteriously acquired
   values previously
h) Standardise infer_caller_details to be triggered from .record()
   where at all possible to reduce overhead in non-enabled cases
i) Rename variable parameter names to match inference code
j) Add VariableHistory emit() function to match IncludeHistory
k) Fix handling of appendVar, prependVar and matching flag ops
l) Use ignored=True to stop logging further events where appropriate

(Bitbake rev: f00524a3729000cbcb3317fee933ac448fae5e2d)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:35:19 +00:00
Peter Seebach
4dd6d9139c bitbake: bitbake: data_smart.py and friends: Track file inclusions for bitbake -e
This code adds inclusion history to bitbake -e output, showing
which files were included, in what order. This doesn't completely
resolve timing questions, because it doesn't show you which lines
of a file were processed before or after a given include, but it
does let you figure out what the path was by which a particular
file ended up in your build at all.

How it works: data_smart acquires a .history member, which is an
IncludeHistory; this represents the inclusion of a file and all its
inclusions, recursively. It provides methods for including files,
for finishing inclusion (done as an __exit__), and for
dumping the whole tree.

The parser is modified to run includes inside a with() to push
and pop the include filename.

RP Modifications:

a) Split Include and Variable tracking
b) Replace deepcopy usage with dedicated copy function
c) Simplify some variable and usage

(Bitbake rev: b2dda721262da8abb7dc32d019e18fbc32ed8860)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:35:19 +00:00
Richard Purdie
9753283a3f bitbake: BBHandler/data: Standardise some setVar access formats
(Bitbake rev: e12c1a485f96a4701144ac81179ae1af348e5bf3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18 12:35:18 +00:00
Laurentiu Palcu
3db277b18b update-rc.d: fix failure on target
The problem happened because the variables given to -n were not
surounded by quotes.

(From OE-Core rev: 98f17da7ccc1bf79fc5894f90e52769bdbcf89df)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-17 20:16:46 +00:00
Martin Jansa
200743b89e kernel.bbclass: don't depend on DATETIME
* http://cgit.openembedded.org/openembedded-core/commit/?id=67e77cd948c69798695d5d5f34163ef89339b35a
  moved DATETIME dependency from MODULE_TARBALL_BASE_NAME to MODULE_IMAGE_BASE_NAME
  but without copying that vardepsexclude

(From OE-Core rev: 9a93866067253746a889bfe444b6036cf85944b4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-17 20:16:46 +00:00
Marcin Juszkiewicz
64592f7626 libffi: add AArch64 support
(From OE-Core rev: de7f86532ad284f4a3c3f1486e30a3ac74763f36)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-17 13:42:47 +00:00
Marcin Juszkiewicz
9f263a60e3 oprofile: add AArch64 support
(From OE-Core rev: 169b9afcf2d357fdcf254a380d21d17701685834)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 16:10:39 +00:00
Scott Rifenbark
d701d980bc kernel-dev: Links added for new glossary variable terms.
Added links for the LINUX_VERSION, LINUX_VERSION_EXTENSION,
and SRCPV glossary entry terms.

(From yocto-docs rev: be6c716f436a631e97f8a429aa9b2d2fa75816e5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:22 +00:00
Scott Rifenbark
5087131b2a ref-manual: New glossary entry for SRCPV variable added.
(From yocto-docs rev: 0eba5f7ff3e6801c1f8e41df02276e5524ff03f8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:22 +00:00
Scott Rifenbark
11e92659b4 ref-manual: New LINUX_VERSION_EXTENSION variable glossary entry.
(From yocto-docs rev: 98a1d57e0bcf018509bb2a167381817b0b6b95d8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:22 +00:00
Scott Rifenbark
ba0524ceb4 ref-manual: New LINUX_VERSION glossary entry.
(From yocto-docs rev: daf7bf83049b51ec918af1c49c53502b6488f675)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:21 +00:00
Scott Rifenbark
762e4f08db kernel-dev: Fixed a typo in question 4.6.
(From yocto-docs rev: 92dba7b37d3f8b1204bf08e9bedc3f820502aed3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:21 +00:00
Scott Rifenbark
b43b8efcff kernel-dev: Edits to the SCC reference section.
(From yocto-docs rev: 51872ec247e93f9dd7b7c12ee32191565c30ebfa)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:21 +00:00
Scott Rifenbark
29d5511d02 kernel-dev: Edits to Advanced Metadata chapter
Removed all the orginal text.

(From yocto-docs rev: 8a3b11fb6936574edb4fd0daf60d21ee2c2ccd8f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:21 +00:00
Scott Rifenbark
5487eeb730 kernel-dev: Edits to Introduction chapter.
Removed the block of original text.

(From yocto-docs rev: ff36ef73cbf50b966bf539b013260fb7c668d82e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:20 +00:00
Scott Rifenbark
a0ac336801 kernel-dev: Edits to the "Incorporating Out-of-Tree Modules" section.
Removed the original text.

(From yocto-docs rev: 0f3e89c7e6b8249cd643822f33c8168ca7cd83c9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:20 +00:00
Scott Rifenbark
b34a14014c kernel-dev: Edits to the "Working with your Own Sources" section.
Final tweaks to this list of variables.

(From yocto-docs rev: d494c8b06a623ef4930e206dd8e5689c8a9d4923)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:20 +00:00
Scott Rifenbark
ac5cee5ea1 kernel-dev: transitory edits.
(From yocto-docs rev: 89e6335e0e9d23a6df581ccd5f55c2a7673050cf)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:20 +00:00
Scott Rifenbark
fcfa410e43 kernel-dev: Updates to "Using an Iterative Development Process"
Updated the name of this section to be consistent with "doing"
something as the rest of the chapter is action-based.  Did
some other minor edits.  Also, removed the original Darren text.

(From yocto-docs rev: 3be86ee72766207c3812245917b8b20af86b26f4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:19 +00:00
Scott Rifenbark
095ee0a704 kernel-dev: Edits to "Modifying a Recipe" section.
Edits added a couple cross-refenences back into the YP
dev-manual where detailed examples of patching and configuring
the kernel exist.

(From yocto-docs rev: 1ae2a18f0367841d1ea9bb8d3f3d323a9b573533)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:19 +00:00
Scott Rifenbark
d5e6f2a804 kernel-dev: Removed original text from "Applying Patches" section.
(From yocto-docs rev: 7293f8ead1ac3a8029eb7bb384e4e1b9fb71cfa1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:19 +00:00
Scott Rifenbark
719824f9ce kernel-dev: Created new "Creating the Append File" section.
fixed up the organization of how you modify a recipe.  It can
consist of three things.  I have created a new subsection for the
first item, creating the append file.

(From yocto-docs rev: a8342ccf18c0406669f6983da31d38603d87921e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:19 +00:00
Scott Rifenbark
2512cbf862 kernel-dev: Edits to "Modifying an Existing Recipe"
Second pass through this section.  Also removed the original text.
Switching to numbered list.

(From yocto-docs rev: 7978c5acd4776e6ade7c0ee34c6f7ab58eeb2bb9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:18 +00:00
Scott Rifenbark
e4e2c72a40 kernel-dev: Edits to "Creating and Preparing a Layer"
Changed the name of this section and took out the bit about
the manual being written with the assumption of a custom
layer being created.  The manual does not particularly call
this out with any examples so it is not needed.

I pulled the copy of the original text also.

(From yocto-docs rev: c7623d96ed2d9c5866e52842f8cfea2ebde95d0e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:18 +00:00
Scott Rifenbark
c9f796dbd7 kernel-dev: Re-write of the "Organizing Your Source" section.
A serious pass through this system to reorganize it.

(From yocto-docs rev: f13abc59730d78e5ffa5bce3d38519f8fc4c127f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:18 +00:00
Scott Rifenbark
5b1098dc0b kernel-dev: Intermediary edits to the "branches" section.
(From yocto-docs rev: d12e98f4b80feb1538b51cd9e3a8c204c86f13fc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:18 +00:00
Scott Rifenbark
b663741f7f kernel-dev: Edits in the Branch section.
simple edits.

(From yocto-docs rev: 3f73e53c9bdbe71f04400aedc042f19a48ea62bb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:18 +00:00
Scott Rifenbark
7eccfa6849 kernel-dev: Created super section for Branches.
The sections for "Machine Branches" and "Feature Branches" really
should be encapsulated within a section on branching.  Much of
the text in the "Machine Branches" section presents the rationale
behind both types of branches.  I have created a larger section
to contain these and will edit the text to fit.

(From yocto-docs rev: c7c67f5867f22ebbbd49cab79bb2d4e52422ecac)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:17 +00:00
Scott Rifenbark
f42c87a1ac kernel-dev: Removed recursive include statement from examples.
Three instances of *.scc files were recursively including themselves.
These .scc files needed to have their names changed to a file
that indicated hardware support only.

(From yocto-docs rev: f1c347f8f63141807084ac0a2bd3b64e138315cb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:17 +00:00
Scott Rifenbark
b56df9790e kernel-dev: Re-write of the "BSP Description" section.
First re-write of this section.  Terminology is an issue here.
Dumping the term "ktype" for good.

(From yocto-docs rev: e5ee05c5bfec2a0c62b89245efbe248a66b66288)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:17 +00:00
Scott Rifenbark
03dce08b4e kernel-dev: Re-write of the "Kernel Types" section.
First real re-write of this section.

(From yocto-docs rev: 636a852d4748904df6794bef391f7f5ef3db3c0f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:17 +00:00
Scott Rifenbark
48f8d9c2cc kernel-dev: Re-write of the "Features" section.
first real re-write of this section.

(From yocto-docs rev: 09a9d0978d939f40782179f9fd46ccd7b999c262)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:16 +00:00
scott-lenovo
472d58a06e kernel-dev: First re-write of the "Patches" section.
(From yocto-docs rev: 64e2b623e040efeefdef572024c867a57a883f24)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:16 +00:00
scott-lenovo
76f1ffe77a kernel-dev: Edits to the "Configuration" section.
First real re-write of this original text.

(From yocto-docs rev: a6d16b61057df8ed811cf1f5f27c5f9e08be1108)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:16 +00:00
scott-lenovo
d176d86a4c kernel-dev: edits to the "Kernel Metadata Syntax" section.
First real re-write of this section.

(From yocto-docs rev: 41c79da0832c0b290b21cc2aff87091d7243fafa)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:16 +00:00
scott-lenovo
545f79bfdd kernel-ref: Edits to Recipe-Space Metadata" section.
This is the first serious re-write of the text from the
original.  Edits to make it more readable.

(From yocto-docs rev: 21c77fdfc9ae1a02b1d02fb113324c96c6aecb5e)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:15 +00:00
Scott Rifenbark
b63272cc16 kernel-dev: General edits to "Kernel Metadata Location" section.
First real pass at cleaning up the text.

(From yocto-docs rev: a550e96780b5be191a576bbb20ef28a36b20e0bc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:15 +00:00
Scott Rifenbark
ced75cec41 kernel-dev: Edits to using metadata in a recipe section.
General edits to clarify the writing.

(From yocto-docs rev: 0510ab0faf81e0ac1c931863337eb217581c66ed)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:15 +00:00
Scott Rifenbark
e826a50739 kernel-dev: removed "many" based on Darren's Feedback.
(From yocto-docs rev: 4f0de9cd389f37f86c2f88e399e52a284a4f870b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:15 +00:00
Scott Rifenbark
f9a8256553 kernel-dev: General edits during re-write.
(From yocto-docs rev: 7fc9b1bdeb63c32252a243ab21e31ba25779bb1b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:14 +00:00
Scott Rifenbark
467cb3d32e kernel-dev: Edits to the introduction chapter.
I did some re-writing for better understanding based on what I
know.

(From yocto-docs rev: fc3adb037ac07a90dfbba6b76643391480e0bce5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:14 +00:00
Scott Rifenbark
ea114c8786 kernel-dev: Fixed the COMPATIBLE_MACHINE example.
(From yocto-docs rev: ea9a862b3840075cfb197bf00cb96b616873f0ea)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:14 +00:00
Scott Rifenbark
826b9f2ac8 kernel-dev: General edits for "Working with your own Sources"
(From yocto-docs rev: d5627b98c98e47b963da35eefeb9808877dae296)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:14 +00:00
scott-lenovo
00557ab7d5 kernel-dev: General edits up to section 2.4.
(From yocto-docs rev: 2df095c98a6fa034cb39f952db27d1ab55849000)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:13 +00:00
scott-lenovo
9a6c5e1fdd kernel-dev: Updates to the introduction chapter.
General edits for readability, etc.

(From yocto-docs rev: eb52c743ad0fba7859ee4800f12981294aa71b23)

Signed-off-by: scott-lenovo <scott-lenovo@ubuntu.(none)>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:13 +00:00
Scott Rifenbark
8d771b3eb6 kernel-dev: Fixed some broken links.
(From yocto-docs rev: 0b1549deddf4d4dfb2204790cdf0714bd0dc3da3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:13 +00:00
Scott Rifenbark
b5337adfd8 kernel-dev: Added support for the FAQ chapter.
(From yocto-docs rev: 05162a9462674a35c36676b09987510c94467688)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:13 +00:00
Scott Rifenbark
28b6aabbda kernel-dev: Initial edits to the kernel-dev-faq.xml chapter.
(From yocto-docs rev: c76898ec961cc741c6f67448b1227111ef34dbaa)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:12 +00:00
Scott Rifenbark
3abb7da974 kernel-dev: Added a new file named "kernel-dev-faq.xml".
(From yocto-docs rev: 00d6239d615e83fa0457ab82678c9501d0ea4e98)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:12 +00:00
Scott Rifenbark
5b2ed2a5fa kernel-dev: Formatted the "SCC Reference" section.
(From yocto-docs rev: d688741743ff3ffeaf387dffc728af40331e8933)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:12 +00:00
Scott Rifenbark
ece3e83e8b kernel-dev: Formatted "Feature Branches" section.
(From yocto-docs rev: 6225075b08b3585532e60c9aebc0903a4509e51f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:12 +00:00
Scott Rifenbark
49166264bd kernel-dev: Formatting "Machine Branches" section.
(From yocto-docs rev: 30a0d3c1ef3d91221ce3f90a3fd2f4b93bff1c30)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:12 +00:00
Scott Rifenbark
fe1b20f80a kernel-dev: Formatted the "BSP Descriptions" section.
(From yocto-docs rev: 9cfccb3372f47094479fb0a5ad095cf2b46f906e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:11 +00:00
Scott Rifenbark
d675ef0878 kernel-dev: Formatted "Kernel Types" section.
Also put in the initial text for the next section, which
is "BSP Descriptions."

(From yocto-docs rev: 0c9b0475d9c1a97c7b00df325dad0c830e30444b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:11 +00:00
Scott Rifenbark
caacd30b27 kernel-dev: Formatted "Features" section.
(From yocto-docs rev: 500ae50979dad7f730d8c0a5e987c608422f3c71)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:11 +00:00
Scott Rifenbark
1fa2beffa1 kernel-dev: Formatted the "Patches" section.
(From yocto-docs rev: e7de7e806d4cd02e4b5c8cb1ac237809bef5144e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:11 +00:00
Scott Rifenbark
cc07a5e350 kernel-dev: Formatted the "Configuration" section.
(From yocto-docs rev: 2b3be91ffdc6c27306f381cf083f4b3e805c2d38)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:10 +00:00
Scott Rifenbark
ef4d985329 kernel-dev: Formatted "Metadata Syntax" section.
(From yocto-docs rev: 24fda5393103dd6dba2f7e58d023172dc2ee48ff)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:10 +00:00
Scott Rifenbark
e8dabb0228 kernel-dev: Formatting "In-Tree Metadata" section.
(From yocto-docs rev: 92e9a5c6c6a3a416e3e8718d8e02f72025ad355c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:10 +00:00
Scott Rifenbark
4158e19d36 kernel-dev: Format of the "Recipe-Space Metadata" section.
(From yocto-docs rev: 6db7f35316b5cc513c17d454237e13548911b6bb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:09 +00:00
Scott Rifenbark
7f62af0d12 kernel-dev: Formatting of the "Metadata Location" section.
(From yocto-docs rev: 8ea651b8a15980421123809a1612dafe4d22ac2f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:09 +00:00
Scott Rifenbark
ea6d5be3ce kernel-dev: First edits to chapter 3 intro and section 3.1.
(From yocto-docs rev: bb640ebcfd99eaf3944711edc813a4bd39aa3753)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:09 +00:00
Scott Rifenbark
46b0fc3ec6 kernel-dev: Updated the root file to include the metadata chapter.
(From yocto-docs rev: b31e8928dbfeef3908d8a83a152e6701fa3bbbe0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:08 +00:00
Scott Rifenbark
7c5dfcbfb6 mega-manual: Updated the top-level XML file.
1. Changed "poky-ref-manual" to "ref-manual"
2. Inserted new lines to support "kernel-dev" manual.

(From yocto-docs rev: a134992633572c0b006ae73d47512be89d13ba8e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:08 +00:00
Scott Rifenbark
c9c0029c9b tools: Updated SED file that processes links for mega-manual
The version changed from 1.3 to 1.4.  The poky-ref-manual changed
to ref-manual.  And I added the new kernel-dev manual.  For now
I am leaving the kernel-manual book.  Likely it will be replaced
later.

(From yocto-docs rev: 3df7476724c96e97f309118fb6d906a999414093)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:08 +00:00
Scott Rifenbark
a2606d3b9f Makefile: Added the kernel-dev-title.png file to tarball.
(From yocto-docs rev: 1bb975547f509eb9c8364762f8e5040c7ead423a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:08 +00:00
Scott Rifenbark
7d46d48558 mega-manual: Added the title figure for the new kernel-dev book.
(From yocto-docs rev: 7f1fc6b50be882bd73f394f1ebe5f6dc0e3b0c28)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:07 +00:00
Scott Rifenbark
76c2ace2bf kernel-dev: general edits to the Introduction chapter.
(From yocto-docs rev: 211d85ea41743264c2f06f2ab44f0cdda68e43da)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:07 +00:00
Scott Rifenbark
142de606a3 kernel-dev: Added original text into "Preparing a Layer" section.
(From yocto-docs rev: 504023d6a70d29c5501ef3f367029dcc033aeb6a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:07 +00:00
Scott Rifenbark
9a5376be50 kernel-dev: Re-write of "Incorporating Out-of-Tree Modules" section.
(From yocto-docs rev: 1abc8be7a2862d51165615f49c8c9cfab319564b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:07 +00:00
Scott Rifenbark
bb715c8eb8 kernel-dev: Re-write of "Working With Your Own Sources" section.
(From yocto-docs rev: 21b923bcb13cf918ddfad3b1cb449829c43aa3ab)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:07 +00:00
Scott Rifenbark
1b23230b65 kernel-dev: Re-write the "Modifying Source Code" section.
(From yocto-docs rev: 5ba8873b3ae182a06964ffc682acbe7b7947bb02)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:06 +00:00
Scott Rifenbark
2e106f9caa kernel-dev: Re-write of the "Generating Configuration Files" section.
(From yocto-docs rev: 5f5bbdf42bd7e53ca9332b662999a3f3cd73db71)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:06 +00:00
Scott Rifenbark
2c0358ccc7 kernel-dev: Re-write of "Iterative Development" section.
(From yocto-docs rev: fe86005486a9bf41307546bcfa7d718e0e95abf9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:06 +00:00
Scott Rifenbark
716306ad2b kernel-dev: Re-write of the "Changing the Configuration" section.
(From yocto-docs rev: 22f1f167c3c55b392ad8fd9e3d2e965183a2d884)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:06 +00:00
Scott Rifenbark
74d43d3a11 kernel-dev: Re-write of the "Applying Patches" section.
(From yocto-docs rev: 6f72b0ca3e883cb03618c9f37c69cb1ab774a9fe)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:06 +00:00
Scott Rifenbark
1306d5ca59 kernel-dev: Rewrite of the "Modifying an Existing Recipe" section.
(From yocto-docs rev: 699ab26ba14eb34166094ec93a2e3dff62d51b56)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:05 +00:00
Scott Rifenbark
1e76c5c558 kernel-dev: Rewrite of "Preparing a Layer" section.
(From yocto-docs rev: 9121a1afbf57023b180335541c551ae9356dcd83)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:05 +00:00
Scott Rifenbark
974ef52d56 kernel-dev: Rough text in for new chapter. Makefile edited.
The raw text for the second chapter is in by section.  This has
no formatting whatsoever.  I also edited the Makefile so that
the new "Common Tasks" chapter would make as part of the manual.

(From yocto-docs rev: 68bcc1e977fbdd7b1a4b448171d1149edc72db51)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:05 +00:00
Scott Rifenbark
494e9ef06b yocto-docs: updated poky.ent to have a temporary URL for kernel-dev
I added in the variable YOCTO_DOCS_KERNEL_DEV_URL as a placeholder
for the variable used to resolve to the published manual.  This
will need changed when we decide how to retire the existing
kernel-manual.

(From yocto-docs rev: 0a42af6c02b3fc6ebcad5be47d69c66ff0ced7ac)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:05 +00:00
Scott Rifenbark
d0858ccb33 kernel-dev: Updates to get the new kernel-dev manual to make
These changes were to the intro chapter to introduce the DocBook
form, the Makefile to introduce the new manual, the figure used
for the title had to be updated, the root manual .XML file needed
changed, and the style sheet.

The manual now makes with just the raw text for Darren's intro
section.

(From yocto-docs rev: 1bceb7bdd4fe5773c11c7ddbdae00554680bbf6d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:05 +00:00
Scott Rifenbark
6833ec86ac kernel-dev: Edits to set up root .XML file for new kernel-dev manual.
(From yocto-docs rev: 12019f8ddebc78162f4a759c5e84fac314a962ef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:04 +00:00
Scott Rifenbark
5cbeb84006 kernel-dev: Created file structure for new kernel-dev manual.
(From yocto-docs rev: 25be3ebb7713b875c4ec6e3723961b7dd860295d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:59:04 +00:00
Tom Zanussi
ea50862d40 lttng-ust: bump PE
The previous lttng-ust had a PE of "1" - that recipe was removed and
replaced with the lttng2-ust recipe, which was renamed back to
lttng-ust.  The new recipe had didn't define a PE so got the default
PE of 0 - this adds the PE back and gives it a value of "2", which
reflects the history and fixes the following error:

ERROR: Package version for package lttng-ust went backwards which
would break package feeds from (1:0.16-r1 to 0:2.1.0-r0)

(From OE-Core rev: 2fbfb2708fc7c0082b85ef964d850f8520b841d6)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 15:51:31 +00:00
Bogdan Marinescu
7bfb98568a bitbake: hig.py: refactor into individual components
Since hig.py was becoming too large (which impacted maintenance and
operations like git merges) it was split into individual files for
the classes that were implemented in hig.py. hig is now a Python
package (lib/bb/ui/crumbs/hig/). The patch was tested by
building core-image-basic/qemux86 in Hob and accessing the various
UI elements implemented in hig. Note that the patch does not change
the functionality of Hob in any way, it's just a code refactoring
that should make life a bit easier for Hob developers.

[YOCTO #3200]

(Bitbake rev: a7a2b730f915cafe7aa30539622dd1ca64ae41f5)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 12:51:33 +00:00
Tom Zanussi
a746719a46 yocto-bsp: add basic git connectivity check
yocto-bsp create does a 'git ls-remote
git://git.yoctoproject.org/linux-yocto-3.4.git *heads*' to get the set
of existing branches from the kernel repo.

If the user isn't connected to the network, or if git isn't configured
sanely, yocto-bsp fails with an ugly Python backtrace.

We should try to avoid this by doing a basic sanity check for those
things before actually running the command.

The sanity check can be avoided by specifying -s on the yocto-bsp
command-line:

 $ yocto-bsp create -s test qemu

Fixes [YOCTO #3279]

(From meta-yocto rev: 496e76f9bed2ed5a04ef757724d2e63d05c7a601)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 12:08:01 +00:00
Laurentiu Palcu
e02b31623d update-rc.d: check also that symlinks are valid
Running:

update-rc.d -r /path/to/target/rootfs basename defaults

at do_rootfs time in package postinstall stage, when
/path/to/target/rootfs/etc/init.d/basename is a symlink and points to some path
on target (for example: /etc/init.d/basename.some_package), would fail and the
postinstall execution would be postponed for first boot, on target.

This patch adds the posibility to verify whether the file the symlink
points to actually exists in the target rootfs.

[YOCTO #3716]

(From OE-Core rev: 4b63e73422ea25aba1bde0beddb02bc04948e13c)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 12:08:00 +00:00
Marko Lindqvist
a2375f49e1 apmd: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 0ada16fe509d9a8608c05d16666243c8ebe4d3b3)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:37 +00:00
Marko Lindqvist
06a0d4a025 dbus: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 1eb8f569fa084f7f5d284f0bb1110721b9674d9a)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:37 +00:00
Marko Lindqvist
dc47fe7911 libidn: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 3a116ba892f63a690932d0aee454c15927ba0eca)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
b1bd1cdc4f gperf: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 9851d4bdf9283d280d8fc1302f5b744b6d792759)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
8cd639bdd4 ethtool: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: da826787f08adec6a3ec3995e7809b75df2c99c3)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
5f8c1bf012 shadow: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 9aefa35859413a635fb4e122d59a703e95a9b5bb)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
d23be09a30 iptables: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: bc36eadd5dee7390977629358cab3f13d6ddcf5c)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
87f778fc57 gzip: fix license segment md5sum boundary
Replaced incorrect "firstline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 029965a3e8263ec11d9a5f1bfbb8152ae4a1aea3)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
a7cbb2e67c libidn: add checksums to version 0.6.14 recipe
(From OE-Core rev: 98691df00020036628617d6f149c02b1d0d856ea)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
be161e03ba ofono: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 1766f851be890ec057040594a12997b1576ba1d5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
a8534b39fa tremor: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: e64800e605635737b4d74a36e66b0f7e0fee08bc)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:36 +00:00
Marko Lindqvist
452c3df3c6 alsa-utils: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 723ec3b3b618fc4cccbd0e7306624161dd81b0e5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
1c5a07e6dc bluez-hcidump: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: cb9480937162c4e6a80769f5ccd7cbc09d8947d2)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
83f1e6975c curl: fix build with automake-1.13
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.
Remove AC_CONFIG_MACRO_DIR override that caused aclocal to fail
since it didn't get m4-directory information.

(From OE-Core rev: 54a945a5e67c44be3e0b21114b7ca3abf8d99ada)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
0f948badad libtirpc: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 074566f49be59b2f507ba427f258e1ca345da3c9)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
d88f051edf vte: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 4cd77250aa65b18c863a112595bc30391b23d032)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
25d7771145 sysfsutils: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 11319ad6eec2056278d6b6540e31d369870537da)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:35 +00:00
Marko Lindqvist
0e435580a2 rgb: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: b1c788dbd7b0f015718f915763b1d08e566e80e3)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:34 +00:00
Marko Lindqvist
81c78befb0 libxsettings-client: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 703ea77f1869c1101e1637831a83ca2d754907da)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:34 +00:00
Marko Lindqvist
4eccc6416f pango: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 16df16408719b93f595412a4c10df793d847dd19)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:34 +00:00
Marko Lindqvist
2465f17c44 polkit: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 9f4cca12f00327bb9a7070f305c36433ee732d7a)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:33 +00:00
Robert P. J. Day
46420331ef image_types.bbclass: Add and update comments regarding image types.
Explain the elf/cpio.gz snippet of code, and update a comment to
reflect the correct variable name.  No functional change.

(From OE-Core rev: 0ca4a3a25e4495bf6e2e3932c019bd15856faf55)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:33 +00:00
Cristian Iorga
b1ae967908 connman: upgrade to 1.10
0002-storage.c-If-there-is-no-d_type-support-use-fstatat.patch
    - adapted to the new version

0001-timezone.c-If-there-is-no-d_type-support-use-fstatat.patch
    - patch removed (it is included in the new version)

inet-fix-ip-cleanup-functions.patch: added
    - fix for ip cleanup functions

(From OE-Core rev: e0cca947fc87c8f7a6d2a8fd719c87d56dd52941)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:33 +00:00
Cristian Iorga
7048fbdc05 connman-conf: configures connman in qemu machines
For qemu machines, connman should not configure
virtual wired interfaces. Wired interfaces (eth0)
are assigned static IP addresses by the virtual machine
manager (qemu). This packages places the eth0 interface in
a list of blacklisted interfaces, forbiding connman
administering wired interfaces for qemu machines.

(From OE-Core rev: cfd9ab0eff27a59b8b9e750a01565e2e7c94e801)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:33 +00:00
Andrei Dinu
e9a1696144 Removed undisplayed picture from connman-gnome
- removed the picture that doesn't display in the
connman-gnome "about" section.
- updated the recipe to use the patch when running bitbake
- created a folder with patches named "connman-gnome",
the same as for connman.

(From OE-Core rev: 56c7ce56a1c9870df08821c6f18fac3713b1b4cf)

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>
2013-01-16 11:57:33 +00:00
Chen Qi
0c1b6098d4 runqemu scripts: add support for booting an ISO image
Add support for booting an ISO image for runqemu scripts.

[YOCTO #3710]

(From OE-Core rev: edd629029979dc18905fce23b64216f15eea501f)

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>
2013-01-16 11:57:33 +00:00
Tom Zanussi
14363c30ce recipes-kernel/lttng-2.0: rename to recipes-kernel/lttng
recipes-kernel/lttng was removed by a previous patch, which also
removed the naming conflict that caused the lttng-2.0 version of lttng
to be named recipes-kernel/lttng-2.0.  Since the naming conflict has
disappeared, we can go back to the simpler naming.

(From OE-Core rev: 2027fd1bbfc2c136672d5054ba722e9d9d80451d)

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>
2013-01-16 11:57:32 +00:00
Tom Zanussi
44a485f7a6 lttng2-ust: rename to lttng-ust
recipes-kernel/lttng/lttng-ust was removed by a previous patch, which
also removed the naming conflict that caused the lttng-2.0 version of
lttng-ust to be named lttng2-ust.  lttng2-ust was the only lttng-2.0
recipe to be named in this way and since that was entirely due to the
conflict, we can go back to the consistent naming for it.

(From OE-Core rev: 3c927c39502061bdf3ef9fba1f0f6e7080f6c3cd)

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>
2013-01-16 11:57:32 +00:00
Tom Zanussi
4a5ad289d1 lttng: remove 'legacy' lttng
This removes 'legacy' lttng - it hasn't actually worked for awhile
now, and has been replaced by equivalent functionality in
recipes-kernel/lttng-2.0 (which will be renamed to lttng in a
follow-up patch).

Fixes [YOCTO #3303].

(From OE-Core rev: 920b4c292f6c704cfe32666a3e1de5bce19043b5)

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>
2013-01-16 11:57:32 +00:00
Cristian Iorga
c292504197 quota: upgrade to 4.01
(From OE-Core rev: 879c36e69889ed4945f427d5947555949c024023)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:32 +00:00
Saul Wold
b17b87cb4b xz: LICENSE field is wrong
xz contains a GPLv3 m4 macro which is used at build time, this does not make
the installed or runtime items GPLv3, which is what the LICESNE field pertains
to, therefor remove it from the LICENSE field.

(From OE-Core rev: d1950aaed812dc98d0536ec819c82b7a6160b316)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:32 +00:00
Cristian Iorga
1306286666 iproute2: upgrade to v3.7.0
configure-cross patch is now simplified.
sysroot is now properly set.

(From OE-Core rev: 9c9c55635ef34fc0f4d5acd8434c8f64ccd5bf87)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:32 +00:00
Emilia Ciobanu
94cd6a15e2 distrodata: Updated checkpkg task
bitbake -c checkpkg fetches the latest version for all packages,
including the ones from sourceforge and those that have
ununsual package naming.
Also removed all pn-native/nativesdk-pn entries from the resulting
checkpkg.csv file if the system already reported the latest version
for pn.

(From OE-Core rev: dc33d69df55ad8d63024d34e35a0b987e01b0077)

Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Cristian Iorga
af430dfd7f db: upgrade to 5.3.21
License file changed the year,
triggering a change in checksum

(From OE-Core rev: c1fe80b5b6e3ac3da8a0a1c138649c92ca11f285)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Eric Bénard
880372e956 add meta-toolchain-qt
- this allows the creation of a SDK containing all the needed
libraries to develop QT4 for X applications
- the recipes were factorized to share as much code as possible
- binaries generated using the toolchain were run tested on an
ARMv7 target
- both qt & qte toolchains were build tested for qemuarm target
and for an ARMv7 target

(From OE-Core rev: cc803b06841e75aa6591abaeda0a788e888e208b)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Cristian Iorga
d66d8ae962 qemu: machine override ability added
Add override ability to qemu to allow qemu specific
configurations for any qemu machine.

(From OE-Core rev: 4ee668a558e5d4a6d14e29c9fe88b8bb642a16a9)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Nitin A Kamble
5119330fb1 ia32-base.inc: Add more macros for xf86 drivers
This commit adds macros for fbdev & modesetting X driver packages.

(From OE-Core rev: c412a4eaf17fa29a4f2280f8be1dcf95346217a6)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Nitin A Kamble
35e407d58d xf86-video-modesetting: new recipe for gma500
I am trying to use gma500 driver for the noemgd BSPs. The current best
xf86 driver for it is modesetting. This recipe provides that
driver.

(From OE-Core rev: 5f9de6f97cf218973a5284feb1e5ae841b69dcc6)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:31 +00:00
Kang Kai
7641301595 perl: fix installed but not shipped issue
It shows warning when bitbake perl:
WARNING: QA Issue: perl: Files/directories were installed but not
shipped
  /usr/lib/perl/5.14.2/auto/XS/Typemap

That because file Typemap.so is not install correctly. Fix it.

(From OE-Core rev: d4c3cc8cff9311ff873304410e3092921dbe6ddc)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16 11:57:30 +00:00
Felipe F. Tonello
9eb88ceb39 connman: fixed init script so connman can runs over nfs
Adding -I to the arguments, connmand will ignore the eth interface, so if you
are using nfs it will not be disconnected.

OBS: it might not work if using more than one eth interface. But it's better
than not using connman with nfs at all.

(From OE-Core rev: 6080d1dc719c38fd97c2abd38e0ad938fbf6f452)

Signed-off-by: Felipe F. Tonello <ftonello@cercacor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:12:05 +00:00
Chen Qi
c7f170bcb8 initscripts: remove finish.sh
Remove finish.sh from initscripts as it is no longer used.

(From OE-Core rev: 3bcd9188f919da1b10f692d29ef34cd18ef88184)

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>
2013-01-15 08:12:05 +00:00
Eric Bénard
d638fee94b gitignore: only ignore meta- directories
else for example meta-toolchain-qte.bb is also ignored.

(From OE-Core rev: d15d42562dff08696015f4d15e3e15c70ee2357a)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-15 08:12:01 +00:00
Martin Ertsaas
583d2b8f92 quilt: Don't use BUILD_ROOT on darwin.
(From OE-Core rev: 130f1fa3d2787c3c542522ecf9ba5debf914f41a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:15 +00:00
Martin Ertsaas
3f5a047afe quilt: Remove non-gnu.patch, and added configure flags for darwin.
(From OE-Core rev: f495dfb60cb1fd86b7365210dd7aab75cec2d5e4)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:15 +00:00
Martin Ertsaas
2c7bba51a6 sstate: Do not add the --no-run-if-empty arguement to xargs when on Darwin, as it is not supported.
(From OE-Core rev: 73b34d43633717b99e4f2f669939939cfa59eecb)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:14 +00:00
Constantin Musca
66d0b1d4d2 gcc: add missing dependency (zlib)
- add zlib to DEPENDS (it fails otherwise)

(From OE-Core rev: 7a0fd7145461d3feb9fe7900a39376d556e655d6)

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>
2013-01-15 08:10:14 +00:00
Marko Lindqvist
f1fd0a24b3 bluez4: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: e4e3fc72fdfc7cde4652c562a936ef473c35367a)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:14 +00:00
Marko Lindqvist
42d2beec09 gmp: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 17a58db25657184e0770d29391062e7f93d5bb5b)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>

Conflicts:
	meta/recipes-support/gmp/gmp_5.1.0.bb
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:14 +00:00
Marko Lindqvist
45b958ba77 gtk+: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 0beee6281fed3926b6871dbfdd907416d4a04886)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:13 +00:00
Marko Lindqvist
2326328120 startup-notification: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: f311b2d9978e07d4e5f4b6687ff2dba41b5e5da4)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:13 +00:00
Marko Lindqvist
be2c9d3a94 gconf: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 388939c4cebabce8ef05c8aec5b9dccf390b75f0)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:12 +00:00
Marko Lindqvist
084f7067a0 opensp: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: ae3917b9dc8c350de92b9ec0c7def780f8a09af7)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:12 +00:00
Marko Lindqvist
dafbebca07 libvorbis: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 0f2a601b04ac564905942b4d2006dbf348b1517b)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:12 +00:00
Marko Lindqvist
0468adda22 libmad: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: da623c24804b7bb331de45f39063c7b207d6e4d6)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:11 +00:00
Marko Lindqvist
5b91cdde2a libogg: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 8bfb260eb601360bea251d77633f463063e4d451)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:11 +00:00
Marko Lindqvist
7879893ae2 python: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch for both python-dbus and
python-pygobject that replace automake macros no longer supported
by automake-1.13 with modern constructs.

(From OE-Core rev: 9866bed92c0f3dee3f1674e9f9a28e21f5ba33fc)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:11 +00:00
Marko Lindqvist
f6bc657476 alsa-lib: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 453fd36914fe1ae41a2115266833ec7fcba0869d)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:11 +00:00
Marko Lindqvist
c28b05f02b makedepend: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 6cb2ef796278b0747cda4771091d9fdc1603bea7)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:10 +00:00
Marko Lindqvist
675a18d07a tslib: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 4530d308a546e989873e2978ea5ed2970e8925e7)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:10 +00:00
Marko Lindqvist
7b87038867 dbus-glib: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 3f5e1d92a53015b44fa4eaf5325ba742a9a854e6)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:10 +00:00
Marko Lindqvist
de8ec21593 help2man: update to upstream version 1.40.13
(From OE-Core rev: dd1e33420cee433dc5c4bd302e44ccfc37eb6722)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:10 +00:00
Marko Lindqvist
3ec3216326 coreutils: fix license segment md5sum boundary
Replace incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated
from the beginning of the file, not beginning of the license segment.

(From OE-Core rev: 98c258f5db7e6800557e4e51c064b0d82a10edd6)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:09 +00:00
Marko Lindqvist
d4397ab4dd libxdamage: update to upstream version 1.1.4
Compatible with automake-1.13.

(From OE-Core rev: c50d7a2869f4d9004bc39444d798a075607d03fa)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-15 08:10:09 +00:00
Bruce Ashfield
53cc748b93 linux-libc-headers: fix headers install in long path name environments
If a build is started in a deep directory structure, or in a path with
long directory names the installation of linux-libc-headers will fail
with:

  | make[2]: execvp: /bin/sh: Argument list too long
  | make[2]: ***

>From within the kernel Makefiles themselves.

The solution is to patch the kernel build rules with the following
change:

[
    scripts/Makefile.headersinst: install headers from scratch file

    If headers_install is executed from a deep/long directory structure, the
    shell's maximum argument length can be execeeded, which breaks the operation
    with:

    | make[2]: execvp: /bin/sh: Argument list too long
    | make[2]: ***

    By dumping the input files to a scratch file and using xargs to read the
    input list from the scratch file, we can avoid blowing out the maximum
    argument size and install headers in a long path name environment.
]

Until this change, or a similar one, is merged into the mainline kernel, this
change should be applied to any 3.7 or greater libc-headers build.

Upstream-status: Pending

(From OE-Core rev: 1e63a3b7b7915d40bb59976a02b9f53968997ed3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:53:51 +00:00
Ross Burton
5371d96686 gtk+3: add 3.4.4
Mostly taken from meta-gnome, with some changes.

Instead of depending on gtk+-native, depend on just gdk-pixbuf-native and build
the tool required for the host directly.  This saves building the entire GTK+
stack natively just for one tool.

Append a version suffix and use update-alternatives on gtk-update-icon-cache as
with GTK+ 2.

(From OE-Core rev: 16c0556808029a0f6a3f91a726b14626e9489498)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:41 +00:00
Ross Burton
2a311dd992 gtk+: version installed gtk-update-icon-cache and use alternatives
With GTK+ 3 being added soon we'll have potentially two providers of
gtk-update-icon-cache.  Append a version to the binary and use
update-alternatives to ensure that the unversioned name works.

For gtk+-native the alternatives won't take effect, so install a symlink
explicitly.  This will break if we have a gtk+3-native but we can fix that if
and when that happens.

(From OE-Core rev: a9e71b41463c6c8e2be50d40403a0017d3cdf146)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:40 +00:00
Samuel Stirtzel
c8e7c30041 boost: Use PARALLEL_MAKE for bjam
Like make, bjam accepts the parameter -jX for multithreaded execution
do_install also profits from this setting
Tested with a quad core 64bit intel cpu (with hyperthreading) PARALLEL_MAKE="j16"

$ time bitbake boost

before:
real    14m37.433s
user    7m40.785s
sys     4m30.109s

after:
real    7m11.979s
user    12m10.694s
sys     2m47.078s

Also fixes tab indention

(From OE-Core rev: 9b9cfc1dfe5e3b8f89b7a8508537166d0f23935e)

Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:40 +00:00
Constantin Musca
d777af8425 puzzles: upgrade to r9733
(From OE-Core rev: 418312a2523f5e1fd231d215475250168f17fa58)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:40 +00:00
Florin Sarbu
4739031722 alsa-utils: add bash as a dependency of the alsa-utils-alsaconf rpm.
alsa-utils-alsaconf rpm contains the bash script alsaconf. In order
to have the do_rootfs not error when bash is not brought along in
the rootfs as an explicit dependency, we add it as a dependency
of alsa-utils.

(From OE-Core rev: 18575b082a4042376fd1575465e69562dea04ddc)

Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:39 +00:00
Hongxu Jia
78e5426a76 apt-native: fix the creation of apt.conf.sample
1.The file of "apt.conf.sample" is in the outdir, and outdir is assigned
by "os.path.join" with the params of ${D}, ${sysconfdir} and "apt". But
${sysconfdir} is an absolute dir and that let ${D} be discarded.

The following is the help on function os.path.join(a, *p):
     Join two or more pathname components, inserting '/' as needed.
     If any component is an absolute path, all previous path components
     will be discarded.
Use oe.path.join instead which don't have this problem.

2. Create apt.conf.sample if it doesn't exist.

[YOCTO #3677]

(From OE-Core rev: 95a655a853b7cd43163362d72da0c134d4c0ec85)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:49:39 +00:00
Marko Lindqvist
60de86fc55 pango: update to upstream version 1.32.5
multilib-fix-clean.patch adjusted to apply cleanly, and to handle
new modules.cache file.

(From OE-Core rev: bcc5773199b46811f913d06e960d34ed9833f714)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:17 +00:00
Marko Lindqvist
9826ea1821 harfbuzz: add recipe, version 0.9.10
OpenType text shaping engine HarfBuzz is dependency of pango >= 1.32
This depends on all of glib-2.0, cairo, and freetype to consistently
provide all backends. Otherwise it would, in typical case, depend
on build order of these packages. HarfBuzz configure would pick those
backends for which dependencies happen to be built before it.
Similarly graphite is consistenly disabled if there ever happens
to be recipe for it.

(From OE-Core rev: 6f5ab158203101db69d11754a77b0fd6fbb23f87)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:16 +00:00
Ross Burton
0120167750 directfb: fix build against Mesa 9
Mesa 9 changed the libgbm API, so take a patch from upstream to fix this.

(From OE-Core rev: ab6f8ea9ddc69433c3e84058d8ea5502cbab35c3)

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>
2013-01-10 23:43:16 +00:00
Ross Burton
909b3bee33 mesa: bump to 9.0.1
Upgrade Mesa to 9.01, backporting a patch from master to build without needing
mesa-dri-glsl-native.

Several patches have been merged upstream, so drop them.

License checksums updated as the file was re-formated.

Drop mesa-dri-glsl-native as we don't need it anymore.

Tested with Piglit's "quick" test suite, pass rate remains constant compared to
8.0.5 at 87%.

(From OE-Core rev: f816697c1e76589de7853bd5573cf578e25c7ca7)

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>
2013-01-10 23:43:16 +00:00
Khem Raj
d5ce76dce3 udev: Fix build with eglibc 2.17
Link with librt to get definitions of mq_* functions
Fixes errors like below

 /home/kraj/work/angstrom/sources/openembedded-core/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/udev/182-r3/udev-182/src/sd-daemon.c:394:
undefined reference to `mq_getattr'
| collect2: error: ld returned 1 exit status

(From OE-Core rev: f8797bbba22e9b22bab3ddeb59cd3f33a816fa72)

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>
2013-01-10 23:43:15 +00:00
Khem Raj
a09fbc8d14 ofono: Fix build with eglibc 2.17
include unistd.h explicitly to get ssize_t defined

(From OE-Core rev: 6d722967e2b6905f2bc0b32fc30228ec889529ff)

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>
2013-01-10 23:43:15 +00:00
Saul Wold
abc9273fd5 valgrind: update configure for eglibc 2.17
(From OE-Core rev: bd42666f1bfd0e23a57709b84577018da0a704ff)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:15 +00:00
Laurentiu Palcu
bdb52d2e56 matchbox-keyboard: use the gtk-immodules-cache.bbclass
Since the class was already present, use it. Also, this will have the
postinstalls run on host, at do_rootfs time.

[YOCTO #3602]

(From OE-Core rev: 2e6c202c000cfd0edbc024468c9f6c4b8b7eb816)

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>
2013-01-10 23:43:15 +00:00
Laurentiu Palcu
9129102aee gtk-immodules-cache.bbclass: allow for offline cache generation
In order to support a RO rootfs, the cache generation during postinstall
has to be done on host. However, gtk-query-immodules application will
only be able to parse shared objects from the same ELF class.
In order not to have a native package for all the recipes providing
an input method, so we can generate the cache file natively, run
gtk-query-immodules through qemu emulator.

[YOCTO #3602]

(From OE-Core rev: 78281edfe2342dccd7f598277464a3dd05ac4c0e)

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>
2013-01-10 23:43:15 +00:00
Laurentiu Palcu
aab3c1306f qemu.bbclass: add qemu_run_binary() function
[YOCTO #3602]

(From OE-Core rev: 2cfbe0bd9d02ab8c054e5bc879a2181c6a7e3719)

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>
2013-01-10 23:43:15 +00:00
Robert P. J. Day
f1b530fb2f kernel.bbclass: Define MODULE_IMAGE_BASE_NAME for layer convenience.
Define the additional variable MODULE_IMAGE_BASE_NAME since some
layers (like meta-ti) would find it handy for multi-kernel
definitions in that they wouldn't have to define their own
variable representing exactly the same thing.

(From OE-Core rev: 67e77cd948c69798695d5d5f34163ef89339b35a)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:14 +00:00
Ross Burton
ef97708fc2 musicbrainz: handle rebuilds
When rebuilding build-native already exists.  Sadly handling the directory
existing causes cmake to forkbomb when rebuilding, so delete an existing
build-native.

Also remove a variable that cmake warns isn't being used, and just build the
tool that we need natively, not the entire library.

(From OE-Core rev: 96649fff6de8a44ff3462df14fb8e152b6caf4f1)

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>
2013-01-10 23:43:14 +00:00
Marko Lindqvist
6bd2fb8716 pkg-config: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 4b0adc3b55fe8541d39e529485a5adce747e77e0)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:14 +00:00
Marko Lindqvist
b03b351304 flac: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 753be4705f6790bb3fcd19dc58e0f650fecb3e7e)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:13 +00:00
Marko Lindqvist
e5cc7ad6a2 gnutls: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 861857cc3df0ad12172bb76b09769e43c95b73c6)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:13 +00:00
Marko Lindqvist
e7c6e6bbac libgcrypt: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 43bb038e17b110fe5d0c4f6d7fb2fa2bfa4193a9)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:13 +00:00
Marko Lindqvist
5f792a0b5e libid3tag: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: 847fc45b4d0ee684a308b555a46f9047a885f7e5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:13 +00:00
Marko Lindqvist
78dec5d44a pixman: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: d425161761de48a8ab745915ebddaa224c516214)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:12 +00:00
Marko Lindqvist
1b1e1b3f0a libusb: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: daee74c11411b78560a9682675a215da634a142a)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:12 +00:00
Marko Lindqvist
f34fe18693 libpng: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: bebb0419ca98b386db0046c127a6eccc66f4507a)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:12 +00:00
Marko Lindqvist
34a4408d3d libx11: disable tests
Use of $(srcdir) in TESTS is an error causing automake-1.13
to abort. Disable the tests completely.

(From OE-Core rev: b814732da2cbf927b1bf49aee5e3d50f16a3a34c)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:11 +00:00
Marko Lindqvist
8e1ca4b956 glib-2.0: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: fd05a7137082517947ba5af32d2b80a9beaa4ad7)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:11 +00:00
Marko Lindqvist
58c76a210c popt: disable tests
Use of $(top_srcdir) in TESTS is an error causing automake-1.13
to abort. Disable the tests completely.

(From OE-Core rev: e2c1565a791b9fba2eec8cfb128afa13db0c1ef8)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:11 +00:00
Marko Lindqvist
244296421a file: replace obsolete automake macros with working ones
Add obsolete_automake_macros.patch that replaces automake macros
no longer supported by automake-1.13 with modern constructs.

(From OE-Core rev: c36b032c406f50b8edea961785edca332dc6f843)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:11 +00:00
Ross Burton
4bb69608bb pkgconfig: add -native script that uses the native sysroot instead of target
pkg-config-native is useful when building a package for the target that needs to
compile a build-time tool, to avoid having to hard-code many paths.

(From OE-Core rev: b15e22beed948f79b6ae953df7b889f3e70588b9)

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>
2013-01-10 23:43:11 +00:00
Otavio Salvador
b5fbf48b62 libnl: Update to 3.2.18
This release fixes the build failures found when building against old
Linux kernel headers and also includes the fix for to use 'flex'
instead of 'lex'.

(From OE-Core rev: 5de138939c42b0a6d80732130b2617fd60a7d545)

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>
2013-01-10 23:43:10 +00:00
Bogdan Marinescu
de446b7131 bdwgc: updated to version 7.2d
The license file text was updated to extend the copyright in 2011,
to reflect the new package version and to fix various typos. Tested
by compiling and running guile (which depends on bdwgc) on qemu-x86.

(From OE-Core rev: 3ed5082fd29d2e812f5b4bdda7f6105db25a2e7a)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:10 +00:00
Bogdan Marinescu
531ccc8144 lttng-2.0: components updated to version 2.1.0
lttng2-ust, lttng-modules and lttng-tools were updated to version
2.1.0. Since these should be changed together, the changes are
grouped into a single patch.

The text for the lttng-tools LICENSE file has these lines changed
(according to the license text, these shouldn't impact the actual
licensing terms of the package):

=================================================================
-) include/lttng/*
-) src/lib/lttng-ctl/*

We have some tests LGPL but should not impact anything even if we change them
in the future to GPL.
=================================================================

The text for the lttng-modules LICENSE files contains a minor change in the
MIT section (a reference to the mit-license.txt file):

=================================================================
These files are licensed under an MIT-style license. See mit-license.txt
for details.
=================================================================

(From OE-Core rev: 6f3397b4d5b32e31ed3ba832f48e35fdb1f5b6ab)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:10 +00:00
Bogdan Marinescu
b06f1f3cd8 lsof: updated to 4.87
(From OE-Core rev: 24b57b871ab559e8ff5fe5cdd0412ef6ac51f689)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:10 +00:00
Bogdan Marinescu
1226f29bf0 nasm: updated to 2.10.07
(From OE-Core rev: 1880bcddd2532b22542cc6eccbadf889a1749db9)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:10 +00:00
Bogdan Marinescu
4550b208be byacc: updated to 20121003
(From OE-Core rev: 264abcace9d00361618bd98a71d4bd477e840e88)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:09 +00:00
Chen Qi
67e056a76a rootfs_rpm.bbclass: export INSTALL_PLATFORM_EXTRA_RPM
Export this variable because package_rpm.bbclass needs it.

[YOCTO #3682]

(From OE-Core rev: 64b01c6c945346b661f294fc8a49bf04a72da3c0)

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>
2013-01-10 23:43:09 +00:00
Marco Cavallini
09ec2a4865 kernel.bbclass: kernel_do_install fails with kernel <2.6.30
* kernels <2.6.30 don't have $kerneldir/tools directory
 * so we got this error:
 * sed: can't read ...SNIP...linux/2.6.30-r0/image/usr/src/kernel/tools/perf/Makefile: No such file or directory
 * ERROR: Function failed: do_install

(From OE-Core rev: 4dd39a23dfe069ad34a925e00407b4dde978cb01)

Signed-off-by: Marco Cavallini <m.cavallini@koansoftware.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:09 +00:00
Marko Lindqvist
608b87eb67 bluez-hcidump: updated to upstream version 2.5
(From OE-Core rev: 0a2cd2d63ebbafff935e923091ac82aaf4142244)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:08 +00:00
Marcin Juszkiewicz
a5f95409fc gmp: add patch from upstream to unbreak AArch64
(From OE-Core rev: 561564d7baf2484365a03360ae27bb80ec4ab257)

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>
2013-01-10 23:43:08 +00:00
Bogdan Marinescu
54021c2a41 python-smartpm: add dependency on python-pprint
smart's "config" command uses the Python pprint module. If it is not
present, "config" fails with this error:

 #############
 # smart config --help
 error: Invalid command 'config'
 #############

This patch adds a dependency on python-pprint which fixes the error.
Tested on qemux86/core-image-sato-sdk.

[YOCTO #3643]

(From OE-Core rev: f5f9cfcccd1526572673ffbc5435bf3221498409)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:08 +00:00
Marko Lindqvist
25e5ba1366 gettext-minimal: update files from gettext 0.18.2
(From OE-Core rev: 3f5706348c8c586359ac7fbccadc4bbd55cd8bc9)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:07 +00:00
Marko Lindqvist
024405ca01 gettext: update to upstream version 0.18.2
remove_gets.patch dropped as upstream now contains
fix for the problem.

(From OE-Core rev: 9e936c390006602c27df4c42ea2d9055881db098)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:07 +00:00
Cristian Iorga
7a5ed19c41 telepathy-mission-control: upgrade to 5.14.0
(From OE-Core rev: ecfdc5e12cc9d068eb8226020bdf81bb5f790444)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:07 +00:00
Cristian Iorga
ebf8c55565 telepathy-idle: upgrade to 0.1.14
(From OE-Core rev: dfd69a669c57200bc3846709483db4c82c87d300)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:06 +00:00
Cristian Iorga
0624d147f2 libtelepathy: python-native is now used during build
libtelepathy generated makefiles contain an
assignment like this: PYTHON=python
This could lead to potential build problems
in Yocto environment because python-native
is not used during the build.

Fixes [YOCTO #3679]

(From OE-Core rev: 9e7f5dcb51c547ccec014952ee7c82f9a222d187)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:06 +00:00
Giuseppe CONDORELLI
876aba0224 libpcre: change BUILD_CPPFLAGS and BUILD_CFLAGS values
Set LINK_SIZE in BUILD_CFLAGS given that the autotools bbclass use it to set
CFLAGS_FOR_BUILD, required for the libpcre build.

(From OE-Core rev: 4f1a2bf43e286e630c30738a268df76355e19212)

Signed-off-by: Giuseppe Condorelli <giuseppe.condorelli@st.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:43:06 +00:00
Bogdan Marinescu
66f4c8a674 guile: add explicit dependency to avoid parallel build issue
Add explicit dependency for libpath.h on dynl.x which fixes a
potential parallel build issue.

[YOCTO #3558]

(From OE-Core rev: 0cfec10c4c7b0597f0e0c8f85539d901861a2f83)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:26 +00:00
Hongxu Jia
be78e8190a sstate.bbclass:specify function dirs to avoid race
Specify dirs in which the shell function "sstate_create_package" and
"sstate_unpack_package" are executed and don't use ${B} as default dirs
to avoid possible race with task do_rootfs at deb image creation time.

[YOCTO #3674]

(From OE-Core rev: ccef1cf783669a4683eda9d4b44dbe6bcf426259)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:26 +00:00
Lukas Bulwahn
66db85262b site/common: deactivate a runtime check for ipv6-support in python >=2.7.1 that fails when cross-compiling
In configure there is a runtime check to determine buggy getaddrinfo and as we
are cross-compiling this check goes wrong. If ipv6 is enabled in python, the
failed test is reported as fatal error with the message
Fatal: You must get working getaddrinfo() function.

Setting ac_cv_buggy_getaddrinfo=no deactivates the runtime check and allows to
compile python with ipv6 enabled.

This commit was derived from the commit 700b75e7661062aa93cf81205b78c8bf7609922d
in the Classic OpenEmbedded Development Tree.

(From OE-Core rev: 95cc8015a867235bed6d6cde08ab87f5351a66c7)

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:26 +00:00
Chen Qi
6f5d6e2e0f runqemu-internal: add 'debugshell' as a default kernel option
Add 'debugshell' as a default kernel option for ramfs booting.

If rootfs.img cannot be found under /media, init-live.sh loops
forever without showing any information. Silently looping forever
and blocking users is inappropriate.

Now that the 'debugshell' feature has been implemented in init-live.sh,
It's reasonable to add it to the kernel option when booting a ramfs-based
image. In this way, the system doesn't loop forever and instead drops
to a shell after a default timeout (30 seconds).

(From OE-Core rev: 0ffdfabc5ab5f6303aff11f8ea511875f1eaf0f5)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:25 +00:00
Stan Hu
278a3c58ac wpa-supplicant: Include wpa_supplicant.service file in package for dbus to work
The dbus service files include a reference to wpa_supplicant.service, but if it
does not exist the dbus-daemon warns:

[system] Activating via systemd: service name='fi.w1.wpa_supplicant1' unit='wpa_supplicant.service'
[system] Activation via systemd failed for unit 'wpa_supplicant.service': Unit wpa_supplicant.service failed to load: No such file or directory.  See system logs and 'systemctl status wpa_supplicant.service' for details.

If this happens, wpa_supplicant is not run automatically.

(From OE-Core rev: 600c07c4391dc44638e9c920c3c402b6588d1259)

Signed-off-by: Stan Hu <stanhu@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:25 +00:00
Christopher Larson
036e8fc414 buildhistory-diff: prepend to sys.path
This ensures that regardless of what else is in our search path, we always use
the bitbake corresponding to the running buildhistory-diff command.

(From OE-Core rev: 246990e8a3da01020f65d151971883740eacb378)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:25 +00:00
Saul Wold
181e76c4b9 bash: fix mkbuiltins build failure
Same patch for non-gplv3 version:

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=1fd9a16d2a4594a4e9179dc7353ac51ce32eb712

[YOCTO #3646]

(From OE-Core rev: d00acdbfa7d10804ff832009888c441fda51e412)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:05:25 +00:00
Alexandru DAMIAN
ebe201c636 .gitignore: Git ignore pull requests and built manuals
We ignore the in-tree built manuals, and
the in-tree pull requests.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-09 15:04:46 +00:00
Otavio Salvador
7e1f8faad0 perl: Remove bashism from perl-tests.inc
The perl-tests.inc file where using the constructs:

 cp {a,b} to/

but this is not supported in every shell so we cannot use it. This
patch fixes it.

(From OE-Core rev: 8dd608dac1e5658197078d002dc1b3dc8ac83184)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 22:37:37 +00:00
Bruce Ashfield
691a830b93 linux-libc-headers: make 3.7 the default and remove older libc-header recipes
Switch the default libc-headers to the 3.7 version. At the same time, remove
older versions of the headers to keep things simple and clear. All userspace
and kernel combinations should build and boot against this single lib-headers
version.

(From OE-Core rev: e7c9706d6a6777326a62e73bffdbb0f940792ff4)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:30 +00:00
Marcin Juszkiewicz
2078ccf48a linux-libc-headers: add 3.7 version
(From OE-Core rev: 7f1672f9513f05a98197632fe24279ecf8a58505)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:30 +00:00
Bruce Ashfield
4d4074040b linux-yocto/3.4: update to v3.4.24
Updating the 3.4 recipes to v3.4.24 stable version.

(From OE-Core rev: c3e97905f423e2bab2a0aadf5099ef445f0dd138)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:29 +00:00
Bruce Ashfield
206ce5743e linux-yocto/3.4: integrate v3.4.21, v3.4.22, v3.4.23
Updating the SRCREVs to integrate the korg -stable updates.

(From OE-Core rev: 88856144bf97630f4c43fd7c984343caf287a435)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:29 +00:00
Marcin Juszkiewicz
7d0d6f0944 libart-lgpl: add AArch64 support
(From OE-Core rev: 928f03017886eb5f4869c559de3d61351fe801a3)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:29 +00:00
Laurentiu Palcu
b51a877f73 xf86-video-intel: upgrade to 2.20.17
(From OE-Core rev: 42850ed397f8a8dca21a5b95ca0dd0ab61e646b6)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:29 +00:00
Marcin Juszkiewicz
3cf3a952a7 ghostscript: add AArch64 support
(From OE-Core rev: e3065f681720abd79b4f4cf545460f249276f3e8)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:28 +00:00
Eric Bénard
a06958eefc qt4: blacklist untrusted SSL certificates
- this blacklist wrong certificates
https://bugreports.qt-project.org/browse/QTBUG-24654
https://bugreports.qt-project.org/browse/QTBUG-28937
- these patches will be in the next 4.8.5 release

(From OE-Core rev: aafcf34aa8be3525ada517b770e43ad05de5a4b6)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:28 +00:00
Otavio Salvador
51ce14351d libnl: Fix building using flex
The build system has not been fully changed to use flex in 3.2.16 so
we need to finish the conversion. In 3.2.17 this bug has been fixed.

(From OE-Core rev: 98c1c4d995416d6355354867d10281c10e9fc9aa)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 19:26:28 +00:00
Richard Purdie
39eb22bbc4 bitbake: build.py: Fix traceback when there are no dependencies
A recipe with no dependencies results in a traceback (e.g. all in
ASSUME_PROVIDED). This shouldn't happen and this patch fixes it.

(Bitbake rev: dee7decf87dfa8cb966fe40846d27f3e6ab1846b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 17:38:23 +00:00
Constantin Musca
1d1884570b gsettings-desktop-schemas: add missing elements from meta-gnome
- add postinst using gsettings.bbclass
- modify the recipe according to the meta-gnome variant

(From OE-Core rev: 337add4a13275b906a98476321f48d75141c5399)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 17:38:23 +00:00
Constantin Musca
5b658729ef libgdata: finalize recipe removal
Part of the sato trimming process

(From meta-yocto rev: 47c6961012d1d17806d9f6470d3b7e22dbcf3313)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:28 +00:00
Scott Rifenbark
8ec1a47afd dev-manual: Updated list of mailing lists to include listinfo
Robert P. J. Day suggested adding http://lists.yoctoproject.org/
listinfo to the list of mailing lists, which included yocto,
poky, and yocto-announce.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: f322c60814471e4216e112b193e5769fd6008a79)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:28 +00:00
Robert P. J. Day
4c582a8b2e dev-manual: Various fixes for links, typos, and grammar
1. Added "Debian" as a distribution for best results.
2. Fixed a link to the Hob page and two links for the
   Build Appliance.
3. Three typos fixed and a few grammar items fixed.

(From yocto-docs rev: 0b381094ed9cc2d66895d4ad7c63005c8a918eb1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:28 +00:00
Scott Rifenbark
30c0c9e358 mega-manual: Fixed to include ref-manual.
this still had the "poky-ref-manual" string in it. It needed the
"ref-manual" string.

(From yocto-docs rev: f771aaa09bf439e506dc5d8573a34283a1a905fb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:27 +00:00
Scott Rifenbark
a44106a0db tools: Updated the SED file that processes links in the mega-manual.
Substituted "1.4" for "1.3".  Substituted "dev-manual" for
"poky-ref-manual".

(From yocto-docs rev: b0b92c85f402c2280312ed909f4c4b976da28c54)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:27 +00:00
Scott Rifenbark
7aa9df2972 tools: updated the .sed file that processes the links in mega-manual
Had to change 1.3 to 1.4.  Also had to change poky-ref-manual
to ref-manual.

(From yocto-docs rev: e0448415218bacc7ce6555cad47e60a2dc7fc287)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:27 +00:00
Scott Rifenbark
e8ebe60b7f Documentation: ref-manual - Updated LIC_FILES_CHKSUM example.
One of the examples used "startline" instead of "beginline".
Correction made.

(From yocto-docs rev: 1ed3ae72b0492e03b37dc2c9519cf37209a7034b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:27 +00:00
Scott Rifenbark
2855f7e92f Documentation: Removing three unwanted files.
(From yocto-docs rev: b9b69da0c1f264388481817e988b5d131a0bb804)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:26 +00:00
Scott Rifenbark
8753c6b288 Documentation: ref-manual - removing old poky-ref-manual files
Removed the old poky-ref-manuals from the new ref-manual
structure.

(From yocto-docs rev: b5db4ddea205875ed3acacb90f46efd557337e0d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:26 +00:00
Scott Rifenbark
bb8e9d0599 Documentation: poky.ent - Updated the YOCTO_DOCS_REF_URL
Changed the variable to use "ref-manual" instead of
"poky-ref-manual" to support the new folder name for the
YP Reference Manual.

(From yocto-docs rev: 9dc6ff494c6841cb4830b6932a2b5faf4645ba98)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:26 +00:00
Scott Rifenbark
5f69362227 Documentation: Makefile - Changes to support ref-manual folder
Updates to allow the reference manual to be built as
ref-manual.htm and ref-manual.pdf.

(From yocto-docs rev: 2bac348d4f4c5e7385fc4a250d1f40f070edb15b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:25 +00:00
Scott Rifenbark
ed0a240e16 documentation: Rename of poky-ref-manual folder to ref-manual.
Changing the folder that holds the YP Reference Manual to be
"ref-manual".  This will help with confustion over the manual's
intended purpose.

(From yocto-docs rev: 1106442964b5080cb0b6b3bd3af32e9407c0f7c1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:25 +00:00
Christopher Larson
af19d889ef copyleft_compliance: force the symlink creation
(From OE-Core rev: 74b82fd4cc3e5eec611800935f1c89db3bac9971)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:24 +00:00
Christopher Larson
db51e36b8e copyleft_compliance: grab the scm mirror tarballs
If the mirror tarball is available, it's a better choice for this than the
repository directory.

(From OE-Core rev: 8183962869363731acf57f2f531da737512f0f2f)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:24 +00:00
Bogdan Marinescu
d05bc20b79 git: updated to 1.8.0.2
(From OE-Core rev: 6b437bf245e21fea2a792ebc3919ef4e42b0283f)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:43:24 +00:00
Giuseppe CONDORELLI
b94fd21bbf gcc: restore FILESPATH
restore FILESPATH to previous setting because the new one doesn't allow the
normal use of FILESEXTRAPATHS_prepend in the case of append recipe.
In the current implementation, in fact, the FILESPATH is statically set into
the gcc-4.7.inc and so the base_set_filespath is not invoked to manage
extrapaths.

(From OE-Core rev: acdec40f31ecd2eecf8c173b632b8fb01ca59b3d)

Signed-off-by: Giuseppe Condorelli <giuseppe.condorelli@st.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:30:51 +00:00
Bogdan Marinescu
c7041c713f oprofile: updated to 0.9.8
(From OE-Core rev: e8150e3941a471bf7e6d375595c15d54b809b15c)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:30:50 +00:00
Bogdan Marinescu
5648fec625 tcl: updated to version 8.5.13
(From OE-Core rev: 771a8851966d256b40f49fcd4352ea2c704fd985)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:30:50 +00:00
Marcin Juszkiewicz
9277733327 nspr: added gnu-configize for AArch64 support
(From OE-Core rev: 8643c340c738bb487edad8033ebae760c65b6e35)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 14:30:50 +00:00
Marko Lindqvist
99c9cf335b libtasn1: remove help2man dependency
Remove manpage creation. It wasn't working because of help2man
missing when libtasn1 is being built. This attempt to create
manpages without help2man turns from no-op to hard error with
automake-1.13.

(From OE-Core rev: 0a9797c4c0409e26562b80f168409c3f86bc261c)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:41 +00:00
Marko Lindqvist
b3c980c1c5 bison: remove help2man dependency
Remove manpage creation. It wasn't working because of help2man
missing when bison is being built. This attempt to create
manpages without help2man turns from no-op to hard error with
automake-1.13.

(From OE-Core rev: a2f4b4437c6d542349d2027330dc16392ed131ae)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:40 +00:00
Marko Lindqvist
efcb4facc6 libtool: remove help2man dependency
Remove manpage creation. It wasn't working because of help2man
missing when libtool is being built. This attempt to create
manpages without help2man turns from no-op to hard error with
automake-1.13.
Removed prefix-manpage-fix.patch as only code it touched is being
removed by new dont-depend-on-help2man.patch

(From OE-Core rev: 51a97cfb96ee2e5eeef978678fe6acdd498b9555)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:40 +00:00
Constantin Musca
c12a97360f libgdata: remove recipe
Part of the sato trimming process

(From OE-Core rev: cff5f9494f5bbb0df00ba8733d5356d381dde14b)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:40 +00:00
Laurentiu Palcu
d036724c0d relocate_sdk.py: new interpreter string was not '\0' terminated
The problem: SDK binaries were not properly relocated when the SDK
was installed into a path that had a length less than the default one.
Apparently, there were two problems here: the padding was done wrong
(the size of one program header table entry was used instead of the
program section size) and the new padded string was not used at all.

[YOCTO #3655]

(From OE-Core rev: 3815030c5f31c11495893c1ae28d56c1aff31d97)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:40 +00:00
Enrico Scholz
1cecbacdbe util-linux: moved 'reset' into own subpackage
The 'reset' tool from util-linux is a shell script calling 'tput' which is
provided by 'ncurses'.  To avoid a 'util-linux' -> 'ncurses' dependency,
'reset' is put into an own subpackage which can be installed on demand.

Because most (all) systems are using 'busybux' which provides an
alternative 'reset' implementation, this should not cause too much
regressions.

(From OE-Core rev: 0ed77fe790a76a530b173eefaba648b1c22a4a3e)

Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:39 +00:00
Enrico Scholz
9f79f44d32 procps: initialized environment correctly (backported from classic)
Without this patch, various procps tool can create "Unknown HZ value"
messages because internal initialization happens in a wrong, random
order.

It has been applied to classic already.

(From OE-Core rev: a746cf196792d1c0646f5e97e87055e0974d753e)

Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:39 +00:00
Enrico Scholz
41a15a9af9 image.bbclass: quote TARGET_VENDOR
The buildsystem does not install locale files anymore, when
TARGET_VENDOR is empty.  This regression was introduced by
ff01518c6667e1b6e87df4e5a435a701d0f38fa7

(From OE-Core rev: 7d64232f370817c0536412589bd4ed612f214e18)

Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:39 +00:00
Marcin Juszkiewicz
1a277565b7 xserver-xorg: add AArch64 support
Launchpad bug: https://bugs.launchpad.net/linaro-aarch64/+bug/1092128

(From OE-Core rev: aa2d9049a9a0f73123bf3d7e9221552ff49dab8a)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:50:38 +00:00
Lei Yang
8ef71c065c base-files: Remove the redundant "/"
I'm working on my virt-test, when I check this file find it has
redundant "/"

(From OE-Core rev: f67c0af055b7817f1bb931c98f22f1e3b540b10f)

Signed-off-by: Lei Yang <lei.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:30 +00:00
Bogdan Marinescu
2ee93fe27e scons: updated to 2.2.0
The license file was updated with a "2012" in the "Copyright" line,
nothing else changed in the license text.

(From OE-Core rev: c8e8ab6b69082805d62193e382534ee93a21f416)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:29 +00:00
Martin Jansa
54b8096f91 perl-rdepends: be more strict in multiline comment
* fails to parse when http://patchwork.openembedded.org/patch/40997/ is used
Parsing recipes...ERROR: There is a confusing multiline, partially commented expression on line 10 of file
/OE/shr-core/openembedded-core/meta/recipes-devtools/perl/perl-rdepends_5.14.2.inc (| sed "s/\/.*\.pm: */ += /g;s/[\"\']//g;s/;.*/\"/g;s/+=
.*\(require\|use\)\> */+= \"perl-module-/g;s/CPANPLUS::.*/cpanplus/g;s/CPAN::.*/cpan/g;s/::/-/g;s/
[^+\"].*//g;s/_/-/g;s/\.pl\"$/\"/;s/\"\?\$/\"/;s/(//;" | tr [:upper:] [:lower:] \).
Please clarify whether this is all a comment or should be parsed.
ERROR: Unable to parse /OE/shr-core/openembedded-core/meta/recipes-devtools/perl/perl_5.14.2.bb: Exited with "1"
ERROR: Command execution failed: Exited with 1

(From OE-Core rev: daee2d2dc29c14a086122c04fbf97924c5dab3b8)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:29 +00:00
Marcin Juszkiewicz
dd98eeaf4c cmake: add AArch64 support
(From OE-Core rev: 73dd5842a945e119c8870929e9d71067235a9247)

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:29 +00:00
Marko Lindqvist
c2a87e8daf libxcomposite: update to upstream version 0.4.4
Compatible with automake-1.13.

(From OE-Core rev: f63704c6b4686fde437d247f41e081cfc5c1868e)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:28 +00:00
Marko Lindqvist
5df4103a6a polkit: update SRC_URI and HOMEPAGE
Author of old code.google.com homepage lists polkit under heading
'former projects'. Newer versions are available from page at
freedesktop.org. Freedesktop.org homepage also points to SRC_URI
different from what we've been using. Latest version there is 0.109,
while latest version in old SRC_URI is 0.104.

(From OE-Core rev: 36fda78f7ef80a639bf5d760a611c3f2d0327b63)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:28 +00:00
Andrei Gherzan
ab7f34dc9a directfb: Rename __no_instrument_function__ macro to avoid conflicting redefinitions
The macro was renamed to __dfb_no_instrument_function__ . This will avoid build
errors while compiling gst-plugins-bad with directfb support.

This happens because gstreamer uses this macro to pass it to __attribute__. So,
if we include directfb.h before, the gstreamer definition will end up:
__attribute__ ((__attribute__((no_instrument_function)))).

(From OE-Core rev: 3e87b2b796e2de50adcdf5ed9d777765ae8e3cee)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:28 +00:00
Marko Lindqvist
ca40915da3 prelink: update to git head
Compatible with automake-1.13.

(From OE-Core rev: 3d8f35a121d54b7a1b825b266a553752e22bf708)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 13:38:27 +00:00
Martin Jansa
6852800701 scripts/sstate-sysroot-cruft.sh: add simple script to find files in sysroots not tracked by sstate
(From OE-Core rev: 18bf0b4e14a74a91dff1a282c946cab37678b2fe)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 12:06:27 +00:00
Martin Jansa
6882eb5667 scripts/sstate-diff-machines.sh: add simple script to compare sstate checksums between MACHINEs
* takes tmpdir, machines and targets from command arguments or env variables

(From OE-Core rev: 1e4bdd6147c73547d2451705bbb874918621cbfc)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 12:06:27 +00:00
Constantin Musca
09fe48b47a sed: upgrade to 4.2.2
(From OE-Core rev: 16500f9d5fe3446511212cff14d44bce969cdea0)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 12:06:26 +00:00
Constantin Musca
3547f3e191 mutter: finalize mutter removal
Part of the sato trimming process

(From meta-yocto rev: eec00ddec7fe56a7a18b50d76c477a0ba6cd589e)

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>
2013-01-07 11:42:38 +00:00
Constantin Musca
f8e94c7552 gthumb: finalize removal
Part of the sato trimming process

(From meta-yocto rev: febbf206e8c1c6a39d6ccf327583351bf0839494)

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>
2013-01-07 11:42:38 +00:00
Otavio Salvador
a48efbf34c distro/poky: Add "Debian GNU/Linux 7.0 (wheezy)" as know distribution
(From meta-yocto rev: a2bded271ed7168737b018dc3c00ca7464394dfe)

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>
2013-01-07 11:42:38 +00:00
Emilia Ciobanu
71f2296567 Added regex file in meta-yocto/conf/distro/include.
(From meta-yocto rev: b8512a54f093ab56a03f4bc20d06552120381105)

Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:42:38 +00:00
Marko Lindqvist
b03c4188c8 icu: update to upstream version 50.1.1
This seems to fix HarfBuzz compile problems.

(From OE-Core rev: 6e1e924f882c1a5f5e5932c0952f6a2c906dd51c)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:44 +00:00
Robert P. J. Day
faf94a9d6d package.bbclass: Skip testing "packages" a second time.
Since the "packages" variable is already tested a few lines above in
the same routine:

    if len(packages) < 1:
        bb.debug(1, "No packages to build, skipping do_package")
        return

there is no point testing it again, and the error message doesn't even
refer to "packages", anyway.

(From OE-Core rev: 371fbacff47828cfff99f1152f9e269e27c474da)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:44 +00:00
Constantin Musca
2d5781ac46 vte: add missing unpackaged files
(From OE-Core rev: 791d88336fb8312041c30ea744d03d8d150d2b8f)

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>
2013-01-07 11:09:43 +00:00
Saul Wold
fe21ffd4e1 libnl: Update to 3.2.16
(From OE-Core rev: bf039ff80c2a416ddb793b676ab2940428695b3e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:43 +00:00
Noor Ahsan
e38ce33960 cairo: Adds libxext in X11DEPENDS.
* cairo was giving redefinition error of struct _XLinearGradient,
struct _XCircle and struct _XRadialGradient.
* cario now depends on libxext. Adding that dependency resolved
above errors.
* Verified it on P2020RDB.
* Bump PR.

(From OE-Core rev: 409a739dd89ea256a49c69452dc29439fc3ee64e)

Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:43 +00:00
Robert P. J. Day
d12bffc262 lib_package.bbclass: Correct comment referring to bin directories.
FILES_${PN}-bin = "${bindir}/* ${sbindir}/*"

so the comment should match that.

(From OE-Core rev: 81bc0b96a085742f7dc9e8e90bb32529efbaf920)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:42 +00:00
Marko Lindqvist
0f2614bab7 mpfr: update to upstream version 3.1.1
mpfr_fix_for_automake-1.12.patch part of upstream now.

(From OE-Core rev: 49dd3fb76c59b5baeec4820575db4e8e9c17d417)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:42 +00:00
Christopher Larson
35f0d0a84a chkconfig-alternatives-native-1.3.59: add recipe
This only builds alternatives, so avoids the libnewt and libpopt dependencies.

This uses 1.3.59 sources from git, with a couple commits of mine to add
--sysroot (and OPKG_OFFLINE_ROOT) support.

LIC_FILES_CHKSUM changed from 1.3.58 to 1.3.59, but only due to minor
formatting differences, not content/terms.

(From OE-Core rev: 7895540e02a563c107934572fdbf23fdf1661c91)

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>
2013-01-07 11:09:42 +00:00
Christopher Larson
eb91689e33 chkconfig: package the update-alternatives implementation
(From OE-Core rev: c18b1ce2d98460e5ee6ec6319071bc1fa1016ede)

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>
2013-01-07 11:09:42 +00:00
Christopher Larson
6c7ab511ca chkconfig: obey sysconfdir, base_libdir
(From OE-Core rev: afd9f47080b36d609297e2eb448bc12af8000d29)

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>
2013-01-07 11:09:41 +00:00
Christopher Larson
a045d23345 chkconfig: don't inherit autotools
This buildsystem is not autoconf/automake, but make.

While we're at it, also make the install not hardcode the path to
/usr/share/locale.

(From OE-Core rev: 0e6f76d9d5929f8c23916827dccc8389419f0163)

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>
2013-01-07 11:09:41 +00:00
Christopher Larson
925ffcbf1e opkg-native: obey virtual/update-alternatives-native
(From OE-Core rev: 1f9d979ca60eca2277f53f24dc59f9ab18e81195)

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>
2013-01-07 11:09:41 +00:00
Christopher Larson
7f8eedaa86 update-alternatives.bbclass: use absolute paths for link targets
This improves compatibility, as both the debian update-alternatives and the
chkconfig alternatives require absolute paths.

(From OE-Core rev: 2b8bf64f1f6999b65ddd3efc2c6ddb7e70fead53)

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>
2013-01-07 11:09:40 +00:00
Chen Qi
14649c0035 init-live.sh: avoid duplicate mount points for the same filesystem
A live system had duplicate mount points for the same filesystem
in the output of 'mount' command. That was because we didn't handle
the temporary mounts properly before switch_root.

This patch fixes this problem by moving the mount points of some
filesystems to the corresponding directories in the real root filesystem.

[YOCTO #3155]

(From OE-Core rev: 050a745413f8bb26212b84da391e0f7665f77728)

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>
2013-01-07 11:09:40 +00:00
Marko Lindqvist
9f5e0b8fec gmp: update to upstream version 5.1.0
New version of configure.patch added for gmp-5.1.0. Old patch
moved to gmp-4.2.1 specific directory.
gmp_fix_for_automake-1.12.patch part of upstŕeam so removed
gmp-5 version, gmp-4.2.1 version remains.

(From OE-Core rev: ebd56f6a12c55982467b34b9c4feae03358738fe)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:40 +00:00
Marko Lindqvist
60284f0ac8 gmp: update SRC_URI and HOMEPAGE
Fetch from gmplib.org instead of gnu mirror.
List gmplib.org as homepage instead of old broken URL.

(From OE-Core rev: 64dbe42e45fb5b02c7b06bcf40ae93aa37704ce4)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:40 +00:00
Constantin Musca
102c97b1c2 pcmanfm: upgrade to 1.1.0
pcmanfm_fix_for_automake_1.12.patch: removed
- problem not reprodicible anymore

owl-window-menu.patch: removed
- not needed anymore

(From OE-Core rev: 14fb53c398d7ce5d33c221655643ec51c3a92a6f)

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>
2013-01-07 11:09:39 +00:00
Constantin Musca
f6f5382afa libfm: upgrade to 1.1.0
libfm_fix_for_automake-1.12.patch: removed
- problem not reprodicible anymore

configure_fix.patch: removed
- not used

fix-make-parallelism-issue.patch: added
- assures that the ${includedir}/libfm symlink
is created

(From OE-Core rev: 013d96a601bfb9cc8a2ad51f456e0201666d7bc3)

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>
2013-01-07 11:09:39 +00:00
Marko Lindqvist
f6da046ac8 automake: update to upstream version 1.12.6
python-libdir.patch and py-compile-only-optimized-byte-code.patch
updated to apply to new codebase.

(From OE-Core rev: f2a530be5941ddf708720b920d0213d7d3928cd1)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:39 +00:00
Martin Jansa
5ffe7a216c kernel.bbclass: include PE in KERNEL_IMAGE_BASE_NAME
* without this you it's harder to see which kernel is newer version
  e.g. after branch change LOCALCOUNT in SRCPV is reset to 0, so it needs PE bump for upgrade path
  but then it's clear why gitr1+HASH has newer DATETIME then gitrN+HASH, so include PE in name
* it will sort alphabetically wrong in deploy dir for a while until old images are removed

(From OE-Core rev: 3b5fe6d2cd58b5db70c3d319ffc66b1cbff1f43a)

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>
2013-01-07 11:09:38 +00:00
Constantin Musca
296617d205 rpm: replace /usr/lib with ${libdir}
Fix the following warning:
WARNING: QA Issue: rpm: Files/directories were installed but not shipped
  /usr/lib64/rpm/bin/api-sanity-checker.pl

(From OE-Core rev: 625c93784940c0dcda4570258acf2183af7ec5f8)

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>
2013-01-07 11:09:38 +00:00
Constantin Musca
6870465851 sysstat: fix sa_lib_dir
Fix the following warning:
WARNING: QA Issue: sysstat: Files/directories were installed but not shipped
  /usr/lib
  /usr/lib/sa
  /usr/lib/sa/sadc
  /usr/lib/sa/sa2
  /usr/lib/sa/sa1
  /usr/lib/sa/.debug
  /usr/lib/sa/.debug/sadc

(From OE-Core rev: 0da1e769a57c96299dce93b34ec67c2809da8998)

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>
2013-01-07 11:09:38 +00:00
Constantin Musca
f92d88d9c2 eglibc-locale: enable multilib
(From OE-Core rev: e5890474ea6ae44f16e66795aa8e3274ec576aa7)

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>
2013-01-07 11:09:38 +00:00
Constantin Musca
94516ced8d package.bbclass: don't prepend MLPREFIX to LOCALEBASEPN
- all the recipes that overwrite LOCALEBASEPN must consider
also the MLPREFIX
- if the LOCALEBASEPN variable is not overwritten then it will
have the correct prefix (LOCALEBASEPN ??= "${PN}")

(From OE-Core rev: 855d64a3091c5358e2e1a7f4247929515b068708)

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>
2013-01-07 11:09:37 +00:00
Constantin Musca
785512a306 libpam: enable multilib
Fix the following warning:
WARNING: QA Issue: lib32-libpam: Files/directories were installed but not shipped
  /usr/sbin/unix_chkpwd
  /usr/sbin/pam_tally2
  /usr/sbin/mkhomedir_helper
  /usr/sbin/unix_update
  /usr/sbin/pam_timestamp_check
  /usr/sbin/pam_tally

(From OE-Core rev: 1dbb0bc048ceaf4cd2879362ae4a0f1398809349)

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>
2013-01-07 11:09:37 +00:00
Kang Kai
4601eb90f5 perl: update dependency creating script
Base on dependency create script provided by Saul, I update it with:
1 remove document strings in perl module files that may import fake
  dependencies.

2 not all the 'use' or 'require' clauses start at the begin of line, and
  some of them don't end with ';', such as:

use vars qw(
            $AUTOLOAD
	    ...

3 filter some strings that they are not real dependencies: some of them
  are wrong result of script, some are conditional use/require, and some
  are cpan extra modules that we don't need.

(From OE-Core rev: 35291c97edc05756788d206457c56dcc41edb637)

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>
2013-01-07 11:09:37 +00:00
Kang Kai
dd65b82d24 perl: update RPROVIDES and popuate_package script
File warnings/register.pm has been moved to package perl, update
RPROVIDES_perl to provides perl-module-warnings-register for backward
compatibility.

Update populate_package script for:
1 Way to deal directory 'Module/' is not right, it creates packages
  whose names end with '-pm'. Update to drop these packages.
2 Deal directory 'auto/' to put same name module file(.pm) and library
  file(.so) into one package. That because .pm file requires the same
  name .so file at runtime.

[Part of Yocto 3338]

(From OE-Core rev: e8e03deb1eb8fbbf297ad4b07f7e1642102ae308)

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>
2013-01-07 11:09:36 +00:00
Kang Kai
61583fe11f perl: add sub-package perl-tests
In perl source code, run "make test" will run perl test cases. Put these
cases into a seprated sub-package then we can run the perl test on
target.

Add following module to nonxs_ext to install extra modules that required
by perl test cases:
CPAN/Meta CPAN/Meta/YAML Dumpvalue Env File/CheckTree HTTP/Tiny I18N/Collate
JSON/PP Perl/OSType Version/Requirements

Commands to run test:
cd /opt/perl-tests/t && ./TEST

[Yocto 3296]

(From OE-Core rev: 96fb96ddd00881947875518df832fa74faec8a45)

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>
2013-01-07 11:09:36 +00:00
Kang Kai
52c6393375 autoconf: update RDEDENDS
The only file Glob.so provided by perl-module-file will be moved to
package perl-module-file-glob. So remove perl-module-file from RDEDENDS.

(From OE-Core rev: c76ae248334606d10ab730b1b2e9f626ff3c5809)

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>
2013-01-07 11:09:36 +00:00
David Nyström
b03f4b7051 Added ability to parse python sources to create-recipe
Hi,

Added python source parsing abilities to create-recipe.

(From OE-Core rev: 417357cbcd3ecc7a2e43f87c618c8fdfe04a9d33)

Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:35 +00:00
Laurentiu Palcu
5d8a2e82e8 pango: have postinstalls run at do_rootfs time
Since pango-native is built anyway and all the modules are in the native
sysroot, create the cache file by scanning those files instead of the
target files. The latter will fail because the shared objects wouldn't
be from the same ELF class.

[YOCTO #3600]

(From OE-Core rev: 75334cbee1f064b38f167269917e333989802e7d)

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>
2013-01-07 11:09:35 +00:00
Eren Türkay
09359e6ec0 freetype: update to 2.4.11 which includes fixes for CVE-2012-{5668, 5669, 5670}
Multiple security issues were reported by Mateusz Jurczyk of Google
security team. These have been fixed in freetype 2.4.11. Details are as
follows.

* CVE-2012-5668: NULL Pointer Dereference in bdf_free_font
Bug: https://savannah.nongnu.org/bugs/?37905
Patch:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=9b6b5754b57c12b820e01305eb69b8863a161e5a

* CVE-2012-5669: Out-of-bounds read in _bdf_parse_glyphs
Bug: https://savannah.nongnu.org/bugs/?37906
Patch:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=07bdb6e289c7954e2a533039dc93c1c136099d2d

* CVE-2012-5670: Out-of-bounds write in _bdf_parse_glyphs
Bug: https://savannah.nongnu.org/bugs/?37907
Patch:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=7f2e4f4f553f6836be7683f66226afac3fa979b8

For original e-mail and CVE assignment, see the following URLs:

http://www.openwall.com/lists/oss-security/2012/12/25/1
http://www.openwall.com/lists/oss-security/2012/12/25/2

(From OE-Core rev: b693f6d3d48b281fbbf71fd56996c85e23c3a9c9)

Signed-off-by: Eren Türkay <eren@hambedded.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:27 +00:00
Martin Jansa
4b5705c426 webkit-gtk: fix build with bison-2.6+
* bison was upgraded to 2.7 in oe-core

(From OE-Core rev: f116dc32240e2f2d3c6e9bc8bc3320862f5116d3)

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-12-31 09:43:26 +00:00
Saul Wold
5c0e6603fd iproute2: DEPENDS on iptables
Make sure iproute rebuilds when iptables is updated

(From OE-Core rev: 50b37d4bd90e22c6d129836f896c4a6de66c003f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:26 +00:00
Marko Lindqvist
c8bc7a75ce sqlite: update to upstream version 3.7.15.1
(From OE-Core rev: 936e45390d5eb46ebb04d27559e5dd5bf41b8fb5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:26 +00:00
Marko Lindqvist
1cfb12babc curl: update to upstream version 7.28.1
(From OE-Core rev: 2cb1285195439faa48571acc5346d25b4de214b4)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:26 +00:00
Martin Jansa
b7515e25bf xf86-video-omap: skip package if opengl isn't in DISTRO_FEATURES
(From OE-Core rev: 4c2434271cfc41e910969266ced9e5f06ee0c732)

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-12-31 09:43:25 +00:00
Constantin Musca
83e81485aa xorg-driver: enable multilib
[YOCTO #3438]

(From OE-Core rev: 87be2314fe0e67a616b4f713106b4ae46931f5cb)

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-12-31 09:43:25 +00:00
Constantin Musca
5be92d4f06 xserver-xorg: enable multilib
[YOCTO #3438]

(From OE-Core rev: 4c49e76b793bd80422d7b9566d218ca7d087905b)

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-12-31 09:43:25 +00:00
Constantin Musca
1674541ed8 multilib: fix allarch/kernel/module-base multilib issues
- skip the non-packagegroup allarch recipes in multilib_virtclass_handler
- extend PROVIDES/RPROVIDES for allarch recipes which are not packagegroups
- use variants from MULTILIB_GLOBAL_VARIANTS (lib32 lib64 libx32) to create
additional pkgdata files for multilib allarch: ${pkgdatadir}/${variant}-${PN}
and ${pkgdatadir}/runtime/${variant}-${pkg}
- use variants from MULTILIB_VARIANTS to create additional pkgdata files
for multilib kernel/module-base recipes
- add a sanity check to determine if the current multilib is in
MULTILIB_GLOBAL_VARIANTS

[YOCTO #2918]
[YOCTO #3440]
[YOCTO #3565]
[YOCTO #3568]

(From OE-Core rev: bc4da2573dfb59ea2fc4af359701818df20f7663)

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-12-31 09:43:25 +00:00
Ting Liu
415c4fa12c eglibc: run libm-err-tab.pl with specific dirs in ${S}
libm-err-tab.pl will parse all the files named "libm-test-ulps"
in the given dir recursively. To avoid parsing the one in
${S}/.pc/ (it does exist after eglibc adds aarch64 support,
${S}/.pc/aarch64-0001-glibc-fsf-v1-eaf6f205.patch/ports/sysdeps/
aarch64/libm-test-ulps), run libm-err-tab.pl with specific dirs
in ${S}.

(From OE-Core rev: ca055169789b399e8a581350fecb58e21094fbf0)

Signed-off-by: Ting Liu <b28495@freescale.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:24 +00:00
Roy.Li
9a1c99916b replace portmap with rpcbind.
Rpcbind has more features, like ipv6 support and nfs4 support;
Redhat, Fedora, debian, Ubuntu are using rpcbind by default.

(From OE-Core rev: 86ec57e2837465954f51fc55fce990b5ec6b1063)

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-12-31 09:43:24 +00:00
Constantin Musca
7f221da2a3 libcroco: fix license
src/cr-rgb.c: adjust the license endline
- the license part ends at line #22

(From OE-Core rev: 38d6aacea5384cfea71d421e4404852dd01b9077)

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-12-31 09:43:23 +00:00
Constantin Musca
9fc0588ad4 shared-mime-info: upgrade to 1.0
parallelmake.patch: adapt to the new version

(From OE-Core rev: 07b0425a937cc36874909a47daa4def92d0bfe82)

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-12-31 09:43:23 +00:00
Constantin Musca
645ccbb0b7 metacity: upgrade to 2.34.13
crosscompile.patch: removed
- schema_bindings binary not generated anymore

remove-yelp-help-rules-var.patch: added
- YELP_HELP_RULES var is not used

[Other changes]
- the 2.34.13 version requires the gsettings-desktop-schemas
(add it to DEPENDS)

(From OE-Core rev: 3c6262dd270a7c2f709c84335501b345f2b47d38)

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-12-31 09:43:23 +00:00
Constantin Musca
996be05cdc menu-cache: upgrade to 0.4.1
License checksum change due to:
    libmenu-cache/menu-cache.h: code (not license) change

(From OE-Core rev: 1cc6a3cfd065392a494f41c2ff4828ef14e72a4c)

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-12-31 09:43:23 +00:00
Constantin Musca
c31a72a0ff matchbox-panel-2: fix PV
(From OE-Core rev: bd0aefde3243785e48740539033a13d443d6bb14)

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-12-31 09:43:22 +00:00
Constantin Musca
db1efda53e libuser: upgrade to 0.58
License checksum modification due to:
    COPYING: Free Software Fondation address change
    lib/user.h: Free Software Fondation address change
    samples/testuser.c: Free Software Fondation address change

(From OE-Core rev: a617608309228a6237c45ad0ade5906c5ac30bfe)

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-12-31 09:43:22 +00:00
Constantin Musca
28dbb928ca libsoup-2.4: upgrade to 2.40.2
(From OE-Core rev: 98b9c77ff21b8bc09d90432c115b100f8423112b)

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-12-31 09:43:22 +00:00
Constantin Musca
283c7b8553 libcroco: upgrade to 0.6.8
License checksum modification due to:
    src/cr-rgb.c: code (not license)  change

croco.patch: removed
    - it doesn't apply anymore
    - not needed anymore

libcroco_fix_for_automake-1.12.patch: removed
    - problem not reprodicible anymore

(From OE-Core rev: c672f27f8f121df9083db28d3fc1d3f3071a1b37)

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-12-31 09:43:21 +00:00
Constantin Musca
ce2414a557 json-glib: upgrade to 0.15.2
(From OE-Core rev: 64ae2d819c036ef5faebbbee14c41cd548f70ec7)

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-12-31 09:43:21 +00:00
Constantin Musca
adaf352573 gthumb: remove recipe
Part of the sato trimming process

(From OE-Core rev: a328741eff50cf00d1553a915fc81af41400a5fc)

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-12-31 09:43:21 +00:00
Constantin Musca
b48d38c20c gsettings-desktop-schemas: add recipe
- this is needed by metacity 2.34.13

(From OE-Core rev: 59d7b8b3bdef47c1ad45fc404b1b169b5f2980b7)

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-12-31 09:43:20 +00:00
Constantin Musca
4233009527 gnome-doc-utils: upgrade to 0.20.10
sysrooted-pkg-config.patch: adapt to the new version
use-usr-bin-env-for-python-in-xml2po.patch: adapt to the new version
xsltproc_nonet.patch: adapt to the new version

(From OE-Core rev: f801dbb0af3ac01e2c8b53600c7a37aa82b08343)

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-12-31 09:43:20 +00:00
Constantin Musca
ee00527ffc ethtool: upgrade to 3.7
(From OE-Core rev: 804698db74bd03157b5084433186c5f592080bdf)

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-12-31 09:43:20 +00:00
Martin Jansa
4a36a32567 libpng: fix packaging
* PN-LIBV is not needed, was used to package libpng12 from libpng3 build
  now only libpng15 is built.
* if you're not using OEBasicHash + PRserv you need to rebuild and
  reinstall a lot of packages to upgrade to libpng-1.5 correctly

(From OE-Core rev: 69bbce0176183b0dc14eda21e4f6b601443060f0)

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-12-26 11:34:09 +00:00
Martin Jansa
9dc384ddfb gtk-icon-cache: don't call gtk-update-icon-cache on files
* check if icondir is directory before calling gtk-update-icon-cache, like all other calls do
* fixes:
  | > Executing update_icon_cache
  | + chmod +x update_icon_cache
  | + ./update_icon_cache
  | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/enjoy.png/.icon-theme.cache : Not a directory
  | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/monav.png/.icon-theme.cache : Not a directory
  | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/orrery.png/.icon-theme.cache : Not a directory

(From OE-Core rev: 6c2962dc117304c542fd5458b39524ecdb81cae9)

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-12-26 11:34:09 +00:00
Bogdan Marinescu
36f8380773 subversion: updated to 1.7.8
(From OE-Core rev: 93048f1b3d7c1613e96b772f154336e5902228e4)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:09 +00:00
Bogdan Marinescu
26b486f4b0 rpm: remove declaration of "sykcparse"
This is needed so rpm compiles with the latest update of bison
(2.7), otherwise compilations ends with a "function already declared"
error.

(From OE-Core rev: 6563a2a5ff7626177ea2cc68eda96e0caf2d320f)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:09 +00:00
Bogdan Marinescu
26dfd24037 nasm: upgraded to 2.10.06
(From OE-Core rev: af62834005bfc96fac57aaca5d455064f8ba45f6)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:08 +00:00
Constantin Musca
216bceccf7 libmusicbrainz: upgrade to git SRCREV 0749dd0a35b4a543
include/musicbrainz3/includes.h: removed from LIC_FILES_CHKSUM
    - the file is not present in the new version
fix_build_issue_for_gcc_4.5.0.patch: removed
    - the patched files are removed

[Other changes]
- moved to git (the last tag version doesn't support cross-compilation)
- we need to build the native make-c-interface executable before
configuring cmake for the target

(From OE-Core rev: a9d25a8e6720ceff5cfefa3191026357dd6e0f49)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:08 +00:00
Cristian Iorga
aa90e6090d iptables: upgrade to v1.4.16.3
(From OE-Core rev: 88869fc442c9387f70a408b64f874a947909f0d5)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:08 +00:00
Trevor Woerner
ae84362fcc runqemu: change terminal's INTR key in 'serial' mode
If you are using an image in '-serial stdio' mode, temporarily change the
terminal's interrupt character to 'Ctrl-]' for the duration of the image
run. In this way, hitting 'Ctrl-C' for something running in the image
doesn't accidentally abort the entire qemu session.

(From OE-Core rev: 642cfaac0cb515008cfc91aafe04ab1db7a51581)

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:07 +00:00
Bogdan Marinescu
4491154b21 bison: update to 2.7
Tested on core-image-minimal (qemux86).

(From OE-Core rev: 23c8bc7ba15c8c0fcfa1d46fd43e70883e21ab86)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:07 +00:00
Fahad Usman
7d450fb74a cml1: set and export TERMINFO, to handle ncurses-native relocation
ncurses library looks at the compiled-in search path for the terminfo
database, and that path no longer exists, when using cached binaries (sstate).
Export TERMINFO pointing at the current sysroot, so the attempt to run mconf
is able to find the correct terminfo db.

(From OE-Core rev: b036adfb868c042245cd8fba8ecc2ba53169bfea)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
0cae284f294e3a2c99d9a4d79c95c25103cd8f8b

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:07 +00:00
Kang Kai
845c2c0bd5 oprofile: use dynamic root home directory
Use stub "ROOTHOME" to replace "/home/root" in oprofile-root.patch, then
we can substitute it with configured root home directory.

(From OE-Core rev: 584fc5abe4ea08a92eff691af42300b5a26d2755)

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-12-26 11:34:07 +00:00
Kang Kai
2af073af00 base-passwd: use configurable root home directory
Use configurable variable ROOT_HOME as root home directory.
Drop root-home.patch because it is not needed any more.

(From OE-Core rev: b5d84482b2762dca0660eb908bcc52aae278d00d)

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-12-26 11:34:06 +00:00
Kang Kai
07b842ff05 base-files: use dynamic root home directory
Use var ROOT_HOME to configure root home directory dynamically.

(From OE-Core rev: 341da5b6e46e0884d60e9462d1306d525fa99b94)

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-12-26 11:34:06 +00:00
Kang Kai
de5b44a740 bitbake.conf: import var ROOT_HOME
Import var ROOT_HOME to configure root home directory dynamically.

[Yocto 2683]

(From OE-Core rev: a78cd0b3a69b829327cea035321051ab11cba70f)

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-12-26 11:34:06 +00:00
Muhammad Shakeel
1d55450664 wireless-tools: Remove QA warning: No GNU_HASH in the elf binary
Handle LDFLAGS properly in the Makefile to remove warning:
QA Issue: No GNU_HASH in the elf binary

(From OE-Core rev: 32d5a2951338d838ed41b34b6b507c9b68e98fb2)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:06 +00:00
Fahad Usman
716578c677 blktrace: essentially rework the recipe, obey LDFLAGS
(From OE-Core rev: 8d5fa8f26e4cc366ac566d3682bd74eb4578cc6d)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
aed463414e2e2bf8ca44ba54ee5973e7ed599e57

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:06 +00:00
Noor Ahsan
9d985e9547 freetype: Update EXTRA_OECONF to use host gcc.
* It uses host gcc in its configure script. When IA32
toolchain is installed it starts using its binaries instead
of native gcc. Modified EXTRA_OECONF so that host gcc is used.

(From OE-Core rev: 23e6431687a5602a7e579c546a69008954f64620)

Signed-off-by: Noor Ahsa <noor_ahsan@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:06 +00:00
Björn Stenberg
f83ff491b4 Add ptest for bash.
(From OE-Core rev: 71e07ce8d1e4c2a50e937f0c819f025afd4677cb)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:05 +00:00
Björn Stenberg
0c7da2f146 Add ptest for dbus.
This patch adds a new recipe dbus-test to build and package the dbus test
suite. The reason for a separate recipe is that the dbus test suite depends
on dbus-glib, so it cannot be compiled at the same time as dbus.

(From OE-Core rev: 280e79adea4536b264a526072406d605d0822e7d)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:05 +00:00
Björn Stenberg
ddce381e78 Add ptest for glib.
(From OE-Core rev: dec6f912d68f52748f645b6af411f189cf464f85)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:05 +00:00
Björn Stenberg
daad0d8dda New package: ptest-runner
This package contains a simple shell script which searches for all installed
ptests on the rootfs and runs each test in sequence.

(From OE-Core rev: da25002a0968c12f16719f9fed21c76b9321aeb5)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:04 +00:00
Björn Stenberg
1d2c6833ae Add a new distro feature "ptest".
This patch creates a new distro feature "ptest", which creates -ptest
packages containing the test suite of the package for running on the
target. Test files are installed in /usr/lib/<pkg>/ptest.

The patch also includes a change to automake, splitting the "make check"
target into separate steps for building and running the tests.

(From OE-Core rev: 6f92e7f8891008dd3c89325d3fbe2da853372326)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:04 +00:00
Ross Burton
627e745d7b python: add -crypt as a dependency on -math
random.py imports hashlib, so add this missing dependency.

(From OE-Core rev: c5b11835b478871210fdd5c98db3b75f51fb80cd)

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-12-26 11:34:04 +00:00
Andrei Dinu
5cf8c95e60 telepathy-glib upgrade to 0.20.1
upgrade from 0.19.8 to 0.20.1

(From OE-Core rev: e3a981809bf0c9b93b2025bba42fc1b17e374c8c)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:03 +00:00
Cristian Iorga
ff877a2236 ofono: upgrade to 1.12
(From OE-Core rev: d762757883225d62cfc33fef79d21939e4337669)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:03 +00:00
Björn Stenberg
3c77b8c19a Fix typo in kvm capability detection in runqemu
(From OE-Core rev: 7db394c4021f57b6bfc5cbad3fb2bd4903527758)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-26 11:34:03 +00:00
Marcin Juszkiewicz
abf0ad8102 slang: added gnu-configize for AArch64 support
(From OE-Core rev: 807aa2079c5884b6bd1afb705c31090c87d14dc5)

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-12-26 11:34:03 +00:00
Mark Hatle
90c0eb29f0 rootfs_rpm.bbclass: remove debug code
Debugging code was accidently left in the previous commit.  Remove
the code as it prevents multiple concurrent bitbake builds.

(From OE-Core rev: bbd55cc34ca893c7202634fe138cedb2f380be56)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 21:43:55 +00:00
Tom Zanussi
957e090cac cmake-native: add checksums
commit 771d08 (cmake: Update to 2.8.10.2) removed the checksums from
cmake.inc, and added them to cmake, but forgot to add them to
cmake-native - this adds them.

(From OE-Core rev: ec096d256d8cfb3146d4b2943387ce18ca05df6e)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 21:40:05 +00:00
Saul Wold
80bc9a0643 icu: reduce what's needed for cross tools
The ICU Update copied to complete source tree over, it only
needed a couple of binaries and libraries, so only copy those.

(From OE-Core rev: 12a4d6e1143f94b53ead67ec75103505fdb110fd)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:08 +00:00
Saul Wold
6d0508a0d0 lsbinitscripts: Don't compile
Only functions macros is installed, so no need to configure or compile

[YOCTO #3584]

(From OE-Core rev: fff3164c4b6a8c4ffa07bc6a26162c9e99c2531e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:08 +00:00
Ming Liu
4392663569 initscripts/urandom: create directory before staging into it
/etc/init.d/urandom fails to start/stop because it tries to save
random-seed into /var/lib/urandom folder which does not exist in the
file system.

Fixed by creating /var/lib/urandom at do_install time.

[YOCTO #3518]
[ CQID: WIND00384168 ]

(From OE-Core rev: 42e37058e06c76c6782d5371d4a60d260f00fa20)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:08 +00:00
Saul Wold
681bfd4fe3 neon: added --disable-gssapi
This is to ensure determinism as it checks the host for krb5
and can change if a host has krb5, this disables the check

[YOCTO #3499]

(From OE-Core rev: 17a86da4f6349aea9508c3bbf5ee179e5da726a6)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:07 +00:00
Marko Lindqvist
da89b4c3ed libpng: update to upstream version 1.5.13
Updating from 1.2.x means also change in actual library name
from libpng12 to libpng15, and slight changes in API.

License md5sums differ only because of license text formatting
changes and because they contain version numbers and release dates.

(From OE-Core rev: 317cbe5f5d4bf9366657a0d5383108c1b3340a8a)

Signed-off-by: Marko Lindqvist <cazfi74-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:07 +00:00
Saul Wold
756d84ad64 lsbinitscripts: update to 9.43
(From OE-Core rev: a4a82b2ad55e2671cd1068727058754fe417f4f0)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:07 +00:00
Saul Wold
690265b3e6 dpkg: Update to 1.16.9
(From OE-Core rev: b77fe2203641cb2167efdf5c924c44a782d163f7)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:06 +00:00
Saul Wold
771d0877d6 cmake: Update to 2.8.10.2
(From OE-Core rev: 4a407b927cca97c11f3211b384db920c17dd0c64)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:06 +00:00
Saul Wold
02491b4ede cups: Update to 1.6.1
License change was due to update of Date.

Remove CVE patches as they where backports from this release

(From OE-Core rev: 9524c0ed85592c87ff30b54ca705b5d1b447eb6f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:05 +00:00
Saul Wold
abbb4e178a less: Update to 457
(From OE-Core rev: 8b4b9c1329c4bfd265ad4962aa61f5e61e10d1e7)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:05 +00:00
Saul Wold
2d96820389 gconf: Update to 3.2.5
Removed patch as it was incorporated in new version

(From OE-Core rev: 5b671669e461a0f61ae178cb1ee2102fdedc13dc)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:04 +00:00
Saul Wold
32b7b30323 nspr: Update to 4.9.4
Updated LICENSE to MPL-2.0 and adjusted CHKSUM accordingly

(From OE-Core rev: 3d535ac34b356d40576553a20f2ce04fd527350d)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:04 +00:00
Saul Wold
d0505b7c01 man: Update to 1.6g
Rebase some patches

(From OE-Core rev: 4cb22ea0beb952a5d70f83aaac415b7f2ecf3fd5)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:03 +00:00
Saul Wold
3cdf7e2001 sqlite: Update to 3.7.15.0
(From OE-Core rev: a7fe871f7d5c1ac595df7a0e202f0e5d1fb76f03)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:02 +00:00
Alexandru DAMIAN
ed5d870c70 init-live: default to initrd shell if image isn't found
Adds "debugshell" command line parameter for live/install images.

If the init live fails to find and mount a root-fs image,
dumps to a shell after timeout so that the developer can figure
what's wrong.

Timeout defaults to 30 seconds, but it can be changed as param
argument.

Prior art in Ubuntu. Also, leaving a system stale isn't good form.

(From OE-Core rev: 6f99e530822ac32f32615590e22a9758ac210e84)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:02 +00:00
Laurentiu Palcu
ccc394e7c6 matchbox-session-sato: use a proper schema file
Also, inheriting gconf.bbclass will allow for the schema registration to
be done at do_rootfs time.

[YOCTO #3603]

(From OE-Core rev: a19592b684d482a7c011495f1c761f38c316319a)

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-12-19 17:55:02 +00:00
Marcin Juszkiewicz
bb0a66cc7e xinetd: added gnu-configize for AArch64 support
(From OE-Core rev: 35ecd1e61ff6b3b338f413d942eabb247b815a0f)

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-12-19 17:55:01 +00:00
Marcin Juszkiewicz
9642794ab4 net-tools: disable Token Ring and Strip support - both got removed in 3.7 kernel
(From OE-Core rev: d884974bf767cc35e3383fddcae219c8ccae6846)

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-12-19 17:55:01 +00:00
Khem Raj
e1269dd6d4 gcc-cross-canadian.inc: Add dependency on cross-gcc
gcc-cross-canadian uses cross compiler during libgcc build
when building from sstate the build failed when building
gcc-cross-canadian since it did not populate gcc-cross
therefore add an explicit dependency on virtual/${TARGET_PREFIX}gcc
to make sure that gcc-cross is available before building
gcc-cross-canadian

(From OE-Core rev: d9b7478e41e3065d01aa45d8d70fae2fc5ff6066)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
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-12-19 17:55:01 +00:00
Bogdan Marinescu
9ed113a1a8 python-smartpm: improve error reporting
Add code to check proper command line arguments for various
smart commands. Exit with error if erroneous/additional arguments
are given in the command line.

(From OE-Core rev: c29d9f8d61d45318d07ed6ccab7a3ec6d1c27037)

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:01 +00:00
Mark Hatle
1874c8d7e2 package_rpm.bbclass: Refactor the attempt only install
Smart does not have a method to perform an install, but ignore failures.

There was a class of failures that stopped Smart from processing
attemptonly installs.  To work around this we need to iterate over the to
be attempted list.

(From OE-Core rev: 7c11ab93242ad3453b730da79a641479de588227)

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-12-19 17:55:00 +00:00
Paul Eggleton
84a5c63a57 classes/image: handle multilibs in complementary package lookup
For multilib the vendor string is altered, so we need to iterate over
all of the multilib vendors when we do the glob processing for
complementary packages.

(From OE-Core rev: ff01518c6667e1b6e87df4e5a435a701d0f38fa7)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>

In addition, the RPM package arch have been munged by adding the multilib
identifier.  This identifier needs to be stripped when generating the
installed_packages list for the complementary lookup code to work.

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-12-19 17:55:00 +00:00
Ciprian Ciubotariu
caaabe6510 packagegroup-base: use virtual runtime instead of keymap
This makes it consistent with packagegroup-core-base, and also avoids
unneeded dependencies towards sysvinit packages.

(From OE-Core rev: 33da18920c4ff2aaa10c81514df16d1ce6ccaecb)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:00 +00:00
Johan Hovold
632fefd108 udev: fix failed /dev/shm mount
Since commit commit fbec192f6bc4 ("udev: Ensure tmpfs are mounted and
volatile/run exists") all tmpfs-entries in fstab are mounted before udev
starts using mount -a. If /dev/shm is among those entries, that mount
will fail as the mount point has not yet been created:

   Starting udev
   mount: mounting tmpfs on /dev/shm failed: No such file or directory
   udevd[474]: starting version 182

Fix by restoring the old way of mounting /dev and mounting the
remaining tmpfs-entries only after /dev/shm has been created.

Also make sure that any errors are supressed for these tmpfs-mounts.
Should any mount point not yet be present, that mount will be retried
later during the boot process.

(From OE-Core rev: f2ce905a92a2b5ff0a434249dc8468e3ee36aa63)

Signed-off-by: Johan Hovold <johan.hovold@lundinova.se>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:55:00 +00:00
Constantin Musca
07ac3e1537 psplash: enable multilib
[YOCTO #3438]

(From OE-Core rev: e1df16187f809c4a47480dc7ff6882f06624dedb)

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-12-19 17:54:59 +00:00
Constantin Musca
f144a9744d polkit: fix multilib packaging issue
- use BPN instead of PN (PN includes MLPREFIX)
- fix the following warning:
WARNING: QA Issue: lib32-polkit: Files/directories were installed but not shipped
  /usr/share/polkit-1
  /usr/share/polkit-1/actions
  /usr/share/polkit-1/actions/org.freedesktop.policykit.policy
  /usr/share/polkit-1/actions/org.freedesktop.policykit.examples.pkexec.policy
  /usr/lib/polkit-1
  /usr/lib/polkit-1/extensions
  /usr/lib/polkit-1/extensions/libnullbackend.so
  /usr/lib/polkit-1/extensions/libnullbackend.a
  /usr/lib/polkit-1/extensions/libnullbackend.la
  /usr/lib/polkit-1/extensions/.debug
  /usr/lib/polkit-1/extensions/.debug/libnullbackend.so

[YOCTO #3438]

(From OE-Core rev: 49ef0b13e826c04adc8d4411eea87bdd60344a96)

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-12-19 17:54:59 +00:00
Constantin Musca
984d908c70 bluez: set correct udevdir
fix-udev-paths.patch: add udevdir/udevrulesdir options

Fix the following warning:
WARNING: QA Issue: bluez4: Files/directories were installed but not shipped
  /lib/udev/hid2hci
  /lib/udev/.debug
  /lib/udev/.debug/hid2hci

[YOCTO #3438]

(From OE-Core rev: 9e6cb6326ab688046a712e08fd073efb010db451)

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-12-19 17:54:59 +00:00
Constantin Musca
a1a48b839c pcmciautils: set correct udevdir and add missing debug files
Fix the following warning:
WARNING: QA Issue: pcmciautils: Files/directories were installed but not shipped
  /usr/lib
  /usr/lib/udev
  /usr/lib/udev/pcmcia-socket-startup
  /usr/lib/udev/pcmcia-check-broken-cis
  /usr/lib/udev/.debug
  /usr/lib/udev/.debug/pcmcia-socket-startup
  /usr/lib/udev/.debug/pcmcia-check-broken-cis

[YOCTO #3440]

(From OE-Core rev: 216c9f78ec4f8b09454cc8b9c4bea98152d46352)

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-12-19 17:54:58 +00:00
Constantin Musca
805bbd1eef alsa-utils: Pass udev-rules-dir as parameter
Fix the following warning:
WARNING: QA Issue: alsa-utils: Files/directories were installed but not shipped
  /lib
  /lib/udev
  /lib/udev/rules.d
  /lib/udev/rules.d/90-alsa-restore.rules

[YOCTO #3440]

(From OE-Core rev: 98833e6ddd46a541e42536a0e27fd3fe95d2caed)

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-12-19 17:54:58 +00:00
Constantin Musca
2c57f28eda bitbake.conf: add nonarch_base_lib variable
Adapt stagging.bbclass to this change

(From OE-Core rev: 0730a8cbb42cd8b6667f2d1daefa0f6fcec06af2)

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-12-19 17:54:58 +00:00
Saul Wold
9e41867965 packagegroup-toolset-native: don't include mesa-dri-glsl-native
since there are no providers

(From OE-Core rev: 90abd8d1cfbafd89c84d848020d1866b1f04a772)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:58 +00:00
Chen Qi
9596495e09 ICU: upgrade to 50.1.
Upgrade ICU to 50.1.
All unnecessary patches of the previous version are dropped.

[YOCTO #3557]

(From OE-Core rev: d9e6b45a0abd15b24941d8d04142cd79399424ef)

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-12-19 17:54:57 +00:00
Saul Wold
c21f80b294 matchbox-theme-sato-2: remove, depends on matchbox-wm-2
(From OE-Core rev: 871a15ba5d8eecae37f0152e50073c90c7fea16c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:57 +00:00
Ross Burton
7f2c15b4b1 matchbox-wm-2: remove
Matchbox Window Manager 2 is more of a framework than a window manager,
certainly isn't ready to replace v1 yet, and isn't under active development.

(From OE-Core rev: 94a97a5b40484b4e02e704cc56ba40fc62496107)

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-12-19 17:54:57 +00:00
Ross Burton
4bb14875e1 mutter: remove
This recipe was never used in oe-core or meta-oe, and is very old.

(From OE-Core rev: fdfee428db3a91c17618277d24b558d31a17d266)

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-12-19 17:54:56 +00:00
Laurentiu Palcu
6dbd1a3d65 xf86-video-intel: upgrade to 2.20.16
(From OE-Core rev: d35bcd6e930042b0238abea34769ba797db86a88)

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-12-19 17:54:56 +00:00
Laurentiu Palcu
63e789a573 xserver-xorg: upgrade to 1.13.1
(From OE-Core rev: 5d70032c8629c7a1fbc86a4cbb9a9ec5032239db)

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-12-19 17:54:56 +00:00
Laurentiu Palcu
5f178fca39 gtk+-native: add gtk-update-icon-cache wrapper
This is needed in order to point where the pixbuf loaders.cache is
located and avoid warnings like the one below that appear when the
sstate is fetched from a remote machine:

(gtk-update-icon-cache:8913): GdkPixbuf-WARNING **: Cannot open pixbuf
loader module file '/REMOTE/MACHINE/PATH/loaders.cache': No such file or directory

(From OE-Core rev: 6665a41c6506039e6ba6cfdbaa941369e42d682f)

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-12-19 17:54:55 +00:00
Laurentiu Palcu
359eb5194c gconf: add gconftool-2 native wrapper
This is needed when sstate cache is fetched from another build server.
In this case, the postinstall will fail because the backend libraries
path will be from the build server.

(From OE-Core rev: bba414bc9d14eb2d29b54c68259d13ddbe6567fa)

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-12-19 17:54:55 +00:00
Laurentiu Palcu
4606a8b1fb distcc: use useradd.bbclass to add the distcc user
This is needed for the postinstalls to run at do_rootfs time.

[YOCTO #3601]

(From OE-Core rev: c42ca31e34ffa3eed17407245a51322f2700e630)

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-12-19 17:54:55 +00:00
Laurentiu Palcu
83242c81ec avahi: use useradd.bbclass to add avahi-autoipd user
This is needed for the postinstalls to be run at do_rootfs time.

[YOCTO #3605]

(From OE-Core rev: 878cb7b76b19b03c51aa368b0bc037647c844a21)

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-12-19 17:54:55 +00:00
Marko Lindqvist
3929b60c05 pixman: update to upstream version 0.28.2
(From OE-Core rev: a941da8d348ad1b45c0d4083d9a0b67da0c6dfd4)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:54 +00:00
Marko Lindqvist
7dd275a2e2 gdb: update to upstream version 7.5.1
(From OE-Core rev: 6d797dd2e506588cd6e79e1da7c2d68810394208)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:54 +00:00
Marko Lindqvist
062604e9df gdk-pixbuf: update to upstream version 2.26.5
(From OE-Core rev: efe02ada3602d032629c26431173d5801c9e5af3)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:54 +00:00
Marko Lindqvist
606561953a guile: update to upstream version 2.0.7
change-install-data-hook-to-install-exec-hook-in-gui.patch is now
part of upstream.

(From OE-Core rev: 3d03eb7430849d7bd709e70a300efeb4a88cdb20)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:53 +00:00
Marko Lindqvist
00dd34b92f patch: update to upstream version 2.7.1
(From OE-Core rev: 1f51f2066c5a6f1cff50c4e78ee3ada3c5398d82)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:53 +00:00
Marko Lindqvist
b6db3f06cc patch: drop global-reject-file patch
global-reject-file.diff was patch ported from Debian that Debian
itself has dropped as upstream now has equivalent functionality.
To update users of this functionality, replace
"--global-reject-file=file" with simple "--reject-file=file" which
no longer overwrites reject hunks from different files.

(From OE-Core rev: 1c15ffab4d68e86f1ffcfd538e1d0ab77c21cb97)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:53 +00:00
Marko Lindqvist
9e941bbfaa gtk+: update to upstream version 2.24.14
(From OE-Core rev: 4e9a5a56ddaeeeebcb0df63f671d73436aa2c6c2)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:52 +00:00
Marko Lindqvist
7202ab662c fontconfig: update to upstream version 2.10.2
(From OE-Core rev: c494865437ed9136fb8841235f1d9341997cadb7)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-19 17:54:52 +00:00
Martin Jansa
8c57766015 iptables: include /usr/share/xtables/pf.os in PN if it's build
* when libnfnetlink is available (provided by
  meta-networking/recipes-filter/libnfnetlink/libnfnetlink_1.0.1.bb
  it's autodetected and utils subdirectory with pf.os is used.
* unfortunately there isn't configure switch to explicitly disable
  libnfnetlink and it's also in different layer so we cannot add it to
  DEPENDS
* it's undeterminitic, but pf.os is the only difference AFAIK, so not
  worth patching configure switch
* fixes:
  iptables-1.4.15: iptables: Files/directories were installed but not
  shipped
    /usr/share/xtables
    /usr/share/xtables/pf.os

(From OE-Core rev: b789152b56ddbd6761989327cae558558401fd46)

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-12-19 17:54:52 +00:00
Phil Blundell
3d154ae119 kernel.bbclass: Allow modules*.tar.gz generation to be inhibited
The modules.tar.gz archive is sometimes of no value and it can take
a noticeable time to build if many modules were enabled in the kernel
configuration.  The extraneous file also contributes to deploy/ clutter
and is a waste of disk space.

Allow it to be suppressed by setting MODULE_TARBALL_DEPLOY="0".

(From OE-Core rev: 262bfde1c5c51cc902b50bf0dda543434f12010c)

Signed-off-by: Phil Blundell <pb@pbcl.net>
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-12-19 17:54:51 +00:00
Martin Jansa
79f31adabf kernel.bbclass: use the same versioning schema for modules.tgz and provide link to latest
* so it will work look KERNEL_IMAGE
* also we were recreating modules.tgz with every kernel build, but
  overwritting the same output file

(From OE-Core rev: 73f242a61f913a0b0cd88265cd9ff6bcf3924623)

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-12-19 17:54:51 +00:00
Martin Jansa
e3ce4737e5 bitbake.conf: exclude DATETIME var dependency from IMAGE_NAME
* resolves ERROR shown when bitbake -S is used for image:
  ERROR: Bitbake's cached basehash does not match the one we just generated
  (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)!
  ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc

(From OE-Core rev: 084d16cd00365ac3db9010a2e0e08ec49b50a144)

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-12-19 17:54:51 +00:00
Martin Jansa
5f2515667d rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfs
* I have kernel recipe which depends on other recipe to build tiny initramfs
  image, without this change it rebuilds not only that initramfs image
  but also whole kernel when DATE or TIME is changed and OEBasicHash enabled
* also resolves ERROR shown when bitbake -S is used for image:
  ERROR: Bitbake's cached basehash does not match the one we just generated
  (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)!
  ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc

(From OE-Core rev: a78d2d21fffd646a0d6e0f02a8355be010a7bd28)

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-12-19 17:54:51 +00:00
Ross Burton
2a9c574fd8 gst-openmax: fix build with newer GLib
The new GLib deprecated some threading API, but gst-openmax wasn't detecting
release vs development at all so assuming development, and thus building with
-Werror.  Set the variable that the configure script is assuming to exist, so
that -Werror isn't used.

(From OE-Core rev: 26bf8f6a047ccc0f73eaa40093afddabfce8ea1b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:53:52 +00:00
Ross Burton
91b6a483cf gst-meta-base: don't rdepend on ximagesink/xvimagesink
Loosen these dependencies to recommends, as some targets won't want or build
these sinks.

(From OE-Core rev: d933361d23a94a650cee3119367bd7ab6a07e881)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:53:51 +00:00
Constantin Musca
d0f35207f9 bitbake: fetch2: remove localcount and use AUTOINC instead
- do not use the BB_URI_LOCALCOUNT database for computing revision
incremental numbers anymore
- sortable_revision now generates "AUTOINC+${latest_rev}"
- use one incrementing value rather than several
- PV becomes 0.1+gitAUTOINC+deadbeefdecafbad_decafbaddeadbeef
- remove all localcount code and simplify the fetcher
- this patch addresses the following proposal:
http://lists.linuxtogo.org/pipermail/bitbake-devel/2012-November/003878.html

(Bitbake rev: 61cf01c5c236b4218f40cfae7c059c2b86765dbd)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:42:19 +00:00
Richard Purdie
f39e75ddef bitbake: data: Ensure emit_func honours vardeps flag
Currently, calling a shell function using exec_func may result in
dependent functions being missing, if the shell parser can't detect
the dependency, even if it was specified with the vardeps flag.

This patch ensures the function looks at the flag and considers it
when deciding which other functions need to be output.

[YOCTO #3561]

(Bitbake rev: a906c94328b040d5076571bd593b57be7ee403a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:42:19 +00:00
Richard Purdie
1e548a7fc7 sstate.bbclass: Improve stamp-extra-info task handling to avoid warnings
If you change a machine to a different package architecture, you will see sstate
errors about overwriting files as the code stands today. Instead it should clean
out the files safely and correctly. This patch changes the naming of stamp-extra-info
manifest files to avoid this problem. It will potentially trigger warnings during
builds in existing TMPDIRs until the system adjusts to the new naming, these are
harmless.

[YOCTO #3521]

(From OE-Core rev: 2cc8ee57f8148844bb7bcd4aaf34f6891cf3d410)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:58 +00:00
Richard Purdie
2636cb1133 sstate.bbclass: Remove unused/uneeded variable
(From OE-Core rev: 33ddf788c04044c8fe7ffbadab8787a5b6603186)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:58 +00:00
Richard Purdie
d46766ea5c sstate.bbclass: Simplify overcomplicated cleanall function
The code was written before SSTATETASKNAMES existed. Since it
does exist, lets simply the code.

(From OE-Core rev: 9817e2efdb94395655d711f5eadedcd249c8cffe)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:57 +00:00
Richard Purdie
e651c1a109 lib/oe/patch: Use force option when creating symlinks to patches
Under the scenario where you have an existing source tree and you then
change one of the patches, maybe to be architecture or machine specific,
then rebuild, the build will fail since the symlink already exists
but should now point at a different file.

The easiest fix is to tell the system to remove and recreate the link
which is done with the force option.

(From OE-Core rev: 4741b90b170bc96e3a24f9c1dce871af060bc4d5)

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-12-17 17:24:57 +00:00
Lukas Bulwahn
5cf293b1f9 distutils: Replacing path to native python by path to python in the image to support python packages with console-script setup
When using distutils for a python package based on a python-setuptools
installation script that sets up a console script, the header
of the console script created by setuptools points to the
python-native path.

The console scripts are commonly executed in the image, but not
in the sysroot environment. Therefore, the header of the
console scripts should point to the python interpreter in the
image.

Setuptools does not allow to set the path of the python
interpreter via some command-line argument.
Hence after the installation script ran, the distutils
class replaces the path in the console script files created by
the installation.

(From OE-Core rev: 11229def87d048c51190b9bd275c73d1f8bf6007)

Signed-off-by: Lukas Bulwahn <Lukas.Bulwahn@oss.bmw-carit.de>

sgw - added \ to protect the space.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:57 +00:00
Marko Lindqvist
47d6d15c40 xserver-xorg: add libgcrypt dependency
Build failed because of missing libgcrypt.

(From OE-Core rev: 93ee5dd7c0cc0eddaad9bc9ebb31c00e97df64cb)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:57 +00:00
Li Wang
c511d0eb40 cups CVE-2011-3170
the patch come from:
http://cups.org/strfiles/3914/str3914.patch

The gif_read_lzw function in filter/image-gif.c in CUPS 1.4.8 and
earlier does not properly handle the first code word in an LZW stream,
which allows remote attackers to trigger a heap-based buffer overflow,
and possibly execute arbitrary code, via a crafted stream, a different
vulnerability than CVE-2011-2896.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3170

[YOCTO #3583]
[ CQID: WIND00299594 ]
Upstream-Status: Backport

(From OE-Core rev: c82517bb667484854eaa05b6e9efd9ee0f164fec)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:56 +00:00
Li Wang
cdb398935e cups - CVE-2011-2896
the patch come from:
http://cups.org/strfiles/3867/str3867.patch

The LZW decompressor in the LWZReadByte function in giftoppm.c
in the David Koblas GIF decoder in PBMPLUS, as used in the
gif_read_lzw function in filter/image-gif.c in CUPS before 1.4.7,
the LZWReadByte function in plug-ins/common/file-gif-load.c
in GIMP 2.6.11 and earlier, the LZWReadByte function in img/gifread.c
in XPCE in SWI-Prolog 5.10.4 and earlier, and other products,
does not properly handle code words that are absent from the
decompression table when encountered, which allows remote attackers to
trigger an infinite loop or a heap-based buffer overflow, and possibly
execute arbitrary code, via a crafted compressed stream, a related
issue to CVE-2006-1168 and CVE-2011-2895.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-2896

[YOCTO #3582]
[ CQID: WIND00299595 ]
Upstream-Status: Backport

(From OE-Core rev: 0742b7aecaada435f90f39f26914906a5eb1fd4f)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:56 +00:00
Li Wang
355fb13d89 librsvg: CVE-2011-3146
Store node type separately in RsvgNode

commit 34c95743ca692ea0e44778e41a7c0a129363de84 upstream

The node name (formerly RsvgNode:type) cannot be used to infer
the sub-type of RsvgNode that we're dealing with, since for unknown
elements we put type = node-name. This lead to a (potentially exploitable)
crash e.g. when the element name started with "fe" which tricked
the old code into considering it as a RsvgFilterPrimitive.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-3146

https://bugzilla.gnome.org/show_bug.cgi?id=658014

[YOCTO #3581]
[ CQID: WIND00376773 ]
Upstream-Status: Backport

(From OE-Core rev: 64de49bed598ce9d4ee0b448badc38a433712aff)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:56 +00:00
Li Wang
8780c5ddf2 libxml2 CVE-2012-2871
the patch come from:
http://src.chromium.org/viewvc/chrome/trunk/src/third_party/libxml/src \
/include/libxml/tree.h?r1=56276&r2=149930

libxml2 2.9.0-rc1 and earlier, as used in Google Chrome before 21.0.1180.89,
does not properly support a cast of an unspecified variable during handling
of XSL transforms, which allows remote attackers to cause a denial of service
or possibly have unknown other impact via a crafted document, related to the
_xmlNs data structure in include/libxml/tree.h.

http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-2871

[YOCTO #3580]
[ CQID: WIND00376779 ]
Upstream-Status: Pending

(From OE-Core rev: bc601f96f34ad17a87f599b58e502ec1b2c13fa3)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:56 +00:00
Li Wang
4371e8f68a cups: CVE-2012-5519
lpadmin to (limited) root privilege escalation
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5519
http://www.cups.org/strfiles/4223/str4223v2-1.4.4-debian.patch

[YOCTO #3579]
[ CQID: WIND00392016 ]
Upstream-Status: Backport

(From OE-Core rev: 9f6964b489ef3e0f175bf33a94ab819408875da8)

Signed-off-by: Li Wang <li.wang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:55 +00:00
Anders Darander
b2b1d86bb3 linux-firmware: split out ralink drivers
To reduce disk usage on systems using the ralink driver, split out the ralink firmware
to a separate package.

(From OE-Core rev: 732d7ba613835c1e2bd5e03f3f8dd0179cd47648)

Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:55 +00:00
Ross Burton
02cb80816e mesa: remove dependency on mesa-dri in mesa-dri-dev
Move /etc/drirc to libdricommon so mesa-dri is empty, and remove the automatic
dependency on mesa-dri in mesa-dri-dev.

(From OE-Core rev: 882bf3bc5f038d5e072df1bf3ecddd66e025e673)

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-12-17 17:24:55 +00:00
Martin Jansa
c5d7ab6a24 autotools: copy also remove-potcdate.sin from ${STAGING_DATADIR_NATIVE}/gettext/po
* some packages (e.g. uptime, cpu, forecasts, news from meta-efl)
  don't have remove-potcdate.sin in po subdirectory, but Makefile.in.in
  supplied by autotools.bbclass depends on it and fails without like this:
  | make[3]: Entering directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po'
  | make[3]: *** No rule to make target `remove-potcdate.sin', needed by `remove-potcdate.sed'.  Stop.
  | make[3]: Leaving directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po'
  | make[2]: *** [uptime.pot] Error 2

(From OE-Core rev: 5a3116638394dc72c54cf5d4f8bd42a7be0b1768)

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-12-17 17:24:55 +00:00
Martin Jansa
9050f30ec5 gettext: move remove-potcdate.sin from gettext-native to gettext-minimal-native
* now autotools.bbclass are copying not only Makefile.in.in but also
  remove-potcdate.sin which is used by Makefile.in.in, so we need to
  provide this file already in gettext-minimal-native otherwise build
  can fail, when autotools.bbclass is used before gettext-native (full)
  is built.

(From OE-Core rev: e60612a9fed96d92c5119ab3b26a355d152db1b8)

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-12-17 17:24:55 +00:00
Hongxu Jia
ea2a7ae8c6 ghostscript-native:fix host underlinking issues
The ghostscript-native will check libtiff
automatically at configure time and libtiff
needs libjpeg. If libtiff and libjpeg is
just populated to staging native directories
and the host doesn't install them, the libjpeg
could not be linked, fail with:

|libjpeg.so.8, needed by libtiff.so, not found
|libtiff.so: undefined reference to
`jpeg_set_defaults@LIBJPEG_8.0'
|collect2: error: ld returned 1 exit status

Disable libtiff support to fix this issue and
modify configure to let disable system libtiff
could work.
We also explicity disable fontconfig, freetype,
cups for ghostscript-native to avoid the similar
issues.

[YOCTO #3562]

(From OE-Core rev: c00778dd0d9c3b62657057e92c868ad2257d72d3)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:54 +00:00
yanjun.zhu
5b3ffcea5e squashfs: fix CVE-2012-4025
CQID:WIND00366813

Reference: http://squashfs.git.sourceforge.net/git/gitweb.cgi?
p=squashfs/squashfs;a=patch;h=8515b3d420f502c5c0236b86e2d6d7e3b23c190e

Integer overflow in the queue_init function in unsquashfs.c in
unsquashfs in Squashfs 4.2 and earlier allows remote attackers
to execute arbitrary code via a crafted block_log field in the
superblock of a .sqsh file, leading to a heap-based buffer overflow.

http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-4025

(From OE-Core rev: bb1611d4830bb7aff2371afdb2a77a4ca7298c7d)

Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com>

[YOCTO #3564]
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:54 +00:00
Fahad Usman
f023d05898 iperf: pass in target path vars
(From OE-Core rev: accbcea94091800a90df0f5141990c110ff35ee5)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
71748b54694f4ffe2d598da71f641969df1417c0

slightly modified the patch to apply it on .bb file instead of .bbappend

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:54 +00:00
Fahad Usman
ec70f9ec3b perf: pass CFLAGS and LDFLAGS
(From OE-Core rev: 373371432b72cb19600a45e741afdfcb9662ecfb)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
9d698004137c1a888d40d6a4808d94afa22387e7

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:53 +00:00
Fahad Usman
eef3b8d869 perf: kill -Werror
this fails to build using a recent sourcery toolchain due to
unused-but-set-variable

(From OE-Core rev: dce7918a818bf86fcc11f561af3eacaf281403d4)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit ids
82e96b3baa1c64d03412871fce56d496a338f167 and
ae325d011bd50501fe677c8b37295ae83030c526

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:53 +00:00
Kang Kai
40bb94f63e newt: enable python support
Compile newt with python support. There may be packages that need newt's
python extension.

Add python to DEPENDS. And add patch fix_python_fpic.patch to compile
python .so module with flag -fPIC.

(From OE-Core rev: aa591ecb1aac1c0308c05dbac81bc056869a2c3e)

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-12-17 17:24:53 +00:00
Hongxu Jia
44c9d1ff25 native tools set packagegroup
This packagegroup is a toolset that contains most
of the native packages.

[YOCTO #3298]

(From OE-Core rev: 77092eeaadfd89375a6aea6d170664f4d3e6f6dd)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:53 +00:00
Mark Hatle
3fa98d1dd3 package_rpm: Workaround for 'all' arch multilib package naming
[YOCTO #3565]

All packages should not be multilib specific, however when the multilib
rules run, they automatically rename the 'all' target recipes.  As such
there is no way to know if an 'all' package should or should not contain
the multilib prefix.  We workaround this issue in the translate function
by checking to see if the runtime-reverse file exists or not.

The workaround should be removed once a proper solution to the architectural
issue is in place.

(From OE-Core rev: ea4b8c73a7f807ccd9aa22dfcf41285145a9dd2e)

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-12-17 17:24:53 +00:00
Mark Hatle
2173ca2fb1 package_rpm.bbclass: Add a simply way to enable RPM debugging
(From OE-Core rev: 08b980da3caafc331fef457a16466eda98139bb4)

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-12-17 17:24:52 +00:00
Mark Hatle
e1345b76c0 rpm/smart: Fix runtime-relocation issues w/ RPM and Smart
Fix runtime-relocation issues with the RPM and Smart wrappers.

In addition the patches were necessary to fix related problems.
The changes to the includes three categories of issues:
  *) Incorrect pathname evaluations
  *) Incorrect evaluation of the /etc/rpm/platform file contents
  *) Confusing vendor #define checks

Finally, a simple way to debug the platformScore was added as
that is necessary to debug how this works and into the smart system.

(From OE-Core rev: 355a621caca66ed393d36fff6be8918921cf45ae)

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-12-17 17:24:52 +00:00
Mark Hatle
8b671644e1 package_rpm.bbclass: Add additional install error detection
There is a condition where the package will fail to install, but smart does
not capture the error.  Add the error string to the scan list.

(From OE-Core rev: 230068110e1cda349f9bf3886d8d06ac46deea37)

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-12-17 17:24:52 +00:00
Mark Hatle
4a7151b971 package_rpm.bbclass: Add support for incremental installs
(From OE-Core rev: 140750f9c334ba9abb1f5c89fc28ef9b866c605b)

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-12-17 17:24:52 +00:00
Mark Hatle
f946417623 package_rpm.bbclass: Add additional logging
(From OE-Core rev: 2a21e63869ec9541dd338df1d86ef2ca01762bfe)

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-12-17 17:24:52 +00:00
Mark Hatle
06afdb8928 package_rpm.bbclass: Fix the way the RPM platform file is generated
When generating an SDK, we need to use either the SDK or TARGET version
of the OS.  They are not interchangable!

(From OE-Core rev: 8f6e33231439c9c2c1584b2790f62f833439e3c1)

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-12-17 17:24:51 +00:00
Mark Hatle
a6aa74817c package_rpm: Update the way the multilib package names are translated
The variable MULTILIB_PACKAGE_ARCHS has been removed in favor of a
repurposed MULTILIB_PREFIX_LIST.  The format of this item is now
<libid>:<arch>:<arch1>:...:<archN>.  This ensures that we can correctly
translate the libid to one of the supported archs in a tri-lib system.

All of the users of MULTILIB_PREFIX_LIST and MULTILIB_PACKAGE_ARCHS have
been modified accordingly.

Also change the way attempted packages are installed, verify the package
exists in the translate functions, then perform the install in one single
operation.  This results in a significantly faster install time.

(From OE-Core rev: ffe6cf3a1c57defdbe8531bdeb588e199177bb6c)

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-12-17 17:24:51 +00:00
Paul Eggleton
ba08a8ccbf Update sanity tests to use smart instead of zypper
(From OE-Core rev: c56d24b35d94fe2934ac7e1dc67422e6abc7539d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:51 +00:00
Paul Eggleton
2997a704fc classes/rootfs_rpm: install smart instead of zypper in rpm-based images
Switch over to smart on the target when package-management is enabled.

(From OE-Core rev: 69f258a2422e6a6ae71834dd097ffa00a1784d9e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:51 +00:00
Paul Eggleton
019ba25654 classes/*_rpm: integrate Smart into RPM filesystem construction
Use Smart to construct the root filesystem for images and the contents
of SDKs rather than the custom scripts around rpm we had previously.
This ensures the result when producing an updated image will be the
same as upgrading to the same package versions from an older image on
the target, as well as allowing us to remove a substantial amount of
code making the rpm classes much easier to follow.

Some bugfixes from Bogdan Marinescu <bogdan.marinescu@intel.com>.
SDK implementation and testing as well as a number of bugfixes from
Mark Hatle <mark.hatle@windriver.com>.

(From OE-Core rev: a726ae7c032fac1aa49ce34180fa2ed2dcaf87d3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
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-12-17 17:24:50 +00:00
Trevor Woerner
b05efc27d0 runqemu: add support for FSTYPE=vmdk
Allow vmdk images to be run through the 'runqemu' facility.

(From OE-Core rev: 9efa0aa914cae9e13d90ddf99b482ccf0936573c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:50 +00:00
Hongxu Jia
b70784ce58 mkelfimage-native:make failed if libz not in host
mkelfimage-native finds libz from host dir, not
from the staging directories.

Modify confiugre.ac to let makefile find libz
and zlib.h by CFLAGS and LDFLAGS.

[YOCTO #3547]

(From OE-Core rev: 4d0b2ca464cec9588178100b601eda96faec0ad7)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-17 17:24:50 +00:00
Cristiana Voicu
958162e96b bitbake: hob: use base image only if it was set
As it is, when you create a new image from scratch, hob gives an error.
This is because of the patch for #2601.

(Bitbake rev: 42d9db0cc80ed45d769f843ccb51e0c194ec557b)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 17:31:31 +00:00
Mark Hatle
5ce8c7fe9e populate_sdk_base: Add perl modules as needing to be relocated
The perl module for automake has an embedded path in it, this needs
to be relocated.

(From OE-Core rev: ad79360c1d992830d4f0e06a3bbf0622658c0540)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 17:30:44 +00:00
Ross Burton
4c299b7651 libsoup: RRECOMMEND glib-networking
Without glib-networking, libsoup can't do SSL, proxies, and probably more.

(From OE-Core rev: 92d08254b55cb36df155f6b0248fd3889d44655f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 17:15:49 +00:00
Ross Burton
cf0692b4e7 beagleboard: use xf86-video-omapfb
The newer -omap driver doesn't support the GPU on BeagleBoard.

[ YOCTO #3522 ]

(From meta-yocto rev: 6c32c17a6fe3ff2470f1c77a65be018b4c0fd5c9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 17:13:21 +00:00
Ross Burton
24de2407f7 e2fsprogs: fix out-of-tree builds
(From OE-Core rev: 8fc44b83ef6d37aa84e87411e4225a1e76d2f4ef)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:31 +00:00
Ross Burton
27b5b0607a font-util: fix out-of-tree builds
(From OE-Core rev: effd4d26d6bc4d3dba6cc32d5fb59530131f7381)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:31 +00:00
Ross Burton
d3b2eddc09 base-passwd: fix out-of-tree builds
(From OE-Core rev: cdc9670500cc64e8863f9ad787691a4c096333c1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:30 +00:00
Ross Burton
3639c65ed4 libgcrypt: fix out-of-tree builds
(From OE-Core rev: 05f476da08b634c8c0c55b19077ab3b823eb0eaf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:30 +00:00
Ross Burton
250c4d28a8 gperf: fix out-of-tree builds
(From OE-Core rev: 74d853525fc4252f717f0baaa322e6aa5c4eb88f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:30 +00:00
Ross Burton
3f1407457f ossp-uuid: fix out-of-tree builds
(From OE-Core rev: 79ad900cc693d4c02323cae0b31350b57eafa1e8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:30 +00:00
Ross Burton
4fd512fce2 pkgconfig: fix out-of-tree builds
(From OE-Core rev: 5c258d9ad5fd94b193a8054b112bbdcfcee57358)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:29 +00:00
Ross Burton
38cac827eb apr: fix out-of-tree builds
(From OE-Core rev: ed4e991317ab11e8c0e6869f2be6426cc3d28ccb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:29 +00:00
Ross Burton
312dd2ee8e curl: fix out-of-tree builds
(From OE-Core rev: f09b09c96996a9bb30fbad50de957faf0b31389e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 15:05:29 +00:00
Maxin B. John
f3f4ac33ee Update the SRC_URI in systemtap recipe
The SRC_URI in systemtap recipe uses 'sources.redhat.com' which
redirects to 'sourceware.org'. This causes random fetch failures.
Updating the recipe to use the direct link.

(From OE-Core rev: 340841f8a5c8225ccb77b628f55a668c9d1097ec)

Signed-off-by: Maxin B. John <Maxin.John@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:11:39 +00:00
Cristiana Voicu
f9d9cc87c5 bitbake: hob/bitbake: custom image is now using the base image
Till now, a custom image made in Hob was using only the packages from
the base image. Now it is using everything declared in the base image.
Also next to hob-image.bb, it creates another .bb file which is used
in building process. Those images are ignored by git.

[YOCTO #2601]
(Bitbake rev: 22007cf71a00fbb03b40f97201a6eb06c9aebd16)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:08:49 +00:00
Mihai Lindner
a947b547d0 bitbake: knotty: use bb.error instead of print
Change to use bb.error instead of print, or maybe that was desired (?)
Also remove a tab, while in the neighborhood.

(Bitbake rev: 4a36a1af71530afc8fa896271fa94362ead176bd)

Signed-off-by: Mihai Lindner <mihaix.lindner@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:08:49 +00:00
Robert P. J. Day
ad29d14099 bitbake: git.py: A bit of tidying up regarding grammar and supported protocols.
Doc cleanup, no functional change.

(Bitbake rev: 5161a84f5dcfe748382a5073349bf10ed21641f9)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:08:48 +00:00
Eren Türkay
6ec6bf4e4f bitbake: bitbake.vim: detect *.bbappend files in ftdetect automatically
Currently, *.bb and *.bbclass files are automatically highlighted and
detected as a bitbake file. Since *.bbappend files are also bitbake
files, vim plugin should automatically detect and highlight it as well.

(Bitbake rev: 0668a0ea968baf930f05806a5452c8dbe4ec35ce)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:08:48 +00:00
Richard Purdie
aa272386ba gitignore: Add hob-image-*.bb
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 13:08:39 +00:00
Richard Purdie
853d707af5 bitbake: data_smart/BBHandler: Fix SkipParse exception handling
If SkipParse is raised from something which isn't anonymous python, it wasn't
being handled correctly. This improves the handling for example from within inline
python.

(Bitbake rev: 7467d7d66b24cc8f43ab168e65895e7c4aee6092)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 12:36:04 +00:00
Richard Purdie
5d968368bc bitbake: bin/bitbake, bb/__init__: Move BBDEBUG handling to bin/bitbake
The method this older code was accessing doesn't exist. A library shouldn't
be changing behaviour based on the environment anyway when sepcific function
calls exist to correctly setup the logging. Fix the crash if BBDEBUG was used
by moving the code to bin/bitbake.

[YOCTO #3319]

(Bitbake rev: 3a1b75037fe1e5282ffd40b037e93353405faa45)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 12:36:04 +00:00
Richard Purdie
dc637ae860 bitbake: command: Fix getCmdLineAction bugs
Executing "bitbake" doesn't get a sane message since the None return value
wasn't being handled correctly. Also fix msg -> cmd_action['msg'] as
otherwise an invalid variable is accessed which then crashes the server
due to the previous bug.

(Bitbake rev: c6211291ae07410832031a5274690437cc2b09a6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 12:36:04 +00:00
Richard Purdie
1572c1517c bitbake: command: Add missing import traceback
Without this, if an exception occurs the server will silently crash
with no feedback to the user about why (since traceback isn't imported).

(Bitbake rev: e637a635bf7b5a9a2e9dc20afc18aceec98d578f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 12:36:03 +00:00
Andrei Dinu
1b0c0f2902 Disabling audio on when running runqemu qemuarm
Added the change that prevented runqemu to throw
sound errors.

[YOCTO #3528]

(From OE-Core rev: 0ddcd2ce24f0cc65561e2d26c9d63048beedc40e)

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 08:58:19 +00:00
Tom Zanussi
936c460ab8 module.bbclass: make sure do_make_scripts() executes after do_patch()
If do_make_scripts() executes before do_unpack()/do_patch(), the build
fails because it can't cd into the workdir of a recipe using this
class, so make sure do_make_scripts() doesn't run before the package
has been unpacked and patched.

Fixes [YOCTO #3589].

(From OE-Core rev: 824cf145bcb55bb99a717a2dfd73e43e6b3feea4)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 08:56:31 +00:00
Andrei Gherzan
0231336247 chrpath.bbclass: Normalize rpath only of it doesn't contain ORIGIN variable
If we normalize a rpath which contains ORIGIN variable, the binary will end
up without those rpaths at all. So check first if rpath contains ORIGIN variable
and if not, move on and normalize it.

(From OE-Core rev: 46dc514ff5a3d2693546cf95c5481e0539c43580)

Signed-off-by: Andrei Gherzan <andrei.gherzan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 08:53:41 +00:00
Ross Burton
14f4cfcc34 mesa-dri-git: remove patch that doesn't apply to 9.x
(From OE-Core rev: 7d7f199806bee016553d1046a53bd55ab3a9e609)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-14 08:53:41 +00:00
Marko Lindqvist
da598d4f0f eglibc: fix checksums of fetched patches
As downloaded files are not named, tarball checksum is used also
for downloaded patches, causing checksum check for them to fail.
Added correct checksums of their own for all downloaded files.

(From OE-Core rev: 2fbbd406e906df36cf1840b8b5f7f51a25d92a35)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 18:02:21 +00:00
Constantin Musca
a0a265e352 poky-tiny.conf: blacklist inappropriate image options
Blacklist all images that fail when using poky-tiny

poky-tiny image tests:
1. build-appliance-image
    * ERROR: Nothing RPROVIDES libx11-dev
2. core-image-minimal-*
    * ok
3. core-image-base
    * libcap fails at do_compile
4. core-image-basic
    * libcap fails at do_compile
5. core-image-clutter
    * ERROR: Nothing PROVIDES virtual/libx11
6. core-image-gtk-directfb
    * ERROR: Nothing RPROVIDES libxt
7. core-image-lsb, core-image-lsb-dev, core-image-lsb-sdk
    * ERROR: Nothing RPROVIDES libxt
8. core-image-rt
    * ERROR: Multiple .bb files are due to be built which each provide virtual/kernel
        (/home/dev/yocto/poky/meta/recipes-kernel/linux/linux-yocto-rt_3.4.bb
            /home/dev/yocto/poky/meta/recipes-kernel/linux/linux-yocto-tiny_3.4.bb).
9. core-image-rt-sdk
    * ERROR: Nothing PROVIDES xext
10. core-image-sato, core-image-sato-dev, core-image-sato-sdk
    * ERROR: Nothing PROVIDES libxft
11. core-image-x11
    * ERROR: Nothing PROVIDES virtual/libx11
12. q4te-demo-image
    * libcap fails at do_compile

[YOCTO #2565]

(From meta-yocto rev: 6b6d84b6652f57ea8dd37e6921c280d30ef04b93)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:35 +00:00
Tom Zanussi
0be41d6e30 yocto-kernel: add support for PRs of the form rN to pr_inc()
With the addition of custom kernel support, we also need to handle the
normal PR format found in .bb files.

(From meta-yocto rev: e17570b6bbd36a731f546f800ef5f271ed5c3697)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:35 +00:00
Tom Zanussi
76b2ef26e7 yocto-bsp: remove patch-related SRC_URI processing
We no longer have to include patches in the SRC_URI, since things now
work using only patch in the .scc file, so remove anything to do with
maintaining patches in the SRC_URI and fix up all previous users of
that code.

(From meta-yocto rev: 8f3cd1f80f898d963797bc96b3fe599f7f8ea343)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:34 +00:00
Tom Zanussi
8a1d25cdce yocto-kernel: handle SRC_URIs in .bb files
Previously we assumed we were always dealing with .bbappends.  With
custom kernels, we now have SRC_URIs in .bb files, so add .bb files to
the list of file types we examine and modify.

(From meta-yocto rev: 4200c5c99b7d61e05b0d9d1580e267e7d6d49760)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:34 +00:00
Tom Zanussi
6c7f426663 yocto-kernel: remove assumption that kernel has a version
Kernels don't need to have a PREFERRED_VERSION, so remove that
assumption from the code that looks for the kernel definition.

(From meta-yocto rev: 2ea9d54ac5ebd80b5306851d62411960f3293ede)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:34 +00:00
Tom Zanussi
5fc9990ef6 yocto-kernel: don't list comments in config and patch listings
After adding comments to the config and patch templates, I noticed
they were displayed as items, which they shouldn't be.  This prevents
them from being displayed.

(From meta-yocto rev: 4cd0bde48cd17468923bba80b88d187014cda1a3)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:34 +00:00
Tom Zanussi
be93447bef yocto-kernel: create open_user_file() wrapper function
With the addition of custom kernels, we can no longer rely on a
hard-coded /files directory for BSPs - we need to be able to find the
user_config/patches files in a number of different directories.

We now hide the search inside a new open_user_file() function that
accomplishes the same thing as before but with a more flexible scope.

(From meta-yocto rev: 26a7032553e8d8691239368f0f994f948db06eed)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:33 +00:00
Tom Zanussi
125eb6f390 yocto-bsp: add replace_file()
Add a function that can be used to replace a template file by a
user-specified file.  The initial use of this capability is to allow
users-specified defconfigs.

(From meta-yocto rev: b52a22d40d4701a9515490bdd31c8d0341fb12bc)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:33 +00:00
Tom Zanussi
205872b7b8 yocto-bsp: add 'edit-file' input line
Add a subclassed edit box that verifies the existence of a
user-specified file.

(From meta-yocto rev: 8ca7f688a6a0e41dd6527b1c13ebaa77bbfeba69)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:33 +00:00
Tom Zanussi
c08a4dc5eb yocto-bsp: add 'edit-git-repo' input line
Add a subclassed edit box that verifies the existence of a
user-specified git repo.

Also adds a verify_git_repo() function that can be used as a basic
sanity check for local git setup.

(From meta-yocto rev: 64f1176d62ed02d7c61d32fdae11dc8b7d365603)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:33 +00:00
Tom Zanussi
254bf8c5d9 yocto-bsp: update existing templates for linux-yocto-custom
Update existing templates to integrate with linux-yocto-custom.

(From meta-yocto rev: 7a8b55bdf499d001b77bb87345eb4eeab6013b2e)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:32 +00:00
Tom Zanussi
4dc96e3629 yocto-bsp: add 'custom' choice to kernels()
Add a synthetic choice for linux-yocto-custom to the list of available
kernels.  Choosing this will lead the user down the path of options
needed to specify a custom kernel.

(From meta-yocto rev: 220ad83b5ccc241d7b5b2c3321f2a6a59813e3d6)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:32 +00:00
Tom Zanussi
9753196c77 yocto-bsp: add custom kernel support
Add a template to support custom kernels via a custom kernel recipe
derived from linux-yocto-custom.bb.

(From meta-yocto rev: 98c7861ebdd40b1fc4d803701ad9fb979be54273)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:32 +00:00
Saul Wold
8669fec353 chrpath: normalize the paths
By normalizing the paths the path comparing code works correct
to generate the right RPATH even when there is a A/../A in TMPDIR

[YOCTO #3408]

(From OE-Core rev: 50327f2bba9f479dd209cdc54646b9d551e84c59)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 16:54:31 +00:00
Muhammad Shakeel
dc8bdc872e libacpi: Remove QA warning: No GNU_HASH in the elf binary
Handle LDFLAGS properly in the Makefile to remove warning:
QA Issue: No GNU_HASH in the elf binary

(From OE-Core rev: a24a5e5c9ede4275f7188935a9410b84d406ed19)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:47 +00:00
Ross Burton
70593a1327 mesa: package osmesa.pc
(From OE-Core rev: 3281e272dd6687575d1d1ccc7f6d0ae844369dd6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:47 +00:00
Mark Hatle
71594f81b8 coreutils_6.9: Update the older coreutils to no longer provide 'su'
'su' was removed from newer versions of coreutils, and in OE-Core
we pick up 'su' from shadow instead. So simply remove the binary
from the install image to match expected behavior and avoid failures
due to conflicting 'su' binaries during do_rootfs when building
non-GPLv3 images.

(From OE-Core rev: b4c5fc7c025ff864280be9678e6dd856971c71d7)

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-12-13 15:18:46 +00:00
Mark Hatle
1f476dbb22 rootfs_rpm.bbclass: Revert to default shell logging behavior
Remove the set +x, and revert to the normal logging behavior.

(From OE-Core rev: e799d771c9ed9e41a900e2e96c23d4ae35d5fe08)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:46 +00:00
Darren Hart
722430a488 bootimg: Use FAT 32 for images larger than 512MB
Fixes [YOCTO #2138]

Commit 2175842116 dropped the forced use
of FAT32 for the hddimg generation as it broke with very small images
(< 32MB). Unfortunately, left to its own devices, mkdosfs appears to select
FAT16 even for very large images, resulting in 2.2GB images being
generated as FAT16:

$ ls -lah core-image-lsb-sdk-atom-pc-20121010233936.hddimg
-rw-rw-r-- 1 dvhart dvhart 2.2G 2012-10-17 08:00 core-image-lsb-sdk-atom-pc-20121010233936.hddimg

$ file !$
file core-image-lsb-sdk-atom-pc-20121010233936.hddimg
core-image-lsb-sdk-atom-pc-20121010233936.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 128, root entries 512, Media descriptor 0xf8, sectors/FAT 138, heads 64, sectors 4502496 (volumes > 32 MB) , serial number 0x50761926, label: "boot       ", FAT (16 bit)

The result was a runtime boot error from SYSLINUX and a failure to boot
live images greater than 1GB in size.

While strictly speaking it is the cluster count that determines which
FAT size is used, that calculation requires more information than we
have readily available (such as sectors per cluster). If we let mkdosfs
determine sectors per cluster and just set a sane threshold above which
FAT32 is used, we get correct bootable images. With this patch the 2.2GB
core-image-lsb-sdk uses FAT32 and the 21 MB core-image-minimal uses
FAT16, and both boot in qemu successfully:

$ ls -lah tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg
-rw-r--r-- 1 dvhart dvhart 2.2G 2012-12-12 14:18 tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg

$ file !$
file tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg
tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 8, Media descriptor 0xf8, heads 64, sectors 4470304 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 4357, reserved3 0x800000, serial number 0x50c902b7, label: "boot       "

$ ls -lah tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg
-rw-r--r-- 1 dvhart dvhart 21M 2012-12-12 14:06 tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg

$ file !$
file tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg
tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 4, root entries 512, sectors 41408 (volumes <=32 MB) , Media descriptor 0xf8, sectors/FAT 41, heads 64, serial number 0x50c8ffec, label: "boot       ", FAT (16 bit)

I have tested and booted core-image-minimal and core-image-lsb-sdk for
atom-pc with qemu-system-i386 using this patch.

(From OE-Core rev: de808c552d445502bd99f78bb8159d21149f87c1)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Steve Sakoman <steve@sakoman.com>
Cc: Joshua Immanuel <josh@hipro.co.in>
Cc: Przemek Czesnowicz <przemyslawx.czesnowicz@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:46 +00:00
Paul Eggleton
2f85e62b89 eglibc: remove dependency of eglibc-utils on bash
Adapt a patch from Peter Seebach <peter.seebach@windriver.com> to remove
the non-POSIX elements from the tzselect script, and add a separate
patch to work around a bug in the current version of busybox's awk
command. This replaces the /bin/bash reference in the script header with
/bin/sh and thus eliminates the dependency on bash picked up during
packaging.

Fixes [YOCTO #3551].

(From OE-Core rev: fe19d0e01cb1563cf4735ef250f80af20059103b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:46 +00:00
Fahad Usman
5693f3e158 tar: apply fedora patch for fortify sources sigabort
See https://qa.mandriva.com/show_bug.cgi?id=61419 for details.

(From OE-Core rev: 648cda68def82fa12b3af599c06caecdc7568668)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
333d2e0510a1e052cb83a6f8beed6d8bcea59b2c

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:45 +00:00
Ross Burton
db07a94e0f matchbox-keyboard: fix the build with libpng15
(From OE-Core rev: d49facde4fffc95cd153195fc0114dfbc1bf512c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:45 +00:00
Ross Burton
d7bca38b11 libmatchbox: upgrade to 1.10, drop git
All patches have been upstreamed so drop them, and as upstream isn't heavily
developed drop the git recipe.

(From OE-Core rev: 3465570601480d2e476e82b8b7254e94f87d2682)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:45 +00:00
Constantin Musca
ebd508d881 libpng: enable nativesdk variant
(From OE-Core rev: bdc9e932869cc5d08761c762c003b42de21e5c1f)

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-12-13 15:18:45 +00:00
Nitin A Kamble
8251685031 create-pull-request: detect trailing white space
Add logic in the create-pull-request to detect and warn about the
trailing white space inserted by patches.

(From OE-Core rev: 3e35310db3cd6d265092724a0e542b9616aca9c5)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:44 +00:00
Marcin Juszkiewicz
fad3986ae4 eglibc: add AArch64 support
(From OE-Core rev: 72087d2cbdcc0da66b38720769d8ad52dbfb4abc)

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-12-13 15:18:44 +00:00
Laurentiu Palcu
07dd59d812 gdk-pixbuf: handle postinstall errors differently
Apparently gdk-pixbuf-query-loaders always returns 0 but writes any
errors to stderr. So, the conditional exit at the end of the command was
useless. Write the errors to a file and exit only if the file size is
greater than 0.

(From OE-Core rev: 901fbfac48918db7bf809ded3df533504141c5ca)

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-12-13 15:18:44 +00:00
Laurentiu Palcu
0496ba3a9b populate_sdk_(deb|ipk|rpm): export NATIVE_ROOT and INTERCEPT_DIR variables
In order for the postinstall scripts to have access to the recent
improvements when generating the target SDK sysroot, export these
variables in populate_sdk.

(From OE-Core rev: 06151c34f4f4cb669b2f93ebb2f78cfecf698355)

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-12-13 15:18:43 +00:00
Ross Burton
4809890ae5 telepathy-glib: remove pkgconfig dependency in pkgconfig
A pkg-config file depending on pkg-config doesn't really make sense, and this is
causing unexpected dependencies on pkg-config at image contruction time (see

(From OE-Core rev: 1024f59c78ebdec132fde6a2d7eccde4b03ba468)

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-12-13 15:18:43 +00:00
Fahad Usman
9820786bba libpcre: Improve the recipe
- Improve the cross patch to determine *_FOR_BUILD in configure

- Leverage the fact that autotools.bbclass handles *_FOR_BUILD now

- Drop the now unnecessary do_compile override

- Drop the do_split_packages

- Split out packages for pcregrep, pcretest, in addition to libpcrecpp and
libpcreposix

- add nativesdk to BBCLASSEXTEND as well as native

(From OE-Core rev: 9867a9ad7a80a26654326650752dbbe89c8de3c5)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

- the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
62f819b97e356c1d7468fbccbf3a3ceed78b09a8

- broken up the original patch in two parts, this part contains some
improvements to the recipe and the cross patch

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:43 +00:00
Fahad Usman
f615f0c140 libpcre: upgrade to 8.32
- Also improve description
- Add summary and homepage

(From OE-Core rev: 57907458fe4b6c7037f35862adabf29b8ac1f029)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>

- the patch was imported from meta-mentor layer on yoctoproject git server
http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id
62f819b97e356c1d7468fbccbf3a3ceed78b09a8

- broken up the original patch in two parts, this first part upgrades the
version to 8.32

Signed-off-by: Fahad Usman <fahad_usman@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:43 +00:00
Kang Kai
b81f4273e6 libuser: enable python support
Compile libuser with python support and add python to DEPENDS.

(From OE-Core rev: 57114b3f631b66edf136bcc7ba23eec7c7bc9970)

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-12-13 15:18:42 +00:00
Constantin Musca
505f88fd3e qemu: upgrade to 1.3.0
remove-hardcoded-libexec.patch: removed
    - included in the new version

qemu-vmware-vga-depth.patch: removed
    - doesn't apply anymore
    - the problem addressed by the patch is fixed by
reverting commit 1f202568e0553b416483e5993f1bde219c22cf72

Revert-vmware_vga-Add-back-some-info-in-local-state-.patch:
    - VMware VGA requires that the depth presented to the guest
to be the same as the Display Surface depth in order to do not
corrupt the display
    - do not cache the DS depth (the depth might change)
    - revert commit 1f202568

- QEMU now uses pixman (DEPENDS += "pixman")
- rearrange the recipe in order to mimic the bitbake flow
- update both variants (.tar.bz2, git)

(From OE-Core rev: 7622c4f6c050f26f252066a0fcaacdbf340dcefa)

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-12-13 15:18:42 +00:00
Constantin Musca
24b4976a42 pixman: upgrade to 0.28.0
* Generic-C-implementation-of-pixman_blt-with-overlapp.patch:
    - adapted to the new version
* enable nativesdk variant

(From OE-Core rev: b41e55a7ee226a0ae4efdd633cab94e1cc846525)

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-12-13 15:18:42 +00:00
Robert P. J. Day
009d19a99d documentation-audit.sh: Add/fix checks for skipped lines.
Have the script skip:

  * "Recipe" lines.
  * Lines with 11 "=", not 12.

(From OE-Core rev: b9f14425a3f975a40a881b868b7bddcbd3c22580)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-13 15:18:42 +00:00
Scott Rifenbark
45915123a7 Documentation: poky-ref-manual - Updates to WORKDIR structure
The file structure beneath WORKDIR has changed such that
PN and PV are now separate directories.  This affected several
areas in poky-ref-manual.

(From yocto-docs rev: 52b033c2c9e5aaa1f03072dd16c21a9d59a87150)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:57 +00:00
Scott Rifenbark
044a8f9e6a Documentation: poky-ref-manual - Updated STAMPS directory information
The STAMPS directory is now structured as
build/tmp/stamps/$MULTIMACH_TARGET_SYS/<extended_PN>/$PV.
There were three areas in the manual that needed adjusting
to reflect this change.

(From yocto-docs rev: 1f8d64ecfa8e060680a90f9c6cc5f69554328da5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:57 +00:00
Scott Rifenbark
0173d4e10d documentation: poky-ref-manual - Fixed typo.
(From yocto-docs rev: fd43218181a20272b25b17a9fc0b99ece57e3a35)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:57 +00:00
Scott Rifenbark
0b18e1dbc9 Documentation: yocto-project-qs - Removed all trailing whitespace.
(From yocto-docs rev: 36376c49df34856b33bf8f4180ff6960f3280b48)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:56 +00:00
Scott Rifenbark
73ffb8298b Documentation: poky-ref-manual - Removed all trailing whitespace.
(From yocto-docs rev: 564a28c2501034ea7e2eb16afc43dfaf931b6f6f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:56 +00:00
Scott Rifenbark
acb3f72afa Documentation: kernel-manual - Removed all trailing whitespace.
(From yocto-docs rev: 188e1ad10217ff1a6a8363f100bff4e9ef3b9bf7)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:17:51 +00:00
Scott Rifenbark
72d01bf43d documentation: dev-manual - Removed all trailing whitespace.
(From yocto-docs rev: d117584a589460412a7fc4df15512b0d9c9448c7)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:15:24 +00:00
Scott Rifenbark
eb8c9e1494 Documentation: bsp-guide - Removed all trailing whitespace.
(From yocto-docs rev: 00d9bb4dcce101a77761418c1279ebfb9441b0d2)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:15:24 +00:00
Scott Rifenbark
3bcdba62b1 documentation: adt-manual - Removed all trailing whitespace.
(From yocto-docs rev: c1c271c0404dff9ed49597a4582a56def8237dd7)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:15:24 +00:00
Robert Cochran
205c7961f3 Documentation: dev-manual - Fixed maintainer link.
I updated a note that points the reader to the maintainers list.  The
note in the master branch pointed the reader to a nonexistent (old) file.

(From yocto-docs rev: d947d6d9bd42562a84ad3ac90e4c2052f421119c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 16:15:23 +00:00
Richard Purdie
3dc3fe32e3 bitbake: BBhandler/data: Fix __inherit_cache duplication
The inherits cache contains duplicate entries, some with the full patch, some
just starting classes/xxx. This is a waste of parse time and potentially
error prone. This patch fixes various pieces of code so the absolute paths are
always preferred and work correctly. The inherits_class function did not work
with full paths so the patch fixes this.

(Bitbake rev: f3a71e509af196391ec126d079cf1bd178e62ad5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:59:42 +00:00
Richard Purdie
8ead7dc3cc bitbake: BBHandler/ast: Simplify/fix EXPORT_FUNCTIONS usage
The current usage of EXPORT_FUNCTIONS is rather problematic since a class
list (classes) is passed into the ast statement and cached as it was
when first parsed. This class list may be different in other cases but
is locked once in the cache.

Worse, the construction of classes can be broken by exceptions during parsing
at the wrong moments since the state of the parser is not always reset
correctly. This can lead to leakage of other classes into the classes list.

The current EXPORT_FUNCTIONS implementation looks at the last two currently
inherited classes and sets up an indirect function call view the second last
class inherited, e.g.:

 do_configure calls gnomebase_do_configure
 gnomebase_do_configure calls autotools_do_configure

This intermediary doesn't seem to serve a useful purpose.

This patch therefore makes builds deterministic and fixes various cache problems
and indirection by removing the intermediaries and simply performing
directly mapping for the cases where its needed.

(Bitbake rev: 9fc98f96f0e0320beda0ce9546275a99336732c1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:59:42 +00:00
Richard Purdie
f823f0a0c0 bitbake.conf/utils: Drop some OVERRIDES from FILESPATH
There are several overrides that don't make sense as part of FILESPATH. This
introduces FILESOVERRIDES and allows us to drop some of the pointless ones,
simplifying the files search path further and improving the user experience.

If needed by specific recipes, other overrides can be added back in for
specific cases.

(From OE-Core rev: b8b1b39961332c99d62ee466f7859bd62a0f806f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:36 +00:00
Laurentiu Palcu
a190aba525 x11vnc: bind vnc server to port 5900
At the moment, if one clicks on X11VNC Server icon, a new vnc server is
started on an automatically assigned port (starting with 5900). The
problem is that the user can click multiple times on the icon and a new
vnc server is started on another port. So, we'll end up with multiple
vnc servers, wasting memory.

This patch will restrict the x11vnc server port to 5900 (default VNC
port) and another process will not be started (because the port is
already used), unless the user chooses to start the server manually,
from the command line, in which case the port can be changed as the
user wishes.

[YOCTO #3369]

(From OE-Core rev: 8f7bd81f4769984a5acdb40f3a76e290615c3020)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:36 +00:00
Constantin Musca
9240695462 package.bbclass: prepend MLPREFIX to LOCALEBASEPN
We need to prepend MLPREFIX to LOCALEBASEPN in order to
fully enable multilib

[YOCTO #3440]

(From OE-Core rev: 91fe09a9a8b317d27145efff4201f1138d6a45d4)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:35 +00:00
Constantin Musca
2437aaee8d multilib.bbclass: fix do_package_qa_multilib
The packages which start with "rtld" are ok

[YOCTO #3440]

(From OE-Core rev: 1bb3f44065d0470dd2f6950e267ef991c2ce6fd5)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:35 +00:00
Cristian Iorga
ab0933e118 build-appliance: Updated to include bblayers.conf.sample fix
In Build Appliance, Hob didn't start because it crashed
checking bblayers.conf

(From OE-Core rev: fb04d8e6404c7ee35b636cf2cb886acfba22b8d7)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:35 +00:00
Cristian Iorga
d4a4d00fb6 build-appliance: provides git proxified acces
Inside Build Appliance, external repos can be
accesed using the git protocol through a proxy

Fixes [YOCTO #3175]

(From OE-Core rev: 938bfe375b6fca3c9281f3c906fba1aca6677aca)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:35 +00:00
Ross Burton
66d92cb3ee mesa-dri: upgrade -git version to current master
license.html was reformated so the checksum changed.

The GLSL compiler can be built using CC_FOR_BUILD, so we don't need
mesa-dri-glsl-native.

Update common packaging to include libdricore and the skeleton libgles3, and
remove the driver .la files.

mesa-git/uclibc.patch isn't applied, remove.

x32 support is integrated into mklib, drop 0003-fix-for-x32.patch.

uclibc is checked for upstream, drop 0001-Compile-with-uclibc.patch.

(From OE-Core rev: 8060a24c679ba17aea48bdeb4b8cfd460885f65f)

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-12-11 15:54:38 +00:00
Ross Burton
a63dc47e56 mesa: upgrade to 8.0.5
Licence checksum change, use an upstream source file instead of a generated
file: we were previously checksumming the Bison license.

(From OE-Core rev: b85388ad0b6c3e7176295949d88c504abf0ba5cc)

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-12-11 15:54:38 +00:00
Ross Burton
cf94122286 mesa: common packaging cleanup
mesa-dri ships the configuration file in mesa 9, so ship that and don't claim
it's empty.   Clean up libegl and libgbm packaging.

(From OE-Core rev: 22549ed65f0e413d7f4375e5eba7c86302a46acd)

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-12-11 15:54:38 +00:00
Chunrong Guo
74b2e40d89 mtd-utils:fix corrupt cleanmarker with flash_erase -j command
*Flash_erase -j should fill discrete freeoob areas with required bytes
     of JFFS2 cleanmarker in jffs2_check_nand_cleanmarker(). Not just fill
     the first freeoob area.

(From OE-Core rev: c8e3fe46df84e782cc1becc4c5a8cd954ef85f34)

Signed-off-by: Chunrong Guo <b40290@freescale.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:54:37 +00:00
Martin Jansa
138669057d nativesdk-qt4-tools: fix do_configure to be reentrant
* without = it can add g++ prefix multiple time when you reexecute do_configure (e.g. after failure)

(From OE-Core rev: 4f891901bcf7be95cebca1a7296e7ea656adee74)

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-12-11 15:54:37 +00:00
Martin Jansa
89230eaa76 qt4: upgrade to 4.8.4
* changes in licenses are only s/Nokia/Digia/

(From OE-Core rev: 5d898695ab3ce368a1d1f2066bb980ee829ae077)

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-12-11 15:54:37 +00:00
Ross Burton
3488973587 package.bbclass: make do_split_packages handle non-existent root directories
This function has different behaviour if the split directory doesn't exist
depending on the recursive argument: non-recursive uses os.listdirs which throws
an exception, recursive uses os.walk which doesn't.

do_split_packages should silently handle non-existent directories because it's
mainly used for plugin directories, which may end up being empty though changing
the distro configuration (for example, connman without wifi distro feature).

So, add an early exit if the split root doesn't exist.

(From OE-Core rev: 937101e3fdd6afd00f6f8a8be411a67110c4ae78)

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-12-11 15:54:36 +00:00
Andy Ross
ec17940f72 base/license.bbclass: handle multiple INCOMPATIBLE_LICENSEs
Allow INCOMPATIBLE_LICENSE to be a whitespace-separated list of
incompatible license strings and/or glob patterns.

Also fix wildcarding: the string in INCOMPATIBLE_LICENSE was clearly
intended to match with wildcards (e.g. "*GPLv3" to match both GPLv3
and LGPLv3), but this was broken because of a bug in return_spdx()
which would die with a runtime error when there was no SPDXLICENSEMAP
entry for the string.

(From OE-Core rev: 8a8d00f4c9f7fe5f9f173b43b86cd18a6c75435c)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:54:36 +00:00
Laurentiu Palcu
82d6ef6a7a populate_sdk_deb.bbclass: put back INSTALL_PACKAGES_NORMAL_DEB
This commit (0b0674ebcd) was also changing
the populate_sdk_deb.bbclass but the deb backend does not support
multilib just yet. So, when compiling the standalone toolchain tarball,
we ended up with an empty tarball if the deb package manager was chosen.

Reverting the deb part until the multilib support is added to deb.

[YOCTO #3532]

(From OE-Core rev: 34baee37caccced13fb26f446b865c9f25edf339)

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-12-11 15:54:36 +00:00
Richard Purdie
52a9ae643f hob-toolchain: Update for removal of dummy classes
Without this hob will fail to parse.

(From OE-Core rev: b63ba9104584c5aa15792fcfe706d59d39235ad0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 12:39:07 +00:00
Richard Purdie
c607095894 bitbake: Revert "BBHandler: Ensure parser state engine is correctly reset for new parsing"
This reverts commit 3dc5e896a97154914cee6c47900e3bb2a2627cdb.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 18:09:01 +00:00
Richard Purdie
e3532498df base.bbclass: Remove implicit dependency on license.bbclass
(From OE-Core rev: 28c06a32201351894546b3095f80daa84acf7b39)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:35:40 +00:00
Jackie Huang
d175cf096b rt-tests: added missing dependencies in Makefile
The following targets missed dependency on librttest.a:
pi_stress
rt-migrate-test
hackbench

[YOCTO #3549]

(From OE-Core rev: 44bdd58494aeb7cef14b7931ba6f6628849f2c19)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:28:21 +00:00
Scott Rifenbark
260fd34e66 documentation: poky-ref-manual - Fixed grammar typo.
(From yocto-docs rev: 1f4da7fb6845407adb0f59f2f1a770f03c5a8f49)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:15 +00:00
Scott Rifenbark
f00ba684e0 Documentation: dev-manual, bsp-guide, poky-ref-manual - bblayer.conf updates
Fixes [YOCTO #3176]

Several places throughout the YP manual set examples are given
for the bblayer.conf file.  For release 1.3, a bug existed that
surfaced when a user removed either the meta or meta-yocto
layer from this configuration file.  The bug has been fixed and
the ripple effect through the YP documentation set affected
several manuals.

Fixes include updating the code samples that show bblayer.conf
so that they now include the BBLAYERS_NON_REMOVABLE variable,
a new glossary entry for the variable, and an explanation of
both BBLAYER and BBLAYER_NON_REMOVABLE in the section that
talks about the bblayer.conf file.

(From yocto-docs rev: 904b9ec1cd6d823af0e92f6891fc7e434cf2e358)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:15 +00:00
Scott Rifenbark
ac1981e41a documentation: Makefile - Added tarfile to the clean target
Clean operation should also remove the *.tgz file.  I added
code so that if the user makes the file and specifies the
'clean' target, the generated tarfile is removed.

(From yocto-docs rev: 565c147eaa169e287278b87e9bba2979a44be9d5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:14 +00:00
Scott Rifenbark
6a6ebdb2ad documentation: kernel-manual - removed white-space
White space at the end of a line in the DocBook .XML files
presents a problem for certain Git commands.  It evidently
shows the white space as red-highlighted errors.  I have removed
the white space from this concepts chapter.

Also, fixed one grammar item.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: dd0ab98a655ae61008d18cef44940622a901c9f6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:14 +00:00
Scott Rifenbark
a21cf1bc5f documentation: kernel-manual - Fixed broken link.
Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: 0fc811748fce26f9c14791a286742905b51e77a6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:14 +00:00
Scott Rifenbark
17938797b2 documentation: poky-ref-manual - PACKAGECONFIG typo corrected.
(From yocto-docs rev: 110ca97f1f1f3b5edacf014c944b79e9a65ebd23)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:13 +00:00
Scott Rifenbark
377aee76f5 documentation: poky-ref-manual - PACKAGECONFIG edits
Fixes [YOCTO #3327]

Applied some edits to make it more accurate based on
Paul Eggleton's review comments.

(From yocto-docs rev: 94c15c9550fba77a2ab079502a62916357de0cf5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:13 +00:00
Richard Purdie
23200858b4 bitbake: BBHandler: Ensure parser state engine is correctly reset for new parsing
The classes variable in particular could be in an odd state if parsing of a
previous recipe had abruptly ended.

(Bitbake rev: 3dc5e896a97154914cee6c47900e3bb2a2627cdb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:13 +00:00
Richard Purdie
25bc944d30 rootfs_ipk/package_ipk: Simplify opkg commandline option variables
The current maze of IPKG_ARGS variables is hard to understand and worse,
not even used in some places. This simplifies the code and specifies the
options in one place.

(From OE-Core rev: 5e482b278c3775b0acecc621cf2d3b90ee516f26)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:12 +00:00
Richard Purdie
0e486c7112 image/populate_sdk: Simplify imagetest inclusion and drop dummy class file
Having to include some dummy class is suboptimal and we no longer need to
do this. Also move this check to populate_sdk_base since we then don't
need to include it in toolchains specifically.

(From OE-Core rev: 2ee979ff71d31e497be856ea1443667c6d799d34)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:12 +00:00
Richard Purdie
e3c2952766 bootimg: Remove now unnecessary dummy inherit usage
bitbake now supports empty expansions for inherit usage so we can simplify
these statements.

(From OE-Core rev: 77cd2ef06bdf701b047c4f8c817b364b8b4b8837)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 17:13:12 +00:00
Elizabeth Flanagan
f42e0ae8d7 license.bbclass: Including locale packages
As locale packages are installed on the image, we should
be including them in the package/license manifest.

This ensures that the manifests are accurate and complete.

[ YOCTO #2461 ]

(From OE-Core rev: 4578b708ada1ffb99ab542da793977ffb90a9b50)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 16:13:46 +00:00
Mark Hatle
1d61099065 update-alternatives.bbclass: Add missing runtime dependency
When using update-alternatives, there should be a runtime dependency on
${VIRTUAL-RUNTIME_update-alternatives}.  Without this, it's possible to
get into a situation where the package is not installable.

(If VIRTUAL-RUNTIME_update-alternatives is not defined, no requirement
is added.)

(From OE-Core rev: 8a4c5765fb56d17c3d82ff6db47863e934c9fcbe)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-07 16:13:46 +00:00
Saul Wold
d3154aa9f8 sstate: fix typo
(From OE-Core rev: 17d27fd6e2750e6455f656159da56c3350c4b3cd)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 22:59:10 +00:00
Richard Purdie
dd3ad7f7f3 sstate: fix typo
(From OE-Core rev: 10cceb3854acd5c619d81011bac02da11ed580d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 16:36:08 +00:00
Martin Jansa
68d62ffe8b git: fix unpackaged python files
* EXTRA_OEMAKE is needed after inheriting autotools which sets it to empty
* fixes:
git-1.7.7: git: Files/directories were installed but not shipped
  /usr/lib64
  /usr/lib64/python2.7
  /usr/lib64/python2.7/site-packages
  /usr/lib64/python2.7/site-packages/git_remote_helpers-0.1.0-py2.7.egg-info
  /usr/lib64/python2.7/site-packages/git_remote_helpers
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/util.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/__init__.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/importer.py
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/exporter.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/repo.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/git.pyc
  /usr/lib64/python2.7/site-packages/git_remote_helpers/git/non_local.py

* fixes [YOCTO #3344]

(From OE-Core rev: 8231e9d455c71fe1bd3c4776985ff775c6af3f6d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 16:36:08 +00:00
Laurentiu Palcu
ade680a28f populate_sdk_base, adt_installer_internal: fix issue on older distributions
This patch addresses an SDK installer issue on older distributions if
the installation takes place in another directory than the default one. In
fact, is all about the 'file' utility version used for determining if a
file is a text file. For example, for a perl script, newer 'file' versions
return:
"...script, ASCII text executable"
while older versions return:
"...script text executable"
Hence the regex pattern didn't match the scripts.

Also the patch contains two unrelated minor fixes:
 * return an exit code of 1 instead of -1 when installation machine is
   not supported. That because on an older distribution we also get this
   error message: "exit: 9: Illegal number: -1";
 * remove unnecessary $SUDO_EXEC prefix to grep;

[YOCTO #3538]

(From OE-Core rev: e7e23a1e5aae4028e21e37ec09e9d431a9adfbcb)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 16:36:07 +00:00
Ross Burton
0b5772c7f9 mesa: remove atom-pc specific overrides
These bbappends were used so that atom-pc would prefer mesa-dri over mesa-xlib.
We don't have mesa-xlib anymore, so these are not required.

(From meta-yocto rev: bf7e83a980e9df664d79c94fff31189b5abb04ca)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 13:51:38 +00:00
Paul Eggleton
b660a10e47 buildhistory_analysis: fix broken list length checks
Fix erroneous use of .count instead of len(), which unfortunately is not
reported by Python as an error in a numeric comparison.

(From OE-Core rev: 63fd76190f503660119dcc8efdcfc6fbff406c26)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 13:51:38 +00:00
Saul Wold
97a91e81ea sstate: fetch .siginfo files from SSTATE_MIRROR
This would be useful for doing siginfo compares to understand why a build
is not reusing something when using SSTATE_MIRROR. No error will be reported
if it fails to find the .siginfo file

[YOCTO #2898]

[RP: Small tweaks]
(From OE-Core rev: 6d86690330f0d43839b904fced4b4b02cb27b8c6)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:19 +00:00
Khem Raj
a2908e20c4 util-linux: Package systemd files correctly
2.21 has some linking issues with gold on uclibc where mount
program does not work. Its some sort of underlinking.

2.22 did not solve that problem completely either

(From OE-Core rev: 61e7de12a8e735c36ca3285f6a77d7b7cb863207)

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-12-06 12:31:18 +00:00
Andrei Dinu
6a8677696e Added regex functionality to distrodata.bbclass
In order to make the PRS use regexes for the versioning
of packages who have the distros on sourceforge and
for those who have faulty reports.

(From OE-Core rev: 2fe52b23c643d2125867dc9fcc9c01a184a9e238)

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-12-06 12:31:18 +00:00
Saul Wold
ae4a89612b util-linux: rebase remove-lscpu patch
(From OE-Core rev: b7c343fc4ae8c65cdc3e12e5b75257e3780bd2a0)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:18 +00:00
Chen Qi
99e36acfdf qt4-native & ghostscript: update upstream status for their patches
Update the upstream status for patches of long building path.

(From OE-Core rev: 58b83f7dad8f0d252f8028349d734987081b7507)

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-12-06 12:31:18 +00:00
Muhammad Shakeel
6847325ff4 zip: Remove QA warnings: No GNU_HASH in the elf binary
Update the LFLAGS1 in the Makefile to remove warnings:
QA Issue: No GNU_HASH in the elf binary

(From OE-Core rev: 3b41513a63df6636b617eff09ff1ea9574c5e6f0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:17 +00:00
Constantin Musca
ff796edb2f babeltrace: upgrade to 1.0.0
License checksum change due to diff:
15a16,22
>
> * LGPLv2.1
>
> The file include/babeltrace/list.h is licensed under LGPLv2.1. It only
> contains trivial static inline functions and macros, and, therefore,
> including it does not make babeltrace a derivative work on this header.
> Please refer to the LGPLv2.1 license for details.

(From OE-Core rev: 275ea500809e70ba2e432b950311678b2ff4aef6)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:17 +00:00
Constantin Musca
2656c376dc liburcu: upgrade to 0.7.4
License checksum change due to diff:
3c3
< May 10, 2009
> May 15, 2012
59a60,65
>
> * GPLv3 (or later)
>
> The following build-related macro is under GPLv3 (or later):
>
> m4/ax_tls.m4

(From OE-Core rev: dfff77b22880a5078dd1b7fe0d3b4d0145f28545)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Radu Moisan <radu.moisan@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:17 +00:00
Constantin Musca
59a704679c prs: use the PRServer to replace the BB_URI_LOCALCOUNT functionality
- adapt the PRServer to generate an incremental number for every revision set
associated with a (PN, PV)
- use one incrementing value rather than several
- PV becomes 0.1+gitAUTOINC+deadbeefdecafbad_decafbaddeadbeef
- if PV contains 'AUTOINC' set PKGV to the same thing with AUTOINC replaced
with the "auto PR" value
- if the PRServer isn't running replace AUTOINC with 0 (no package feeds, but usual
image creation would work)
- use the PR table with "AUTOINC-${PV-without-SRCREVs}" as key
- modify prexport/primport to address the generated srcrev entries
- this patch addresses the following proposal:
http://lists.linuxtogo.org/pipermail/bitbake-devel/2012-November/003878.html

(From OE-Core rev: b27b438221e16ac3df6ac66d761b77e3bd43db67)

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-12-06 12:31:16 +00:00
Constantin Musca
65049e9fe6 nasm: upgrade to 2.10.05
(From OE-Core rev: eebd134989b32577cb1e59897de25c320e61f03c)

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-12-06 12:31:16 +00:00
Constantin Musca
0845bc2f10 libconvert-asn1-perl: upgrade to 0.26
License md5sum change due to:
- README is removed
- README.md contains license info

(From OE-Core rev: 3c93065cfb53edea920469c8bdfde1dcbf61ff2e)

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-12-06 12:31:16 +00:00
Muhammad Shakeel
6df2a60108 libaio: Remove QA warning: No GNU_HASH in the elf binary
Update the LINK_FLAGS in the Makefile to remove warning:
QA Issue: No GNU_HASH in the elf binary

(From OE-Core rev: 07501f14121a1882f26de66b4ca991392ab45dff)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:16 +00:00
Paul Eggleton
139efd1b33 quicky: tidy up inherit
* inherit qt4x11 which inherits qmake2 and sets DEPENDS already.
* Remove pkgconfig from inherit since quicky doesn't actually use
  pkg-config nor does it produce a .pc file

(From OE-Core rev: 62db8745c1b907ebec222751cd9cb174dd5f2f96)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:15 +00:00
Martin Jansa
49d58b3b9f python-smartpm: don't try to remove /usr/share/share twice
* distutils.bbclass now removes that directory

(From OE-Core rev: 5990bda7e0c21629ac5ecaa2ba9783af5a77a125)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>

Conflicts:
	meta/recipes-devtools/python/python-smartpm_1.4.1.bb
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:15 +00:00
Martin Jansa
792fa1c5f0 at: change initscript dependency from build time to runtime
* doesn't look like build dependency

(From OE-Core rev: de02e36ff17a44ce8cf33c59a78360cb2313f016)

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-12-06 12:31:15 +00:00
Holger Freyther
46eabf3a90 classes/binconfig.bbclass: Allow packages to add sed expressions
packages/apr/apr-util,apr use this, but it not been in the class

patch the config files to be 'installed' and not point to the build
and source-directory.

From OE-Classic:
http://git.openembedded.org/openembedded/commit/?id=030992bdd415c8892cf2925cf6fbe888226be046

[YOCTO #3267]

Orignal Author: Holger Freyther <zecke@selfish.org>
(From OE-Core rev: ab56f1063a666df5faddd97f44758c8ae378e51c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:14 +00:00
Mihai Prica
1e63822166 libpcap: PR bump because of PU for libnl
(From OE-Core rev: ebcd909451ae6a2d00b83f6aa7f28794355a6935)

Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:14 +00:00
Mihai Prica
052b66247e wpa-supplicant: configured to work with libnl 3.2.14
* Updated the configuration file for libnl-3
* Added python include dir path to configuration file

(From OE-Core rev: e328400ec02300be1ce3c8a9f63d8b30f9fe2136)

Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:14 +00:00
Mihai Prica
f57bb216ed libnl: upgrade to 3.2.14
* Based on the 3.2.9 recipe from meta-oe
* Modified the patches to work with the new name of the library file (libnl-3.so)

(From OE-Core rev: a343ced372ba659b3388a09ce615ee9a9127d921)

Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:13 +00:00
Muhammad Shakeel
ef05a7fe17 qa.py: Toolchain path should not be hardcoded to execute objdump
Currently objdump command is invoked from the STAGING_BINDIR_TOOLCHAIN
directory. In case of external toolchain if this directory doesn't
exist then objdump fails to execute. Instead of hardcoding the path
it should search PATH to find it.

(From OE-Core rev: a3a0e29d5d796fdf6755503cc31e45199b79d756)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:13 +00:00
Chen Qi
bec5c30e1c libassuan: add pkgconfig support
Add pkgconfig support to libassuan.

[YOCTO #2453]

(From OE-Core rev: ef2951d052f18be9c5391dce438f5c3fafda3cd5)

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-12-06 12:31:13 +00:00
Chen Qi
1600f72fa8 pth: add pkgconfig support
Add pkgconfig support to pth.

[YOCTO #2453]

(From OE-Core rev: c5f14ef7797394bcee1b0e295cc2dac4b62e55e2)

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-12-06 12:31:12 +00:00
Chen Qi
bd368cf0e6 ICU: add pkgconfig support
Add pkgconfig support to ICU.

[YOCTO #2453]

(From OE-Core rev: a0b553bf00f819c3f0d6744461189179f578a75e)

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-12-06 12:31:12 +00:00
Chen Qi
60fc9a9ef9 libksba: add pkgconfig support
Add pkgconfig support to libksba.

[YOCTO #2453]

(From OE-Core rev: d155ab2277c9ff2778f650a2acefee9b717e3d8f)

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-12-06 12:31:12 +00:00
Bruce Ashfield
d20c23db7c linux-yocto/3.4: inform the fetcher if the meta branch changes
The meta data branch for the kernel can be varied by changing the
KMETA variable, but that change wasn't reflected in the SRC_URI,
which means that the fetcher won't check for changes on that branch
and is a potential source of errors.

Making the meta branch specification KMETA vs meta solves the problem.

(From OE-Core rev: 5bfc678aeb65b50710384e93b64add3a62146908)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:11 +00:00
Bruce Ashfield
35d630ec32 linux-yocto/3.4: emenlow: switch from psb to emgd graphics
Updating the meta branch SRCREVs for the following commit:

[
   meta/emenlow: use emgd instead of psb graphics driver

    This commit essentially does just this:
      Remove all the references of psb patches for emenlow BSP.
      Change the emenlow scc files to use emgd instead of psb.
]

(From OE-Core rev: 06a2b9eb087d1d90213d67dc8fe14c53201afe37)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:11 +00:00
Bruce Ashfield
48e7c26824 linux-yocto/3.4: merge v3.4.19, v3.4.20
Updating the linux-yocto-3.4 trees to incorporate both 3.4.19 and
3.4.20 from the kernel.org -stable team.

(From OE-Core rev: 8ac0c82bb8fe4fe17b6a32b18e57546d21b4d5ef)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:11 +00:00
Constantin Musca
2907c80bf1 puzzles: upgrade to r9712
License checksum change due to:
< Schmidt and Steffen Bauer.
> Schmidt, Steffen Bauer and Lennard Sprong.

(From OE-Core rev: 699b3b4451a7fe88e0dab46c5a781998226e377e)

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-12-06 12:31:11 +00:00
Constantin Musca
efedbc4a8a lighttpd: upgrade to 1.4.32
lighttpd_fix_for_automake-1.12.patch: removed
- included in the new version

(From OE-Core rev: 6b87ac303c1f7357c9630359614b373082a59506)

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-12-06 12:31:10 +00:00
Constantin Musca
bce1cce599 libxslt: upgrade to 1.1.28
(From OE-Core rev: b3f32cd46d8ee8a17037365b9c2ab19bbf542c72)

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-12-06 12:31:10 +00:00
Constantin Musca
53890fb8ce libxcb: upgrade to 1.9
(From OE-Core rev: 39b96435a8199a09c586ca0002ad447bf42058b8)

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-12-06 12:31:10 +00:00
Constantin Musca
d4e8f72ec8 ethtool: upgrade to 3.6
(From OE-Core rev: 22d2ca62df4e1b5edf2881864eb602c1fba83f13)

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-12-06 12:31:09 +00:00
Laurentiu Palcu
fb29d189a2 gconf.bbclass: run postinstalls at rootfs time
(From OE-Core rev: 50b7f625cc2c4b9224726b11b6d4bd192209cc6e)

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-12-06 12:31:09 +00:00
Laurentiu Palcu
9764897616 gdk-pixbuf: generate the pixbuf loader's cache ar rootfs time
This will generate the loaders.cache file for pixbuf, at rootfs time.

(From OE-Core rev: 5ba420bc0e282a1cbf000ce32034ad7ab15c01d5)

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-12-06 12:31:09 +00:00
Laurentiu Palcu
dec1e7fdce gtk-icon-cache: run the icon generation at rootfs time
This change will allow for the icon cache generation at rootfs time and
only once, at the end. So, even though there will be many packages
depending on gtk+, the icon cache generation will be done once.
Hopefully, this will lower the target's first boot time significantly
by using the power of the host machine to generate the cache.

(From OE-Core rev: 74e34f6828771095a25d2c2de89f468b33e359f7)

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-12-06 12:31:09 +00:00
Laurentiu Palcu
fd401f292e rootfs generation: export two new variables to postinst scriptlets
In order for the postinst scriptlets to be able to run once we need to
export the location of the intercept scripts and also the location of
native sysrootfs. The gdk-pixbuf binaries will need the latter because
in order to generate the loaders.cache it will need to scan some shared
libraries that must be native. Even though the output is a text file.

(From OE-Core rev: 927fabf549bb79cc179d2cb0a953dcd515acf464)

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-12-06 12:31:09 +00:00
Laurentiu Palcu
6b76f04195 image.bbclass: run postinst scripts once, at rootfs time
This patch will allow the repeating postinst scriptlets to be run
only once, on host, at do_rootfs time. This will lower the time for
rootfs generation and, also, instead of running some time consuming
scriptlets at target's first boot, we will do on the host.

(From OE-Core rev: 0d239328b1c6b9e4afadad75972d359181fbe1a5)

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-12-06 12:31:08 +00:00
Mark Hatle
dde5e6402a license.bbclass: Avoid grep error message
Touch a file that is later greped to make sure it exists.

(From OE-Core rev: a17bf5d840b5777918f324d26e085498dec86b76)

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-12-06 12:31:08 +00:00
Mark Hatle
4d4915a383 pkgconfig: Add a manual dependency of pkgconfig(pkg-config)
The libtelepathy-glib-dev package contains a .pc file that has a requires
of pkgconfig(pkg-config) > 0.21 in it.  In order to satisfy this requirement
we add a manual RPROVIDE to the pkgconfig package.

(From OE-Core rev: f9ddae16ef31b2c1cd988e1b416a39d516c986c4)

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-12-06 12:31:08 +00:00
Mark Hatle
ca36d34c2e package_deb: Dependencies with a ( or ) in them are invalid in debs
Replace ( or ) with __.  This allows RPM style dependencies to be satisfied
in deb style packages.

(From OE-Core rev: 12acb6bb00ba665571fcfbdb0ef4668ca0a98d5b)

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-12-06 12:31:07 +00:00
Paul Eggleton
2f5da1bc42 shadow: add runtime dependency on base-passwd
This fixes an issue where the shadow package was sometimes getting
installed before base-passwd during rootfs construction with Smart,
which meant the postinstall scripts could not find /etc/passwd and
/etc/group and failed as a result.

(From OE-Core rev: 6a660d39250cc635f7c1b6ae437f8fb40b7aec12)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:07 +00:00
Mark Hatle
2bc0834f85 python-smartpm: Fix incorrect comparison arguments
Built-in provides were not being compared properly within smart.
This was caused by an incorrect argument to the match function.

(From OE-Core rev: 81f8972323a0a89e67f5cc4be247bc8e1b637cc4)

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-12-06 12:31:07 +00:00
Paul Eggleton
b3744b7ead python-smartpm: allow setting arbitrary macros in smart config
Add support for an rpm-extra-macros config option which can be
used to define some extra macros that need to be set for rootfs
construction to work on the host and that don't really warrant
their own specific named config options to be created.

(From OE-Core rev: 0564f7bbe8e06868e107b70d5abbf3dd6c113bad)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:06 +00:00
Paul Eggleton
8d9ee074a4 python-smartpm: support nolinktos and noparentdirs rpm options
Allowing us to turn on these options enables installation of base-files
which contains a symlink to /proc/mounts which is auto-detected as a
dependency and isn't provided by any other package.

(From OE-Core rev: 1f0ad78b8fa739f9a68ed4c7bfae2b6d8586fda2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:06 +00:00
Paul Eggleton
4190b027b4 python-smartpm: don't create /var/tmp on every rpm database open
This directory if present in the rootfs interferes with proper
installation of base-files and doesn't seem to need to be there
for smart/rpm to work in any case.

(From OE-Core rev: 54d227e97ff3498fc2149f96f1ca40452ad21a32)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:06 +00:00
Paul Eggleton
81dded6e95 python-smartpm: fix package metadata not being read from rpm-md feeds
The XML indexes in rpm-md were being parsed incorrectly leading to the
package metadata (e.g. dependencies) not being read.

(From OE-Core rev: bb3abe241ae9d7e62e084cde383ebe1c6b95d825)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:06 +00:00
Paul Eggleton
e60be76f43 python-smartpm: style fixes
* Use ${PN} instead of python-smartpm
* Use multi-line strings instead of multiple single line += (also
  avoiding the confusing "_append +=")
* Use class-native instead of virtclass-native - no difference in
  behaviour, but this keeps things consistent if we have to add
  any target overrides in future.

(From OE-Core rev: 7dbe5004380b97949a7910706364ba57c6c52a33)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:05 +00:00
Paul Eggleton
69b9c6bd0c python-smartpm: add support for recommends
Implement support within Smart for handling RRECOMMENDS relationships
between RPM packages as used by OE. This includes support within the
base system for caching and resolving these relationships as well as
specific support in the RPM backend for reading the information from
packages, and reading the "missingok" flag added to createrepo for
rpm-md feeds.

(From OE-Core rev: 35e3bc90ec3bae824804bd176b3128efdb5b4e2b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:05 +00:00
Paul Eggleton
5443525de8 createrepo: implement support for recommends
Adds a flag into the output metadata to note recommends relationships
in a way that should not break compatibility with clients that don't
understand this flag.

(From OE-Core rev: e7df818182e9e68b2e0fdede20a41d492b776a5b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:05 +00:00
Mark Hatle
a8cee41b3d rpm: Fix Upstream-Status fields
(From OE-Core rev: ee65b00b4ce3f4c27c2a19f079576345d39efb22)

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-12-06 12:31:04 +00:00
Mark Hatle
f47fa1a8c0 rpm: Fixup platform matching code
On ARM systems the platform matching code could fail in some cases, as
the system macros file could override the 'platform' file settings.

(From OE-Core rev: e5f557b3bdaa5bbd632b50824d8f85d2d2aeb221)

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-12-06 12:31:04 +00:00
Mark Hatle
f8b2ec3c94 rpm: Fix rpm relocation macro usage
When RPM is setup to dynamically reconfigure itself at runtime, we need
to avoid hard coded settings for _usrlibrpm and _etcrpm.

(From OE-Core rev: 66573093c44aabbba96d82de9375158e4a4c6f32)

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-12-06 12:31:04 +00:00
Mark Hatle
a6c86d1664 rpm: Move rpmdb_loadcvt from base to dev package
This item is only useful when the various development components are
installed.

(From OE-Core rev: 54247297816e1d8f97667e662bf00d8fefceb6aa)

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-12-06 12:31:03 +00:00
Paul Eggleton
140c7c810d rpm: enable _openall_before_chroot by default
We want this enabled especially for the native case.

(From OE-Core rev: e3c48c11dbe98958c7564f3fc6dbab36d7037973)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:03 +00:00
Mark Hatle
80ad2af71b package_rpm.bbclass: Add the runtime dependencies to the pre/post scriptlets
When the scriptlets are processed in RPM, they have a different dependency
set then the core package.  OE has no way to specify dependencies for the
pre/post scriptlists, so we simply make the runtime dependencies scriptlets
as well.

(From OE-Core rev: c1acac8c46aa75d78634c30de773b28a1466070c)

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-12-06 12:31:03 +00:00
Mark Hatle
990a17c675 tar: Split RMT from tar
After the recent change of the libexecdir definition, the update-alternatives
for the libexec rmt broke.  Fix this by moving rmt from libexec to /sbin.  Also
split the rmt app from tar as it's likely not useful to many users.

(From OE-Core rev: cc5879ce75713506e76481f36d6e45dc3b31948c)

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-12-06 12:31:03 +00:00
Mark Hatle
dbadf6b9f5 cpio: Split RMT from cpio
After the recent change of the libexecdir definition, the update-alternatives
for the libexec rmt broke.  Fix this by moving rmt from libexec to /sbin.  Also
split the rmt app from cpio as it's likely not useful to many users.

(From OE-Core rev: 487d58a98cd9fe4b368f0e7d119f8ff7ac852781)

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-12-06 12:31:02 +00:00
Kang Kai
5283be2305 chkconfig: add link files install_initd and remove_initd
Add link files ${libdir}/lsb/{install,remove}_initd that they are
required by LSB tests. They were created by package lsbsetup, but
lsbsetup was dropped, so create them in chkconfig.

(From OE-Core rev: 268ede582e7b68854965b29a57e865b5fc7deb04)

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-12-06 12:31:02 +00:00
Mario Domenech Goulart
0f872d91f4 pulseaudio: explicitly set --with-database=simple
The default value for --with-database is "auto".  So, if some package
installs a database library and pulseaudio auto detects, that library
will be added to the dependencies list, causing a dependency error at
do_rootfs time.  For example, samba installs libtdb, which is one of
the pulseaudio supported databases.

(From OE-Core rev: 715631e5b8d5fc7dbcc8b8cbca1948f9301e8d68)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:02 +00:00
Khem Raj
a8fa49fbc2 binutils_2.23.1.bb: Correct typo in enable-targets configure option
Drop virtclass override in favor of class override

(From OE-Core rev: b2e2cf532ebbeb7463b45193fa684e785e299c99)

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-12-06 12:31:01 +00:00
Khem Raj
3ae71c74c7 tcmode-default.inc: Use binutils 2.23.1
(From OE-Core rev: 1623c4757e5401570c3405e563d1cfd345a1e636)

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-12-06 12:31:01 +00:00
Khem Raj
0333796a6b oprofile: Include config.h before bfd.h
oprofile uses bfd.h from binutils which now in 2.23+ expects config.h
so lets include it

(From OE-Core rev: cd7aa7440103284a47b96ec176cace8685f720bb)

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-12-06 12:31:01 +00:00
Khem Raj
74c1731163 binutils-2.23.1: Add recipes
backport non regressing patches from 2.23 branch after 2.23.1
release.

(From OE-Core rev: df9b304f7a43c798223606eb5f0e13f7250393fe)

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-12-06 12:31:00 +00:00
Saul Wold
30ce005e3f libusb-compat: Update to 0.1.4
(From OE-Core rev: d7fd4b457ee5b5fedd9cf9d739854c2a8cbb480e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-06 12:31:00 +00:00
Martin Jansa
381c4b69c7 sstate.bbclass: fix detection of owners matching sstate files
* without this patch:
  Python 2.7.3
  >>> sstate_search_cmd = "grep -rl /OE/jansa-test/shr-core/tmp-eglibc/pkgdata/armv7a-vfp-neon-oe-linux-gnueabi/runtime-reverse/vim-common /OE/jansa-test/shr-core/tmp-eglibc/sstate-control --exclude=master.list | sed -e 's:^.*/::' -e 's:\.populate-sysroot::'"
  >>> cmd_array = sstate_search_cmd.split(' ')
  >>> search_output = subprocess.Popen(cmd_array, stdout=subprocess.PIPE).communicate()[0]
  grep: |: No such file or directory
  grep: sed: No such file or directory

* Adding shell=True and using cmd string instead of array makes it work:
  >>> search_output = subprocess.Popen(sstate_search_cmd, shell=True, stdout=subprocess.PIPE).communicate()[0]
  >>> print search_output
  manifest-armv7a-vfp-neon-gvim.package
  manifest-armv7a-vfp-neon-vim-tiny.package
  manifest-armv7a-vfp-neon-vim.package

  But still isn't 100% reliable, I guess it's caused by some other package
  being removed from sstate while grep is already running.
  So sometimes grep can show error on STDERR
  >>> search_output = subprocess.Popen(sstate_search_cmd, shell=True, stdout=subprocess.PIPE).communicate()[0]
  grep: /OE/jansa-test/shr-core/tmp-eglibc/sstate-control/manifest-armv7a-vfp-neon-systemtap.package: No such file or directory

(From OE-Core rev: d84f7d7a12b4271f7b2bfde9fb356d750abff15d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:34:07 +00:00
Enrico Scholz
306761b026 sstate.bbclass: fixed file-conflict check
The value of subprocess.Popen().communicate()[0] is a string.
Checking for '!= None' will always match causing bogus warnings
regarding already staged files.

(From OE-Core rev: acdd76482efc3caf80e9e0b7359be7ca724ae09a)

Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:34:06 +00:00
Martin Jansa
a5b720c4d4 util-linux: use u-a for eject
* 2.22.1 now builds eject which conflicts with eject from eject recipe in meta-oe

(From OE-Core rev: fa5be9499f047f492cc6b07abf16908e321b259e)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:34:06 +00:00
Martin Jansa
7fb6241350 distutils: remove empty datadir/share after it's content is moved to datadir
* fixes a lot of QA warnings about unpackaged /usr/share/share

(From OE-Core rev: 10457e343b27e63b35e0278b00e9c25106b0cc1b)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:34:06 +00:00
Martin Jansa
eedb667235 packagegroup-core-basic: use VIRTUAL-RUNTIME_initscripts and VIRTUAL-RUNTIME_init_manager
(From OE-Core rev: 96970cfa85941db205a7123e3f3349b4ff9c9fbf)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:34:05 +00:00
Ross Burton
5b027d041a gst-meta-base: pull in X11 plugins when using X11
The splitting out of X11 plugins wasn't complete, which lead to no X11 plugins
being installed.

If the X11 distro feature is present, make gst-meta-base depend on
gst-meta-x11-base.  Also make -x11-base RDEPEND on xvimagesink for video
playback performance.

[ YOCTO #3458 ]

(From OE-Core rev: 84956b59ba828c88ede0c2d77c90b59330bcab68)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:26:42 +00:00
Paul Eggleton
7f78064399 qmmp: remove qmake2 from inherit
qt4x11 already inherits qmake2 so it doesn't need to be inherited again.

(From OE-Core rev: ed96c0a6a5a394842777a1413b89d3ea3aabb532)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:26:41 +00:00
Paul Eggleton
166a0ca486 fotowall: tidy up
* inherit qt4x11 which inherits qmake2 and sets DEPENDS already
* Remove pkgconfig from inherit since quicky doesn't actually use
  pkg-config nor does it produce a .pc file
* Move packaging definitions to the end

(From OE-Core rev: e5e6a02923ca28dd6863dcf96c1d0619f049c64a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:26:41 +00:00
Paul Eggleton
3e47343675 meta/lib/oe/sstatesig: fix locating stamp files
Fixes "bitbake-diffsigs -t" for changes to the stamp directory layout,
and this time uses the actual value of STAMP to get the location of
sigdata files in the stamp directory rather than trying to do it
manually, which should be a little more robust.

(From OE-Core rev: 82412ebabb0f89c694327ae38f7e864ee8511e7f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:26:41 +00:00
Laurentiu Palcu
40b4bb068f populate_sdk_base: fix directory creation as normal user
My previous patch removed the mkdir and added it at the end of the
"gaining SUDO rights" block in order to fix directory creation when
installing in a location without proper rights. Unfortunately this
messed up the directory creation as normal user as it will ask for
sudo right in order to create it...

Hopefully, this will fix both cases.

(From OE-Core rev: 86286287d0134ade73f6a282158dde86bf0159e8)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-05 15:26:40 +00:00
Ross Burton
600fde2acd libxkbcommon: make the build do something
In "cleaning up" the package I managed to remove the inherit autotools, so this
recipe didn't actually build anything.

(From OE-Core rev: b7c010e4603c33b1d3e3fcaf99a9375585471ec5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 20:52:02 +00:00
Richard Purdie
ce6199fd98 bitbake: xmlrpc: Unbreak the transport by adding a missing logfile name
I appreciate a fixed value is suboptimal but this is better than not
working at all!

(Bitbake rev: d338a1ad14680af41d218772decd03e98eb2cad5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:02 +00:00
Richard Purdie
7e1e4aeea2 bitbake: uievent: Fix an init race
There is a race where the registerEventHandler() server call may happen in
a different thread to the main UI, causing the main UI to see
httplib.CannotSendRequest exceptions.

This moves the call into the main thread, removing the init race and fixing
errors I was seeing with the xmlrpc backend.

(Bitbake rev: 14cdd3b351d1ab23cb3ea5f853e403a53e67ac1c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:01 +00:00
Cristiana Voicu
e77f0570e8 bitbake: hob: modified how the existence of a variable is checked
(Bitbake rev: 4214ffff2c8a2a1fe66cbade03d2fd9e22a682d2)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:01 +00:00
Laurentiu Palcu
4bec4e7850 populate_sdk_base: mkdir was missing $SUDO_EXEC prefix
mkdir was in the wrong place and missing sudo rights. Hence, the
installation to default location (or any other for which the user didn't
have rights) would fail. Unless the installer itself is run with sudo.

(From OE-Core rev: 555d03c466490ab12b2b1d049736593da2334e97)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:01 +00:00
Zhenhua Luo
2fc707a55c libxml2: update PR to contain INC_PR to reflect the update of inc file
(From OE-Core rev: 4c18e34f113bc46b0619fc8576475694224f8b40)

Signed-off-by: Zhenhua Luo <b19537@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:00 +00:00
Muhammad Shakeel
fafc87112e qa.py: Modify the env for the child process only
Modified environment is only required for new subprocess to execute
objdump command and not for the current process. We should only
modify the copy of env to pass it on to the child.

(From OE-Core rev: cb3b046450b47739daf441a0b964823aff2472e6)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-04 18:02:00 +00:00
Ross Burton
da6c266b11 xserver-xorg: restore packaging for the DRI/DRI2/DBE extensions
Even though the current xserver in oe-core (1.13) doesn't ship these as
standalone extensions, older X servers required by binary drives
(e.g. meta-intel's 1.9) still install them separately.  As the packages didn't
exist in xserver-xorg.inc the extensions were not packaged, and X didn't work.

Revolve this by restoring the package definitions, and moving the upgrade path
dependencies to xserver-xorg_1.13.bb.

(From OE-Core rev: 24b954253dd1aa626835352c4dc8d085a19aae35)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:35 +00:00
Jack Mitchell
25f3c55080 latencytop: add missing signed-off-by and re-add upstream status
When I made a change to this patch in git commit 1b41a4660d0
I accidently removed the Upstream Status line and also didn't
add the required signed-off-by tag.

(From OE-Core rev: b76878810d39310d1061c637a6bb8f4aa9600054)

Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:35 +00:00
Bruce Ashfield
e2e0942a35 kernel-yocto: checkout known branch before leaving do_validate_branches
We should always leave the tree on a BSP branch or master when
do_validate_branches completes to avoid modifying version tracked
files are part of the build process. Modifying these files will lead
to errors when changing branches, since the contents would be lost.

This is evident in the case that a the meta branch is reset to a
known SRCREV and the tree was left on the meta branch. This branch
tracks the meta/meta-series, and other artifacts of the original
tree construction. When the build process runs, it updates these same
files, which creates a conflict when switching branches.

This has been fixed in the tree construction scripts to not track
these files, but a secondary fix is also required of not leaving
the build on these branches, to allow arbitrary trees to be built.

[YOCTO #3413]

(From OE-Core rev: 57397592ff8ec16922604d398c18d53a589be41f)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:35 +00:00
Xin Ouyang
5d8ddf43d2 libxml-sax-base-perl: add recipe for libxml-sax-perl
If libxml-sax-base-perl is not installed on the target, libxml-sax-perl
would be fail to use. So add the recipe.

    # cat > test.pl <<-EOF
    #!/usr/bin/perl
    use XML::SAX;
    EOF
    # perl ./test.pl
    Can't locate XML/SAX/Exception.pm in @INC ...

Also inherit allarch for three perl modules.

(From OE-Core rev: 3230d943699c77f3fe9ce9d9949eae21d825186d)

Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:35 +00:00
yanjun.zhu
07d689aa87 libproxy: Fix for CVE-2012-4504
Reference:https://code.google.com/p/libproxy/source/detail?r=853

Stack-based buffer overflow in the url::get_pac function in url.cpp
in libproxy 0.4.x before 0.4.9 allows remote servers to have an
unspecified impact via a large proxy.pac file.

http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-4504

[YOCTO #3487]

(From OE-Core rev: 821401df8cd79e4878ad87f918b1ce8d0da141ec)

Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:35 +00:00
yanjun.zhu
bca7285d84 squashfs: fix for CVE-2012-4024
Reference:http://squashfs.git.sourceforge.net/git/gitweb.cgi?p=
squashfs/squashfs;a=commit;h=19c38fba0be1ce949ab44310d7f49887576cc123

Fix potential stack overflow in get_component() where an individual
pathname component in an extract file (specified on the command line
or in an extract file) could exceed the 1024 byte sized targname
allocated on the stack.

Fix by dynamically allocating targname rather than storing it as
a fixed size on the stack.

[YOCTO #3513]

(From OE-Core rev: 972ea6c674e10cf23bedbbc581b78baa3f7c7b9b)

Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:34 +00:00
Marko Lindqvist
cab1983d9f libpng: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 844223c8485f4387d938981ff3dfa0e249040b53)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 16:38:34 +00:00
Richard Purdie
73f57eb939 bitbake: data_smart: Improve get_hash to account for overrides and key expansion
An issue was uncovered where changing:

IMAGE_INSTALL_append = "X"

to

IMAGE_INSTALL_append = "X Y"

in local.conf would not get noticed by bitbake. The issue is that
the configuration hash doesn't account for overrides or key expansion.

This patch improves get_hash to account for these. This means the hash
does account for changes like the above.

[YOCTO #3503]

(Bitbake rev: 86bf1f5603e8f98019544e45f51bd0db9a48112a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 15:13:17 +00:00
Richard Purdie
525cc08cc5 bitbake: build.py: Preserve sigdata files in the stamps directory
Leaving the sigdata files around can aid debugging and doesn't harm
anything. This is the easiest way to allow this to happen.

(Bitbake rev: 1f500149ecd533a6edbeea902c3f1e009c755154)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 15:13:17 +00:00
Richard Purdie
7b0ad8ec31 populate_sdk_base: Fix typo
(From OE-Core rev: bb3f086fc44749c586b5046309d179fc3435933e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:51:52 +00:00
Jason Wessel
40c57a487e populate_sdk_base.bbclass: make failure to find ld-linux.so a hard error
The shell archive that populates the external SDK should fail if it
cannot find the ld-linux.so else it will corrupt all binaries because
a random path will be used from the list of executables when dl_path
is empty.

(From OE-Core rev: 206aa794933d41dfb037e9c654c818cd4d4f956d)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:59 +00:00
Martin Jansa
63de425730 tune-cortexa*: add another TUNE which allows to enable cortexa* together with thumb and neon
* like we have with tune-armv7at-neon

(From OE-Core rev: 3337b695ca3af5b894d9c61436c61a1d1750f089)

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-12-03 14:47:58 +00:00
Víctor Enríquez
584b3c47ea arch-armv6: add tunes without vfp enabled
This work was made by Victor Enriquez and then modified by Denis Carikli
who was helped by Mark Hatle comments. And in the end modified by Martin
Jansa to support different ARMPKGARCH and removed explicit -novfp suffix.

The changes are for adding support to armv6-novfp, for building binaries
for armv6 machines without vfp, for example the htc dream.

(From OE-Core rev: 0733e2f8ad82b426c8c40ef753adb9431fa3c359)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Signed-off-by: Víctor Enríquez <victor.quicksilver@gmail.com>
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-12-03 14:47:58 +00:00
Martin Jansa
627ef2bfc9 arch-armv4.inc: add --fix-v4bx to TARGET_LD_KERNEL_ARCH only for armv4 and strongarm1100
* without this patch it does apply --fix-v4bx not only to armv4, but
  also all higher (because they also have armv4 in TUNE_FEATURES)
* it causes SIGILL on armv4t
  http://lists.linuxtogo.org/pipermail/openembedded-devel/2012-November/042298.html
* someone please test on armv4 device (I tested only bitbake -e output
  that it's correctly applied with DEFAULTTUNE == armv4
* maybe we can should fix this in binutils instead (both 2.22 and 2.23
  are affected)

(From OE-Core rev: efe03fc00fc051bede69ced6643a8f25d02eabde)

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-12-03 14:47:58 +00:00
Martin Jansa
d8bb18e2ce arch-arm*: unify appending to TUNE_FEATURES
* that we always use TUNE_FEATURES_tune-arm* variable and add only one TUNE_FEATURE to it
* for bigendian always use littleendian counterpart and append bigendian TUNE_FEATURE

(From OE-Core rev: 1bc205f895c8143e0bde3c4ba0e699cc0b2f0de8)

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-12-03 14:47:58 +00:00
Martin Jansa
37af048936 arch-armv[457]*: fix PACKAGE_EXTRA_ARCHS for bigendian TUNEs
* bigendian should not include little endian PACKAGE_ARCHS

(From OE-Core rev: 42e18249b02280de28fb7159b11e3c7c78a6cb03)

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-12-03 14:47:57 +00:00
Martin Jansa
b0e8c6a83f arch-armv5: fix missing thumb TUNE_FEATURE in armv5t-vfp and following tunes
(From OE-Core rev: 7fbbf13ea5f0f3b4ac93e40ead581de572771a5d)

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-12-03 14:47:57 +00:00
Martin Jansa
6741748aea tune-*: add PACKAGE_EXTRA_ARCHS entries starting with specific ARMPKGARCH
* e.g. arm926ejs DEFAULT tune is compatible with all PACKAGE_EXTRA_ARCHS_tune-armv5te, but needs to list arm926ejs with all possible suffixes too

(From OE-Core rev: ee3e85e3bdd382aca4ad8e2eece44064ee89dcff)

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-12-03 14:47:57 +00:00
Martin Jansa
f06a11b55f tune-cortexa*, tune-xscale: fix ARMPKGARCH
* hf/t/neon/b suffix is added by other ARMPKGSFX* variables, should not be
  part of ARMPKGARCH, otherwise resulting TUNE_PKGARCH have that suffix twice,
  e.g. cortexa8hf-neonhf-neon

(From OE-Core rev: 007a0dec82a33b01541c7f6fcad5d28c47a318ba)

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-12-03 14:47:57 +00:00
Zhenhua Luo
b7a7e6eeba libxml2: add --with-fexceptions in configure flags to support exception handling in C++ programs
Without this flag, the library has a problem with C++ programs using exception handling.

(From OE-Core rev: ff5552a8432298c32aec2ace72656b0d7059dad3)

Signed-off-by: Zhenhua Luo <b19537@freescale.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:57 +00:00
Saul Wold
7f4262a5a4 libusb: Update to 1.0.9
(From OE-Core rev: 644deda668950702c0c35da9fef0a2844db7a9d9)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:56 +00:00
Saul Wold
2f2c6301ea msmtp: Update to 1.4.30
(From OE-Core rev: c15bf389598844560d710504dbd357dc774e8265)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:56 +00:00
Saul Wold
7b90941c9d less: Update to 456
(From OE-Core rev: 601338d8efce91ac89aa1d1fabd4d953f4f36f4b)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:56 +00:00
Saul Wold
86f32f627b ocf-linux: Update to 20120127
README changes to update the CHKSUM
ocf directory is now in main tarball so no need to untar now.

(From OE-Core rev: 445fba6ef2d1ae10e80d73b09fa0d9a0f2a09715)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:56 +00:00
Saul Wold
3d392f5da9 util-linux: Update to 2.22.1
Fix the configure-sbindir test, which was not working correctly
add a patch to configure to correctly test if the prefixes are
conatined in libdir so they don't duplicate.

Removed aarch64 patch since it been merged into this version

Rebased util-linux-ng-replace-siginterrupt.patch

(From OE-Core rev: ac807121ce3ba965f3e2a4f664a60ae4e33ce550)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:55 +00:00
Amy Fong
cc242175cd rsync doesn't create hardlinks for certain files
commit 4205a4c5d959643cf6c186e0939e202fb6006b82
Author: Amy Fong <Amy.Fong@windriver.com>
Date:   Thu Nov 29 09:21:49 2012 -0500

    rsync cannot create hardlink for node file when use option
    --link-dest=DIR.

    By default, rsync's configure file disables certain capabilities when
    crosscompiling.

    Signed-off-by: Amy Fong <Amy.Fong@windriver.com>

(From OE-Core rev: 1e05183289dbf77ebb1e7aa3375525a7d97eaf0f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:55 +00:00
Ming Liu
8880840f36 rootfs_rpm.bbclass: fix a regression introduced by list_installed_packages change
A regression was introduced by commit:190cb591 that it doesn't
consider the situation that some archs contain "_" originally, so it
results in issues when dealing with archs like qemux86_64, x85_64.

Added a conditional statment in to handle that case.

(From OE-Core rev: 8567991639fda8d2a1e88169b86c72e14cc6c82d)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:55 +00:00
Roy.Li
edd8d59771 site/common-linux: move ac_cv_o_nonblock_inherited to site/common-linux
When compiling apr for no-powerpc arch, the flag ac_cv_o_nonblock_inherited
is always set to yes in cross compiling environment. This flag is intended to
think the socket, returned from accept(), inherit file status flags such as
O_NONBLOCK from the listening socket, but socket never inherits file status
from the listening socket on Linux (more information to man accept).

This is Linux-wide behaviour, so move it from meta/site/powerpc32-linux
to site/common-linux.

If ac_cv_o_nonblock_inherited is set to yes on Linux, clients can not access the
same ip address(URL) with Apache web server via http(port 80) and https(port443)
without redirection

(From OE-Core rev: f31a7ed3463e169dc93f36cc0bbe084d3f99772a)

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-12-03 14:47:55 +00:00
Hongxu Jia
1b98ab72e7 populate_sdk_base:tarball installer:add sudo prompt
1.Adds a sudo passwd prompt during installation if the
  user couldn't install on the dir.
2.Adds option -d <dir> to enter dir without prompt.
3.Adds option -y for automatic yes to all prompts, a non-
  interactive method.

[YOCTO# 3153]
[YOCTO# 3309]

(From OE-Core rev: e85e1aace604626914a06dab4663094d6dd9b035)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:47:55 +00:00
Marko Lindqvist
d55945c469 grep: update to upstream version 2.14
(From OE-Core rev: 53294e7c6e4fabc36f0a6a303bfd0e72808e4b41)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:48 +00:00
Saul Wold
85fb3c4bce build-appliance-image: Allow SRCREV to be overriden
This will allow use to automagically set the SRCREV for builds on the
autobuilder. It will still require manual updating for releases.

(From OE-Core rev: ab6c778af4333387e742ddab4e690e43de63f204)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:48 +00:00
Saul Wold
6df7e3438f sysvinit: Update ALTERNATIVES List for utmpdump
(From OE-Core rev: 0eba0fad8d0e73cfbeab515b7796134967741b55)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:47 +00:00
Saul Wold
7a697d0709 cmake: Update to 2.8.10.1
(From OE-Core rev: b109a6e33fc7748de65d1ff76528b302e7f92dd8)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:47 +00:00
Bruce Ashfield
b19ac46bca linux-yocto/3.4: move PREEMPT_NONE to beagleboard standard kernel only
A recent report of the preempt-rt beagleboard kernel not enabling full
-rt preemption out of the box revealed that the existing fix for SD
boot issues (which were fixed by disabling preemption) was the root
cause for the options not being enabled.

Although the fix for the SD card detection issues is still valid, it
also doesn't make sense to apply it to a kernel type that only exists
to support enhanced preemption. Since many variants of the board boot
with preemption enabled, opening the possibility of a boot problem is
acceptable, given that it allows the -rt kernel to be used.

(From OE-Core rev: 1732197b53ba77a49792600c4c8385f4e44fe0bc)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:47 +00:00
Martin Jansa
c0c968804c libcgroup: fix INSANE_SKIP
* that .so file is in cgroups-pam-plugin not PN

(From OE-Core rev: 5039075dec75970ffcdd43db7457df84ed8e9496)

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-12-03 14:32:47 +00:00
Gary Thomas
59aaa92e9d gstreamer: Fix plugin builds
Not all gstreamer plugins have localized documentation trees.

The commit
  commit f50e2984d9411a059b86d6c158e9416fceb84c3d
  Author: Martin Jansa <martin.jansa@gmail.com>
  Date:   Wed Nov 28 15:59:48 2012 +0100
breaks the build for such packages because the file "po/Makefile.in.in"
is not present.

This change allows building without the po/ subdirectory.

(From OE-Core rev: 4f5e5e28aa57b931ed297d08756a76bbcd8258f1)

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:46 +00:00
Martin Jansa
88a9f6db34 rootfs_ipk, package_ipk: drop --force-overwrite
* it was introduced in 2010 by 8c3a7ebac8
  but doesn't seem needed anymore
* also such do_rootfs failure is good indication that runtime packages
  installed are not sane, ignoring this error in do_rootfs just
  transfers the issue to end user when he does "opkg upgrade" later
  on device
* tested on SHR images with whole feed included and only issue was
  gstreamer/gst-plugins-* locale packages (and there is patch for this
  on oe-core ML)

(From OE-Core rev: 1f7d3a2e9071ff78170c06ebf58c7400a5ee09bf)

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-12-03 14:32:46 +00:00
Marko Lindqvist
d65514bf60 readline: apply upstream patches
Upstream does not make bugfix releases but releases patches
to apply on top of original releases. Fetch and apply those patches.

(From OE-Core rev: 30a38ea1ee933fb134a5ee9000298703cab93692)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:46 +00:00
Marko Lindqvist
d0b157c7be glib-2.0: update to upstream version 2.34.3
(From OE-Core rev: db9b8ad76335613e2de1e568a14ae95c68af6288)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:46 +00:00
Otavio Salvador
1b99640481 initramfs-framework: udev: Handle alternative binary paths
This allows use of udev daemon for different installation destinations
so allowing use of udev's from systemd code for initramfs.

(From OE-Core rev: 96daf1b3105e17a67acb5027d0418b2ac28b6820)

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-12-03 14:32:46 +00:00
Marko Lindqvist
21cab67fe1 net-tools: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 5037fef73e2c4d31b06a4422ad1d54f777fe00fa)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:45 +00:00
Marko Lindqvist
2fbe17dfe2 glib-2.0: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: a6e2e5b592747a7e4a8465c8637154555ee020c8)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:45 +00:00
Marko Lindqvist
9545e0b86c ltp: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: c538673caafddbb208d9d18301e84a6a891d7844)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:45 +00:00
Marko Lindqvist
91120a506b xcb: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 4e73f9ae050c01b1356c82e91a73d46cb90d5402)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:45 +00:00
Marko Lindqvist
1dbc6848f0 libdaemon: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 76c186e4bf70a9969a0ce46da2c6a3e8039d8463)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:44 +00:00
Marko Lindqvist
430d4488b9 gmp: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: f9281283c993ab2af81f0316bac5fed7b49bdb83)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:44 +00:00
Marko Lindqvist
108c9ddf7d coreutils: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. Old md5sum was calculated from
the beginning of the file, not from beginning of the license segment.

(From OE-Core rev: 883b7899fe5adce49e1c39cca9854e7f035e7a68)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:44 +00:00
Marko Lindqvist
2c2dfe4f4d uclibc: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. This change has no effect on
md5sum as license segments from the beginning of the file.

(From OE-Core rev: 1699c382b68d183540b088fd7644b936682716fb)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:44 +00:00
Marko Lindqvist
f6a2c743d8 pong-clock: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. This change has no effect on
md5sum as license segments from the beginning of the file.

(From OE-Core rev: 33b28f40ed8765262c3b4ac676cec25bf0b0d523)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:43 +00:00
Marko Lindqvist
4aa17a32aa xorg-app: fix license segment md5sum boundary
Replaced incorrect "startline" with correct "beginline" for telling
where license segment in file begins. This change has no effect on
md5sum as license segments from the beginning of the file.

(From OE-Core rev: 9f3f13a0f761bed4110ef1013d711c1678e03741)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:32:43 +00:00
Chen Qi
202f4ead95 qt4-native: make qt4-native work with long building path
If the TMPDIR has more than 256 chars, building qt4-native fails.
This violates the 410 length limit of TMPDIR.

This patch makes building qt4-native succeed with a long building
path (410 for example) by extending its static arrays' sizes by
256 chars.

[YOCTO #2766]

(From OE-Core rev: a635553cf46a7e43e81eab1a1baeae98312881d2)

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-12-03 14:32:43 +00:00
Chen Qi
e5f6b33b00 ghostscript: make ghostscript work with long building path
If TMPDIR has more than 256 chars, building ghostscript fails.
This violates the 410 length limit of TMPDIR.

This patch makes building ghostscript succeed by changing its
MAX_TOKEN from 256 to 512.

[YOCTO #2766]

(From OE-Core rev: 30a19b7c791abcbf09193c678866df66d470a6d9)

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-12-03 14:32:43 +00:00
Saul Wold
bc33a16984 maintainers: Tweak ownership of recipes
hwlatdetect -> Darren Hart
lttng-modules -> Bogdan Marinescu
mtdev -> Ross Burton

(From meta-yocto rev: 29c5d0f36d7f8eb206f62df0931b32a759576f0a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 14:31:29 +00:00
Scott Rifenbark
951efacceb documentation: poky-ref--manual - Updated PACKAGECONFIG
Fixes [YOCTO #3327]

Re-write of the glossary description for the
PACKAGECONFIG variable.  This went through a couple of
iterations.  Paul Eggleton reviewed and provided
technical information.

(From yocto-docs rev: 7edf3d03bc4a448516f24caea4b49423a026885f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:53:01 +00:00
Scott Rifenbark
dbab91af5e documentation: poky.ent - Added python-xml to OpenSUSE essentials
Fixes [YOCTO #2843]

The poky.ent file has variables to list the essential host
development system packages required to build a headless
system.  The OpenSUSE distro requires python-xml.  I also
inserted some carriage returns and line continuation characters
in the strings for all the distros so that they are formatted
better in the resulting manuals.

(From yocto-docs rev: addbd0da1a35addcdd8a3d1bdf3812db68d96b2f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:53:00 +00:00
Scott Rifenbark
0f0db8afde documentation: dev-manual - Updated installing YP eclipse plugin from code
Fixes [YOCTO #3445]

Updated the "Installing the Plug-in Using the Latest Source Code"
section for the Eclipse section.  This was pretty much out of
whack.  I have created new steps that involve running the setup
script and then running the build script.  The new information
still needs a review.

(From yocto-docs rev: 5903964a9583c6051abefa4a7b944b59a76825b4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:53:00 +00:00
Scott Rifenbark
7c88384bb2 documentation: dev-manual - Updated collaboration section
Fixes [YOCTO #3274]

I have added a new area at the bottom of the current
"Using the Yocto Project in a Team Environment" section.
This section is the spot for addressing what Richard Purdie
coined as "How to use YP in a work group."  For now, the
changes are based on the information that Richard placed in
the Bugzilla entry.  Presumably we can build on this information.

(From yocto-docs rev: 92c5d1b6ac6b553fab19410170364dca40123c59)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:53:00 +00:00
Scott Rifenbark
518efae890 documentation: yocto-project-qs - Modified PREMIRRORS example
I updated the example to match the more elegant solution
provided in Robert P. J. Day's wiki.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: 209d6205b4fc6a4010f440ba7e0e2018217a0a0b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:53:00 +00:00
Scott Rifenbark
5b41087b3e documenation: dev-manual - Updates to dev shell section
Fixes [YOCTO #2909]

Applied a few changes based on Paul Eggleton's review
of the section.

(From yocto-docs rev: 54c2b1577ba062e09a8df14767257147e33a939f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:59 +00:00
Scott Rifenbark
095bdd85ed documentation: poky-ref-manual - method for discovering features
Fixes [YOCTO #3292]

Added a bit to the start of the Features chapter to give the user
a method they can use to discover recipes that are checking for
features added to the image.

(From yocto-docs rev: 261cc16ad900f7f5254fa97dab82beab94f717d3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:59 +00:00
Scott Rifenbark
5fd4f1ad05 documentation: yocto-project-qs - Fixed two links.
Two links to the wiki were pointing to diff pages and not the
actual pages.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
(From yocto-docs rev: 7339ea7b0a3869570c9097146a49dfd758527197)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:58 +00:00
Scott Rifenbark
429ce39f75 documentation: poky-ref-manual, dev-manual - deveshell handling
Fixes [YOCTO #2909]

Updated the "Using a Development Shell" in the dev-manual to note
that the OE_TERMINAL variable is the thing that controls what
terminal is spawned.  Added a reference into the new
variable description.

In the poky-ref-manual, I created a new glossary description for
the OE_TERMINAL variable.

(From yocto-docs rev: 25001eba312c4109b4aaa79b334d27e144ef0d3f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:58 +00:00
Scott Rifenbark
6e17ba9cc3 documentation: poky-ref-manual, dev-manual - devshell behaviour
Fixes [YOCTO #2909]

Updated the section on using a development shell
(From yocto-docs rev: 37b43dcb19dda747b7e90ac2e393dad29e9d87a5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:57 +00:00
Scott Rifenbark
04cb323e66 documentationo: poky-ref-manual - Added example to MACHINE_FEATURES.
Fixes [YOCTO #3292]

Provided a specific example for how adding a feature through
the MACHINE_FEATURES variable can affect the build.

(From yocto-docs rev: a768c88c73ef15a1e40e2547b6bb12ef276472b5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:57 +00:00
Scott Rifenbark
e1eb798cd3 documentation: poky-ref-manual - edits to machine and distro features
Fixes [YOCTO #3292]

I added more detail about the list of machine and distro features
to the introductory paragraphs of these sections.  This information
came from Paul Eggleton.

(From yocto-docs rev: a032f8e49222f6b628eb7d337b967da51a3d7581)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:57 +00:00
Scott Rifenbark
4c2b2fc324 documentation: poky-ref-manual - new COMBINED_FEATURES variable.
Fixes [YOCTO #3292]

Partial fix for this bug.

(From yocto-docs rev: 300d23b29d8abf236cbfa6f2630322c58ca67854)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:57 +00:00
Scott Rifenbark
6a29362802 documentation: poky-ref-manual - typo fixed.
(From yocto-docs rev: 662737a6306514ec806de725e42ba3e6c3db8aab)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:56 +00:00
Scott Rifenbark
fa30b8b563 documentation: poky-ref-manual - edits to build history section.
Applied some review comments from Paul Eggleton on the new
build history section.  Some minor re-phrasing.

(From yocto-docs rev: 986b0e7d2a79141d7c8dea0062cd25970a74fa57)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:56 +00:00
Scott Rifenbark
decd7785ad documentation: adt-manual - Fixed autotools command-line example.
Re-ran this using Danny and the configure.in command does
not need a AC_CONFIG_HEADERS statement so I removed it.

Also fixed a typo for the touch command s/ChangeLog/ChangLog

(From yocto-docs rev: 51aab0d5af1067f4144dacd3e53964aa6e00c2b0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:56 +00:00
Scott Rifenbark
c11c2da697 documentation: adt-manual - Fixed configure command syntax
The example configure command did not have the correct shell
syntax.  I changed it to "./configure".

(From yocto-docs rev: a14ab06b78248cbf7caead26ee27a9d23e75d2ef)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:56 +00:00
Scott Rifenbark
55530d42e7 documentation: adt-manual - autotools-based projects
Fixes [YOCTO #2645]

In the section that describes how to build a toolchain using
bitbake meta-toolchain, I updated the note about the MACHINE
and SDKMACHINE variables.  These needed to be pointed out
to the user as important variables for correct settings
before generating the toolchain.

I added a new section for the autotools-based programs that
now includes a simple "Hello World" example.  This section
precedes the section that describes how to pass host options
to configure.sh.

(From yocto-docs rev: 9849e7b94d42a851f30f0fba8ae60916697956dd)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:55 +00:00
Scott Rifenbark
e197fca49c documentation: poky-ref-manual - default info for BB_DISKMON_INTERVAL
Fixes [YOCTO #3364]

Added information about the default behavior for the
BB_DISKNOM_INTERVAL variable.

(From yocto-docs rev: db1c6c4e9cd749109580aa6b135f6f84f3fe652d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:55 +00:00
Scott Rifenbark
ba0f4df644 documentation: poky-ref-manual, dev-manual - optional module packaging
Fixes [YOCTO_#3366]

Created a new section titled "Handling Optional Module Packaging"
in the dev-manual.  This section is based on the wiki page
that Paul Eggleton authored.

Created a new glossary entry for PACKAGES_DYNAMIC in the
poky-ref-manual.

(From yocto-docs rev: 5af3da5e2af15c33e5e6eb7a9ef3ab3c0923284f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:55 +00:00
Scott Rifenbark
c2f14db4e0 documentation: several manuals - Notes and links for filename space issue
Fixes [YOCTO_#3396]

Spaces in file and directory names is an issue for the build
system and throws an error when sourcing the environment
setup script.  I added key notes in several areas of the doc
set.  I also added some cross-references to the oe-init-build-env
section in some other areas where running the script is discussed.

(From yocto-docs rev: 1d102e91ba77391096749bd7df6c05b2b695b33f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:55 +00:00
Scott Rifenbark
dab49aa644 documentation: poky-ref-manual, mega-manual, Makefile - new variables
Added variable descriptions for BB_DISKMON_DIRS and
BB_DISKMON_WARNINTERVAL.  These went in the reference
manual in the glossary section.  First draft for both
descriptions.

Also, updated the Makefile to include two new figures used
in the Build History section.  The figures needed to be added
to the TARFILE variable so that the .PNG files are included
when publishing both the poky-ref-manual and the mega-manual.

Added two figures to the figures directories of the poky-ref-manual
and the mega-manual.  These figures are part of the new Build
History section.  Anytime you add a figure to any manual you
also have to store it in the figures directory of the mega-manual.

(From yocto-docs rev: bbf68ed28ba8660af34d4cae146fb172ca4e681e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:55 +00:00
Scott Rifenbark
255ca146cc documentation: poky-ref-manual - New Build History section added.
First draft of this new section.  Information based on Paul
Eggleton's wiki.

(From yocto-docs rev: b459d68ab7dd51b258fd378ad15260cba4522dc4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:54 +00:00
Scott Rifenbark
128b6be901 documentation: poky-ref-manual - Better wording for build section
I improved the wording such that it is not confusing between the
information in reference manual's section on running a build and
the general overview presented in the YP Quick Start.

(From yocto-docs rev: 17e2fc34941612589b8ddf3314a4760e9c2f402d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:54 +00:00
Scott Rifenbark
f184d585de documentation: adt-manual - Added information for required packages
The note alerting the user to required host development packages
necessary for ADT installation and use was antiquated and did
not point to the new structure, which is in the YP Reference
Manual.  I updated the information.

(From yocto-docs rev: edced821838391315fb2f12488cffec9f08eb78c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:54 +00:00
Scott Rifenbark
3ebfe99481 documentation: poky-ent - changed 'awk' to 'gawk'
(From yocto-docs rev: 9206a72d21eda6a8a8b5a612833c11441cd8b305)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:54 +00:00
Scott Rifenbark
a01f335f3d documentation: prepare for 1.4
Made changes to the poky.ent file to change the three variables
needed to build manuals for 1.4.

Made new entries in the manual revision history tables for the
five manuals that have them.  Each entry shows the "TBD" release
coming up.

(From yocto-docs rev: f7f75a238d709698f1582ce22e209c09ee60581b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:53 +00:00
Ross Burton
2e6924e74d guile: touch compiled modules on sstate install
When guile is installed from sstate, if the compiled files get a modified time
older than the source files then guile will produce warnings like this:

;;; note: source file /data/poky-master/tmp/sysroots/x86_64-linux/usr/share/guile/2.0/ice-9/boot-9.scm
;;; newer than compiled /data/poky-master/tmp/sysroots/x86_64-linux/usr/lib/guile/2.0/ccache/ice-9/boot-9.go

Not staging the files and letting guile re-compile them on demand won't work:

;;; compiling /data/poky-master/tmp/sysroots/x86_64-linux/usr/share/guile/2.0/system/base/compile.scm
;;; it seems /data/poky-master/tmp/sysroots/x86_64-linux/usr/share/guile/2.0/system/base/compile.scm
;;; is part of the compiler; skipping auto-compilation

So, use a sstate postinst function to explicitly touch the compiled files after
the extraction to ensure that they are fresher.

[ YOCTO #3370 ]

(From OE-Core rev: cb8fbc332f730cbb4d9c9866ee7b95d62245d121)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:08 +00:00
Ross Burton
48db13e7a5 guile: fix bashism in script
(From OE-Core rev: 3d5050d281e9535d1931848fe6c0adb4e7afd629)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:08 +00:00
Marko Lindqvist
13180a97d6 pango: update to upstream version 1.30.1
(From OE-Core rev: 82720dd1aa2594cc308130da4db4ff600263ac74)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:07 +00:00
Otavio Salvador
3d943dbac4 initramfs-framework: init: Stop mount warnings during boot
For a completely quiet boot using recent versions of utilities, the
/etc/fstab and /var/lock need to be available.

(From OE-Core rev: d7a8154d575f918a0a20cb0e3a8f65d02ed32f30)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:07 +00:00
Ming Liu
48e657f654 rootfs_rpm.bbclass: normalize arch output of list_installed_packages
list_installed_packages should output uniform formatted archs for all
packaging system(deb, rpm and ipk), for they are used by common code to
grab the package infos. Otherwise, it will lead some -dbg packages to be
missed processing in come cases.

It's introduced by commit: fc985f51, package_rpm.bbclass: fix the arch
(replace "-" with "_").

Fixed by replacing "_" back to "-" in list_installed_packages, make it
output real arch values which can be safely used.

(From OE-Core rev: 554f2436435bf96c6735827f491c1b78b198c016)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:07 +00:00
Laurentiu Palcu
b751ec137d populate_sdk_base: tarball installer: SDK overwrite warning
This patch contains two fixes:
  * if the user wants to install the SDK in a directory that already
    contains a SDK for the same architecture, a warning will be shown;
  * when the symbolic links are relocated use -n option. Otherwise,
    symbolic links to existing directories will be created in the
	directory itself;

[YOCTO #3401]

(From OE-Core rev: cd035f170a2448b9ebcf0cfac5d4c0fa472b7049)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:06 +00:00
Eric Bénard
5756d9fafb subversion: update to 1.7.7
- fix WARNING: Failed to fetch URL http://www.apache.org/dist/subversion/subversion-1.7.6.tar.bz2
- subversion-1.7.6_mod_dontdothat_svnserve_only.patch doesn't seems to be useful,
  cc Marcin to get confirmation

(From OE-Core rev: 60ac9eccd6101967a89ab74344920b4b3ca8cd5f)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Cc: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:06 +00:00
Marko Lindqvist
965f7dd13f ccache: update to upstream version 3.1.8
(From OE-Core rev: a627d8b1ecec394a9e638975f4d39553dc3efba5)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:06 +00:00
Hongxu Jia
9a9710169d slang: explicity disable invoking onig module
We don't implement module onig in our recipes,
so we should explicity disable its invoke in slang
to avoid that slang's configure incorrectly tests
the existence of onig.

[YOCTO #2820]

(From OE-Core rev: 38c1b92f188b7e9b27d7ce3f6a8ffbdd7e19f90d)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:05 +00:00
Jackie Huang
3067a91477 eglibc: Move compile with optimization handling to common code
The optimisation handling code is not version specific, so move the
fix code to the .inc.

(From OE-Core rev: 22dfc7d5738a20f015d9de693f0c2accfa685560)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:05 +00:00
Marko Lindqvist
1c7aa5635a libpng: update to upstream version 1.2.50
License md5sum changed only because libpng version numbers and
release dates mentioned in it.

(From OE-Core rev: b3f99e01c249c34d6083eec3159d5ba6b54df97f)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:05 +00:00
Marko Lindqvist
871040712c cairo: update to upstream version 1.12.8
(From OE-Core rev: 060a9d982bf5e46d30a52c3bc6f17263f750a013)

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:05 +00:00
Andreas Müller
bcfb295be7 gtk+: do not prelight GtkButton in touchscreen mode
(From OE-Core rev: 08119d076853dbf5273c01bb095d2e1618475a57)

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-03 13:52:04 +00:00
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
1754 changed files with 87850 additions and 25007 deletions

15
.gitignore vendored
View File

@@ -1,4 +1,3 @@
bitbake
*.pyc
*.pyo
/*.patch
@@ -7,12 +6,18 @@ pyshtables.py
pstage/
scripts/oe-git-proxy-socks
sources/
meta-*
meta-*/
!meta-skeleton
!meta-demoapps
!meta-hob
hob-image-*.bb
*.swp
*.orig
*.rej
*~
!meta-yocto
!meta-yocto-bsp
bitbake/doc/manual/html/
bitbake/doc/manual/pdf/
bitbake/doc/manual/txt/
bitbake/doc/manual/xhtml/
pull-*/

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,9 +214,10 @@ 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")
if "BBDEBUG" in os.environ:
level = int(os.environ["BBDEBUG"])
if level > configuration.debug:
configuration.debug = level
bb.msg.init_msgconfig(configuration.verbose, configuration.debug,
configuration.debug_domains)
@@ -246,7 +247,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

@@ -28,8 +28,10 @@ import gtk
import optparse
import pygtk
from bb.ui.crumbs.hig import DeployImageDialog, ImageSelectionDialog, CrumbsMessageDialog
from bb.ui.crumbs.hobwidget import HobAltButton, HobButton
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
from bb.ui.crumbs.hig.deployimagedialog import DeployImageDialog
from bb.ui.crumbs.hig.imageselectiondialog import ImageSelectionDialog
# I put all the fs bitbake supported here. Need more test.
DEPLOYABLE_IMAGE_TYPES = ["jffs2", "cramfs", "ext2", "ext3", "btrfs", "squashfs", "ubi", "vmdk"]

View File

@@ -10,8 +10,8 @@ if &compatible || version < 600
finish
endif
" .bb and .bbclass
au BufNewFile,BufRead *.b{b,bclass} set filetype=bitbake
" .bb, .bbappend and .bbclass
au BufNewFile,BufRead *.{bb,bbappend,bbclass} set filetype=bitbake
" .inc
au BufNewFile,BufRead *.inc set filetype=bitbake

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):
@@ -74,11 +74,6 @@ logger.setLevel(logging.DEBUG - 2)
# can result in construction of the various loggers.
import bb.msg
if "BBDEBUG" in os.environ:
level = int(os.environ["BBDEBUG"])
if level:
bb.msg.set_debug_level(level)
from bb import fetch2 as fetch
sys.modules['bb.fetch'] = sys.modules['bb.fetch2']

View File

@@ -29,6 +29,7 @@ import os
import sys
import logging
import shlex
import glob
import bb
import bb.msg
import bb.process
@@ -491,9 +492,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,9 +504,13 @@ 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:
# Preserve sigdata files in the stamps directory
for name in glob.glob(mask):
if "sigdata" in name:
continue
os.unlink(name)
stamp = stamp_internal(task, d, file_name)
# Remove the file and recreate to force timestamp
# change on broken NFS filesystems
@@ -584,9 +591,10 @@ def add_tasks(tasklist, d):
getTask('noexec')
getTask('umask')
task_deps['parents'][task] = []
for dep in flags['deps']:
dep = data.expand(dep, d)
task_deps['parents'][task].append(dep)
if 'deps' in flags:
for dep in flags['deps']:
dep = data.expand(dep, d)
task_deps['parents'][task].append(dep)
# don't assume holding a reference
data.setVar('_task_deps', task_deps, d)

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,26 @@ 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:
import traceback
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 +147,13 @@ class CommandsSync:
"""
Get any command parsed from the commandline
"""
return command.cooker.commandlineAction
cmd_action = command.cooker.commandlineAction
if cmd_action is None:
return None
elif 'msg' in cmd_action and cmd_action['msg']:
raise CommandError(cmd_action['msg'])
else:
return cmd_action['action']
def getVariable(self, command, params):
"""
@@ -186,6 +200,16 @@ class CommandsSync:
filterfunc = params[0]
bb.parse.parse_py.ConfHandler.confFilters.append(filterfunc)
def matchFile(self, command, params):
fMatch = params[0]
return command.cooker.matchFile(fMatch)
def generateNewImage(self, command, params):
image = params[0]
base_image = params[1]
package_queue = params[2]
return command.cooker.generateNewImage(image, base_image, package_queue)
class CommandsAsync:
"""
A class of asynchronous commands

View File

@@ -177,6 +177,8 @@ class BBCooker:
def initConfigurationData(self):
self.configuration.data = bb.data.init()
if self.configuration.show_environment:
self.configuration.data.enableTracking()
if not self.server_registration_cb:
self.configuration.data.setVar("BB_WORKERCONTEXT", "1")
@@ -185,13 +187,7 @@ class BBCooker:
bb.data.inheritFromOS(self.configuration.data, self.savedenv, filtered_keys)
def loadConfigurationData(self):
self.configuration.data = bb.data.init()
if not self.server_registration_cb:
self.configuration.data.setVar("BB_WORKERCONTEXT", "1")
filtered_keys = bb.utils.approved_variables()
bb.data.inheritFromOS(self.configuration.data, self.savedenv, filtered_keys)
self.initConfigurationData()
try:
self.parseConfigurationFiles(self.configuration.prefile,
@@ -239,8 +235,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 +309,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)
@@ -332,6 +334,11 @@ class BBCooker:
parselog.exception("Unable to read %s", fn)
raise
# Display history
with closing(StringIO()) as env:
self.configuration.data.inchistory.emit(env)
logger.plain(env.getvalue())
# emit variables and shell functions
data.update_data(envdata)
with closing(StringIO()) as env:
@@ -690,8 +697,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"):
@@ -1182,6 +1189,25 @@ class BBCooker:
self.server_registration_cb(buildTargetsIdle, rq)
def generateNewImage(self, image, base_image, package_queue):
'''
Create a new image with a "require" base_image statement
'''
image_name = os.path.splitext(image)[0]
timestr = time.strftime("-%Y%m%d-%H%M%S")
dest = image_name + str(timestr) + ".bb"
with open(dest, "w") as imagefile:
imagefile.write("require " + base_image + "\n")
package_install = "PACKAGE_INSTALL_forcevariable = \""
for package in package_queue:
package_install += str(package) + " "
package_install += "\"\n"
imagefile.write(package_install)
self.state = state.initial
return timestr
def updateCache(self):
if self.state == state.running:
return

View File

@@ -158,7 +158,7 @@ def expandKeys(alterdata, readdata = None):
for key in todolist:
ekey = todolist[key]
renameVar(key, ekey, alterdata)
alterdata.renameVar(key, ekey)
def inheritFromOS(d, savedenv, permitted):
"""Inherit variables from the initial environment."""
@@ -166,9 +166,9 @@ def inheritFromOS(d, savedenv, permitted):
for s in savedenv.keys():
if s in permitted:
try:
setVar(s, getVar(s, savedenv, True), d)
d.setVar(s, getVar(s, savedenv, True), op = 'from env')
if s in exportlist:
setVarFlag(s, "export", True, d)
d.setVarFlag(s, "export", True, op = 'auto env export')
except TypeError:
pass
@@ -194,8 +194,7 @@ def emit_var(var, o=sys.__stdout__, d = init(), all=False):
return 0
if all:
commentVal = re.sub('\n', '\n#', str(oval))
o.write('# %s=%s\n' % (var, commentVal))
d.varhistory.emit(var, oval, val, o)
if (var.find("-") != -1 or var.find(".") != -1 or var.find('{') != -1 or var.find('}') != -1 or var.find('+') != -1) and not all:
return 0
@@ -260,6 +259,7 @@ def emit_func(func, o=sys.__stdout__, d = init()):
emit_var(func, o, d, False) and o.write('\n')
newdeps = bb.codeparser.ShellParser(func, logger).parse_shell(d.getVar(func, True))
newdeps |= set((d.getVarFlag(func, "vardeps", True) or "").split())
seen = set()
while newdeps:
deps = newdeps
@@ -273,7 +273,7 @@ def emit_func(func, o=sys.__stdout__, d = init()):
def update_data(d):
"""Performs final steps upon the datastore, including application of overrides"""
d.finalize()
d.finalize(parent = True)
def build_dependencies(key, keys, shelldeps, vardepvals, d):
deps = set()
@@ -357,6 +357,8 @@ def generate_dependencies(d):
def inherits_class(klass, d):
val = getVar('__inherit_cache', d) or []
if os.path.join('classes', '%s.bbclass' % klass) in val:
return True
needle = os.path.join('classes', '%s.bbclass' % klass)
for v in val:
if v.endswith(needle):
return True
return False

View File

@@ -28,7 +28,7 @@ BitBake build tools.
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
import copy, re
import copy, re, sys, traceback
from collections import MutableMapping
import logging
import hashlib
@@ -43,6 +43,42 @@ __setvar_regexp__ = re.compile('(?P<base>.*?)(?P<keyword>_append|_prepend)(_(?P<
__expand_var_regexp__ = re.compile(r"\${[^{}]+}")
__expand_python_regexp__ = re.compile(r"\${@.+?}")
def infer_caller_details(loginfo, parent = False, varval = True):
"""Save the caller the trouble of specifying everything."""
# Save effort.
if 'ignore' in loginfo and loginfo['ignore']:
return
# If nothing was provided, mark this as possibly unneeded.
if not loginfo:
loginfo['ignore'] = True
return
# Infer caller's likely values for variable (var) and value (value),
# to reduce clutter in the rest of the code.
if varval and ('variable' not in loginfo or 'detail' not in loginfo):
try:
raise Exception
except Exception:
tb = sys.exc_info()[2]
if parent:
above = tb.tb_frame.f_back.f_back
else:
above = tb.tb_frame.f_back
lcls = above.f_locals.items()
for k, v in lcls:
if k == 'value' and 'detail' not in loginfo:
loginfo['detail'] = v
if k == 'var' and 'variable' not in loginfo:
loginfo['variable'] = v
# Infer file/line/function from traceback
if 'file' not in loginfo:
depth = 3
if parent:
depth = 4
file, line, func, text = traceback.extract_stack(limit = depth)[0]
loginfo['file'] = file
loginfo['line'] = line
if func not in loginfo:
loginfo['func'] = func
class VariableParse:
def __init__(self, varname, d, val = None):
@@ -114,16 +150,136 @@ class ExpansionError(Exception):
def __str__(self):
return self.msg
class IncludeHistory(object):
def __init__(self, parent = None, filename = '[TOP LEVEL]'):
self.parent = parent
self.filename = filename
self.children = []
self.current = self
def copy(self):
new = IncludeHistory(self.parent, self.filename)
for c in self.children:
new.children.append(c)
return new
def include(self, filename):
newfile = IncludeHistory(self.current, filename)
self.current.children.append(newfile)
self.current = newfile
return self
def __enter__(self):
pass
def __exit__(self, a, b, c):
if self.current.parent:
self.current = self.current.parent
else:
bb.warn("Include log: Tried to finish '%s' at top level." % filename)
return False
def emit(self, o, level = 0):
"""Emit an include history file, and its children."""
if level:
spaces = " " * (level - 1)
o.write("# %s%s" % (spaces, self.filename))
if len(self.children) > 0:
o.write(" includes:")
else:
o.write("#\n# INCLUDE HISTORY:\n#")
level = level + 1
for child in self.children:
o.write("\n")
child.emit(o, level)
class VariableHistory(object):
def __init__(self, dataroot):
self.dataroot = dataroot
self.variables = COWDictBase.copy()
def copy(self):
new = VariableHistory(self.dataroot)
new.variables = self.variables.copy()
return new
def record(self, *kwonly, **loginfo):
if not self.dataroot._tracking:
return
if len(kwonly) > 0:
raise TypeError
infer_caller_details(loginfo, parent = True)
if 'ignore' in loginfo and loginfo['ignore']:
return
if 'op' not in loginfo or not loginfo['op']:
loginfo['op'] = 'set'
if 'detail' in loginfo:
loginfo['detail'] = str(loginfo['detail'])
if 'variable' not in loginfo or 'file' not in loginfo:
raise ValueError("record() missing variable or file.")
var = loginfo['variable']
if var not in self.variables:
self.variables[var] = []
self.variables[var].append(loginfo.copy())
def variable(self, var):
if var in self.variables:
return self.variables[var]
else:
return []
def emit(self, var, oval, val, o):
history = self.variable(var)
commentVal = re.sub('\n', '\n#', str(oval))
if history:
if len(history) == 1:
o.write("#\n# $%s\n" % var)
else:
o.write("#\n# $%s [%d operations]\n" % (var, len(history)))
for event in history:
# o.write("# %s\n" % str(event))
if 'func' in event:
# If we have a function listed, this is internal
# code, not an operation in a config file, and the
# full path is distracting.
event['file'] = re.sub('.*/', '', event['file'])
display_func = ' [%s]' % event['func']
else:
display_func = ''
if 'flag' in event:
flag = '[%s] ' % (event['flag'])
else:
flag = ''
o.write("# %s %s:%s%s\n# %s\"%s\"\n" % (event['op'], event['file'], event['line'], display_func, flag, re.sub('\n', '\n# ', event['detail'])))
if len(history) > 1:
o.write("# computed:\n")
o.write('# "%s"\n' % (commentVal))
else:
o.write("#\n# $%s\n# [no history recorded]\n#\n" % var)
o.write('# "%s"\n' % (commentVal))
class DataSmart(MutableMapping):
def __init__(self, special = COWDictBase.copy(), seen = COWDictBase.copy() ):
self.dict = {}
self.inchistory = IncludeHistory()
self.varhistory = VariableHistory(self)
self._tracking = False
# cookie monster tribute
self._special_values = special
self._seen_overrides = seen
self.expand_cache = {}
def enableTracking(self):
self._tracking = True
def disableTracking(self):
self._tracking = False
def expandWithRefs(self, s, varname):
if not isinstance(s, basestring): # sanity check
@@ -143,6 +299,8 @@ class DataSmart(MutableMapping):
break
except ExpansionError:
raise
except bb.parse.SkipPackage:
raise
except Exception as exc:
raise ExpansionError(varname, s, exc)
@@ -157,10 +315,14 @@ class DataSmart(MutableMapping):
return self.expandWithRefs(s, varname).value
def finalize(self):
def finalize(self, parent = False):
"""Performs final steps upon the datastore, including application of overrides"""
overrides = (self.getVar("OVERRIDES", True) or "").split(":") or []
finalize_caller = {
'op': 'finalize',
}
infer_caller_details(finalize_caller, parent = parent, varval = False)
#
# Well let us see what breaks here. We used to iterate
@@ -177,6 +339,9 @@ class DataSmart(MutableMapping):
# Then we will handle _append and _prepend
#
# We only want to report finalization once per variable overridden.
finalizes_reported = {}
for o in overrides:
# calculate '_'+override
l = len(o) + 1
@@ -189,7 +354,19 @@ class DataSmart(MutableMapping):
for var in vars:
name = var[:-l]
try:
self.setVar(name, self.getVar(var, False))
# Report only once, even if multiple changes.
if name not in finalizes_reported:
finalizes_reported[name] = True
finalize_caller['variable'] = name
finalize_caller['detail'] = 'was: ' + str(self.getVar(name, False))
self.varhistory.record(**finalize_caller)
# Copy history of the override over.
for event in self.varhistory.variable(var):
loginfo = event.copy()
loginfo['variable'] = name
loginfo['op'] = 'override[%s]:%s' % (o, loginfo['op'])
self.varhistory.record(**loginfo)
self.setVar(name, self.getVar(var, False), op = 'finalize', file = 'override[%s]' % o, line = '')
self.delVar(var)
except Exception:
logger.info("Untracked delVar")
@@ -220,9 +397,9 @@ class DataSmart(MutableMapping):
# We save overrides that may be applied at some later stage
if keep:
self.setVarFlag(append, op, keep)
self.setVarFlag(append, op, keep, ignore=True)
else:
self.delVarFlag(append, op)
self.delVarFlag(append, op, ignore=True)
def initVar(self, var):
self.expand_cache = {}
@@ -250,7 +427,10 @@ class DataSmart(MutableMapping):
else:
self.initVar(var)
def setVar(self, var, value):
def setVar(self, var, value, **loginfo):
if 'op' not in loginfo:
loginfo['op'] = "set"
self.expand_cache = {}
match = __setvar_regexp__.match(var)
if match and match.group("keyword") in __setvar_keyword__:
@@ -259,15 +439,22 @@ class DataSmart(MutableMapping):
override = match.group('add')
l = self.getVarFlag(base, keyword) or []
l.append([value, override])
self.setVarFlag(base, keyword, l)
self.setVarFlag(base, keyword, l, ignore=True)
# And cause that to be recorded:
loginfo['detail'] = value
loginfo['variable'] = base
if override:
loginfo['op'] = '%s[%s]' % (keyword, override)
else:
loginfo['op'] = keyword
self.varhistory.record(**loginfo)
# todo make sure keyword is not __doc__ or __module__
# pay the cookie monster
try:
self._special_values[keyword].add( base )
self._special_values[keyword].add(base)
except KeyError:
self._special_values[keyword] = set()
self._special_values[keyword].add( base )
self._special_values[keyword].add(base)
return
@@ -284,6 +471,7 @@ class DataSmart(MutableMapping):
# setting var
self.dict[var]["_content"] = value
self.varhistory.record(**loginfo)
def getVar(self, var, expand=False, noweakdefault=False):
value = self.getVarFlag(var, "_content", False, noweakdefault)
@@ -293,13 +481,17 @@ class DataSmart(MutableMapping):
return self.expand(value, var)
return value
def renameVar(self, key, newkey):
def renameVar(self, key, newkey, **loginfo):
"""
Rename the variable key to newkey
"""
val = self.getVar(key, 0)
if val is not None:
self.setVar(newkey, val)
loginfo['variable'] = newkey
loginfo['op'] = 'rename from %s' % key
loginfo['detail'] = val
self.varhistory.record(**loginfo)
self.setVar(newkey, val, ignore=True)
for i in ('_append', '_prepend'):
src = self.getVarFlag(key, i)
@@ -308,23 +500,34 @@ class DataSmart(MutableMapping):
dest = self.getVarFlag(newkey, i) or []
dest.extend(src)
self.setVarFlag(newkey, i, dest)
self.setVarFlag(newkey, i, dest, ignore=True)
if i in self._special_values and key in self._special_values[i]:
self._special_values[i].remove(key)
self._special_values[i].add(newkey)
self.delVar(key)
loginfo['variable'] = key
loginfo['op'] = 'rename (to)'
loginfo['detail'] = newkey
self.varhistory.record(**loginfo)
self.delVar(key, ignore=True)
def appendVar(self, key, value):
value = (self.getVar(key, False) or "") + value
self.setVar(key, value)
def appendVar(self, var, value, **loginfo):
loginfo['op'] = 'append'
self.varhistory.record(**loginfo)
newvalue = (self.getVar(var, False) or "") + value
self.setVar(var, newvalue, ignore=True)
def prependVar(self, key, value):
value = value + (self.getVar(key, False) or "")
self.setVar(key, value)
def prependVar(self, var, value, **loginfo):
loginfo['op'] = 'prepend'
self.varhistory.record(**loginfo)
newvalue = value + (self.getVar(var, False) or "")
self.setVar(var, newvalue, ignore=True)
def delVar(self, var):
def delVar(self, var, **loginfo):
loginfo['detail'] = ""
loginfo['op'] = 'del'
self.varhistory.record(**loginfo)
self.expand_cache = {}
self.dict[var] = {}
if '_' in var:
@@ -332,10 +535,14 @@ class DataSmart(MutableMapping):
if override and override in self._seen_overrides and var in self._seen_overrides[override]:
self._seen_overrides[override].remove(var)
def setVarFlag(self, var, flag, flagvalue):
def setVarFlag(self, var, flag, value, **loginfo):
if 'op' not in loginfo:
loginfo['op'] = "set"
loginfo['flag'] = flag
self.varhistory.record(**loginfo)
if not var in self.dict:
self._makeShadowCopy(var)
self.dict[var][flag] = flagvalue
self.dict[var][flag] = value
def getVarFlag(self, var, flag, expand=False, noweakdefault=False):
local_var = self._findVar(var)
@@ -349,7 +556,7 @@ class DataSmart(MutableMapping):
value = self.expand(value, None)
return value
def delVarFlag(self, var, flag):
def delVarFlag(self, var, flag, **loginfo):
local_var = self._findVar(var)
if not local_var:
return
@@ -357,23 +564,38 @@ class DataSmart(MutableMapping):
self._makeShadowCopy(var)
if var in self.dict and flag in self.dict[var]:
loginfo['detail'] = ""
loginfo['op'] = 'delFlag'
loginfo['flag'] = flag
self.varhistory.record(**loginfo)
del self.dict[var][flag]
def appendVarFlag(self, key, flag, value):
value = (self.getVarFlag(key, flag, False) or "") + value
self.setVarFlag(key, flag, value)
def appendVarFlag(self, var, flag, value, **loginfo):
loginfo['op'] = 'append'
loginfo['flag'] = flag
self.varhistory.record(**loginfo)
newvalue = (self.getVarFlag(var, flag, False) or "") + value
self.setVarFlag(var, flag, newvalue, ignore=True)
def prependVarFlag(self, key, flag, value):
value = value + (self.getVarFlag(key, flag, False) or "")
self.setVarFlag(key, flag, value)
def prependVarFlag(self, var, flag, value, **loginfo):
loginfo['op'] = 'prepend'
loginfo['flag'] = flag
self.varhistory.record(**loginfo)
newvalue = value + (self.getVarFlag(var, flag, False) or "")
self.setVarFlag(var, flag, newvalue, ignore=True)
def setVarFlags(self, var, flags):
def setVarFlags(self, var, flags, **loginfo):
infer_caller_details(loginfo)
if not var in self.dict:
self._makeShadowCopy(var)
for i in flags:
if i == "_content":
continue
loginfo['flag'] = i
loginfo['detail'] = flags[i]
self.varhistory.record(**loginfo)
self.dict[var][i] = flags[i]
def getVarFlags(self, var):
@@ -391,13 +613,16 @@ class DataSmart(MutableMapping):
return flags
def delVarFlags(self, var):
def delVarFlags(self, var, **loginfo):
if not var in self.dict:
self._makeShadowCopy(var)
if var in self.dict:
content = None
loginfo['op'] = 'delete flags'
self.varhistory.record(**loginfo)
# try to save the content
if "_content" in self.dict[var]:
content = self.dict[var]["_content"]
@@ -414,6 +639,11 @@ class DataSmart(MutableMapping):
# we really want this to be a DataSmart...
data = DataSmart(seen=self._seen_overrides.copy(), special=self._special_values.copy())
data.dict["_data"] = self.dict
data.varhistory = self.varhistory.copy()
data.varhistory.datasmart = data
data.inchistory = self.inchistory.copy()
data._tracking = self._tracking
return data
@@ -474,12 +704,16 @@ class DataSmart(MutableMapping):
def get_hash(self):
data = {}
config_whitelist = set((self.getVar("BB_HASHCONFIG_WHITELIST", True) or "").split())
keys = set(key for key in iter(self) if not key.startswith("__"))
d = self.createCopy()
bb.data.expandKeys(d)
bb.data.update_data(d)
config_whitelist = set((d.getVar("BB_HASHCONFIG_WHITELIST", True) or "").split())
keys = set(key for key in iter(d) if not key.startswith("__"))
for key in keys:
if key in config_whitelist:
continue
value = self.getVar(key, False) or ""
value = d.getVar(key, False) or ""
data.update({key:value})
data_str = str([(k, data[k]) for k in sorted(data.keys())])

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

@@ -30,6 +30,7 @@ from __future__ import print_function
import os, re
import logging
import urllib
import operator
import bb.persist_data, bb.utils
import bb.checksum
from bb import data
@@ -422,10 +423,18 @@ def get_srcrev(d):
if not format:
raise FetchError("The SRCREV_FORMAT variable must be set when multiple SCMs are used.")
autoinc = False
autoinc_templ = 'AUTOINC+'
for scm in scms:
ud = urldata[scm]
for name in ud.names:
rev = ud.method.sortable_revision(scm, ud, d, name)
if rev.startswith(autoinc_templ):
if not autoinc:
autoinc = True
format = "%s%s" % (autoinc_templ, format)
rev = rev[len(autoinc_templ):]
format = format.replace(name, rev)
return format
@@ -721,7 +730,7 @@ def get_file_checksums(filelist, pn):
if checksum:
checksums.append((pth, checksum))
checksums.sort()
checksums.sort(key=operator.itemgetter(1))
return checksums
@@ -963,15 +972,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:
@@ -1033,23 +1045,6 @@ class FetchMethod(object):
logger.info("URL %s could not be checked for status since no method exists.", url)
return True
def localcount_internal_helper(ud, d, name):
"""
Return:
a) a locked localcount if specified
b) None otherwise
"""
localcount = None
if name != '':
pn = d.getVar("PN", True)
localcount = d.getVar("LOCALCOUNT_" + name, True)
if not localcount:
localcount = d.getVar("LOCALCOUNT", True)
return localcount
localcount_internal_helper = staticmethod(localcount_internal_helper)
def latest_revision(self, url, ud, d, name):
"""
Look in the cache for the latest revision, if not present ask the SCM.
@@ -1072,36 +1067,8 @@ class FetchMethod(object):
if hasattr(self, "_sortable_revision"):
return self._sortable_revision(url, ud, d)
localcounts = bb.persist_data.persist('BB_URI_LOCALCOUNT', d)
key = self.generate_revision_key(url, ud, d, name)
latest_rev = self._build_revision(url, ud, d, name)
last_rev = localcounts.get(key + '_rev')
uselocalcount = d.getVar("BB_LOCALCOUNT_OVERRIDE", True) or False
count = None
if uselocalcount:
count = FetchMethod.localcount_internal_helper(ud, d, name)
if count is None:
count = localcounts.get(key + '_count') or "0"
if last_rev == latest_rev:
return str(count + "+" + latest_rev)
buildindex_provided = hasattr(self, "_sortable_buildindex")
if buildindex_provided:
count = self._sortable_buildindex(url, ud, d, latest_rev)
if count is None:
count = "0"
elif uselocalcount or buildindex_provided:
count = str(count)
else:
count = str(int(count) + 1)
localcounts[key + '_rev'] = latest_rev
localcounts[key + '_count'] = count
return str(count + "+" + latest_rev)
return 'AUTOINC+%s' % str(latest_rev)
def generate_revision_key(self, url, ud, d, name):
key = self._revision_key(url, ud, d, name)

View File

@@ -11,8 +11,8 @@ Supported SRC_URI options are:
- branch
The git branch to retrieve from. The default is "master"
this option also support multiple branches fetching, branches
are seperated by comma. in multiple branches case, the name option
This option also supports multiple branch fetching, with branches
separated by commas. In multiple branches case, the name option
must have the same number of names to match the branches, which is
used to specify the SRC_REV for the branch
e.g:
@@ -25,13 +25,13 @@ Supported SRC_URI options are:
- protocol
The method to use to access the repository. Common options are "git",
"http", "file" and "rsync". The default is "git"
"http", "https", "file", "ssh" and "rsync". The default is "git".
- rebaseable
rebaseable indicates that the upstream git repo may rebase in the future,
and current revision may disappear from upstream repo. This option will
reminder fetcher to preserve local cache carefully for future use.
The default value is "0", set rebaseable=1 for rebaseable git repo
remind fetcher to preserve local cache carefully for future use.
The default value is "0", set rebaseable=1 for rebaseable git repo.
- nocheckout
Don't checkout source code when unpacking. set this option for the recipe
@@ -71,11 +71,8 @@ from bb.fetch2 import logger
class Git(FetchMethod):
"""Class to fetch a module or modules from git repositories"""
def init(self, d):
#
# Only enable _sortable revision if the key is set
#
if d.getVar("BB_GIT_CLONE_FOR_SRCREV", True):
self._sortable_buildindex = self._sortable_buildindex_disabled
pass
def supports(self, url, ud, d):
"""
Check to see if a given url can be fetched with git.
@@ -316,38 +313,6 @@ class Git(FetchMethod):
def _build_revision(self, url, ud, d, name):
return ud.revisions[name]
def _sortable_buildindex_disabled(self, url, ud, d, rev):
"""
Return a suitable buildindex for the revision specified. This is done by counting revisions
using "git rev-list" which may or may not work in different circumstances.
"""
cwd = os.getcwd()
# Check if we have the rev already
if not os.path.exists(ud.clonedir):
logger.debug(1, "GIT repository for %s does not exist in %s. \
Downloading.", url, ud.clonedir)
self.download(None, ud, d)
if not os.path.exists(ud.clonedir):
logger.error("GIT repository for %s does not exist in %s after \
download. Cannot get sortable buildnumber, using \
old value", url, ud.clonedir)
return None
os.chdir(ud.clonedir)
if not self._contains_ref(rev, d):
self.download(None, ud, d)
output = runfetchcmd("%s rev-list %s -- 2> /dev/null | wc -l" % (ud.basecmd, rev), d, quiet=True)
os.chdir(cwd)
buildindex = "%s" % output.split()[0]
logger.debug(1, "GIT repository for %s in %s is returning %s revisions in rev-list before %s", url, ud.clonedir, buildindex, rev)
return buildindex
def checkstatus(self, uri, ud, d):
fetchcmd = "%s ls-remote %s" % (ud.basecmd, uri)
try:

View File

@@ -98,7 +98,12 @@ class Hg(FetchMethod):
return "%s identify -i %s://%s/%s" % (basecmd, proto, hgroot, ud.module)
options = [];
if ud.revision:
# Don't specify revision for the fetch; clone the entire repo.
# This avoids an issue if the specified revision is a tag, because
# the tag actually exists in the specified revision + 1, so it won't
# be available when used in any successive commands.
if ud.revision and command != "fetch":
options.append("-r %s" % ud.revision)
if command == "fetch":

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):
@@ -88,7 +87,8 @@ def handle(fn, data, include = 0):
"""Call the handler that is appropriate for this file"""
for h in handlers:
if h['supports'](fn, data):
return h['handle'](fn, data, include)
with data.inchistory.include(fn):
return h['handle'](fn, data, include)
raise ParseError("not a BitBake file", fn)
def init(fn, data):
@@ -134,8 +134,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

@@ -68,7 +68,7 @@ class ExportNode(AstNode):
self.var = var
def eval(self, data):
data.setVarFlag(self.var, "export", 1)
data.setVarFlag(self.var, "export", 1, op = 'exported')
class DataNode(AstNode):
"""
@@ -90,33 +90,53 @@ class DataNode(AstNode):
def eval(self, data):
groupd = self.groupd
key = groupd["var"]
loginfo = {
'variable': key,
'file': self.filename,
'line': self.lineno,
}
if "exp" in groupd and groupd["exp"] != None:
data.setVarFlag(key, "export", 1)
data.setVarFlag(key, "export", 1, op = 'exported', **loginfo)
op = "set"
if "ques" in groupd and groupd["ques"] != None:
val = self.getFunc(key, data)
op = "set?"
if val == None:
val = groupd["value"]
elif "colon" in groupd and groupd["colon"] != None:
e = data.createCopy()
bb.data.update_data(e)
op = "immediate"
val = e.expand(groupd["value"], key + "[:=]")
elif "append" in groupd and groupd["append"] != None:
op = "append"
val = "%s %s" % ((self.getFunc(key, data) or ""), groupd["value"])
elif "prepend" in groupd and groupd["prepend"] != None:
op = "prepend"
val = "%s %s" % (groupd["value"], (self.getFunc(key, data) or ""))
elif "postdot" in groupd and groupd["postdot"] != None:
op = "postdot"
val = "%s%s" % ((self.getFunc(key, data) or ""), groupd["value"])
elif "predot" in groupd and groupd["predot"] != None:
op = "predot"
val = "%s%s" % (groupd["value"], (self.getFunc(key, data) or ""))
else:
val = groupd["value"]
flag = None
if 'flag' in groupd and groupd['flag'] != None:
data.setVarFlag(key, groupd['flag'], val)
flag = groupd['flag']
elif groupd["lazyques"]:
data.setVarFlag(key, "defaultval", val)
flag = "defaultval"
loginfo['op'] = op
loginfo['detail'] = groupd["value"]
if flag:
data.setVarFlag(key, flag, val, **loginfo)
else:
data.setVar(key, val)
data.setVar(key, val, **loginfo)
class MethodNode(AstNode):
def __init__(self, filename, lineno, func_name, body):
@@ -179,44 +199,35 @@ class MethodFlagsNode(AstNode):
data.delVarFlag(self.key, "fakeroot")
class ExportFuncsNode(AstNode):
def __init__(self, filename, lineno, fns, classes):
def __init__(self, filename, lineno, fns, classname):
AstNode.__init__(self, filename, lineno)
self.n = fns.split()
self.classes = classes
self.classname = classname
def eval(self, data):
for f in self.n:
allvars = []
allvars.append(f)
allvars.append(self.classes[-1] + "_" + f)
vars = [[ allvars[0], allvars[1] ]]
if len(self.classes) > 1 and self.classes[-2] is not None:
allvars.append(self.classes[-2] + "_" + f)
vars = []
vars.append([allvars[2], allvars[1]])
vars.append([allvars[0], allvars[2]])
for func in self.n:
calledfunc = self.classname + "_" + func
for (var, calledvar) in vars:
if data.getVar(var) and not data.getVarFlag(var, 'export_func'):
continue
if data.getVar(func) and not data.getVarFlag(func, 'export_func'):
continue
if data.getVar(var):
data.setVarFlag(var, 'python', None)
data.setVarFlag(var, 'func', None)
if data.getVar(func):
data.setVarFlag(func, 'python', None)
data.setVarFlag(func, 'func', None)
for flag in [ "func", "python" ]:
if data.getVarFlag(calledvar, flag):
data.setVarFlag(var, flag, data.getVarFlag(calledvar, flag))
for flag in [ "dirs" ]:
if data.getVarFlag(var, flag):
data.setVarFlag(calledvar, flag, data.getVarFlag(var, flag))
for flag in [ "func", "python" ]:
if data.getVarFlag(calledfunc, flag):
data.setVarFlag(func, flag, data.getVarFlag(calledfunc, flag))
for flag in [ "dirs" ]:
if data.getVarFlag(func, flag):
data.setVarFlag(calledfunc, flag, data.getVarFlag(func, flag))
if data.getVarFlag(calledvar, "python"):
data.setVar(var, " bb.build.exec_func('" + calledvar + "', d)\n")
else:
data.setVar(var, " " + calledvar + "\n")
data.setVarFlag(var, 'export_func', '1')
if data.getVarFlag(calledfunc, "python"):
data.setVar(func, " bb.build.exec_func('" + calledfunc + "', d)\n")
else:
data.setVar(func, " " + calledfunc + "\n")
data.setVarFlag(func, 'export_func', '1')
class AddTaskNode(AstNode):
def __init__(self, filename, lineno, func, before, after):
@@ -288,8 +299,8 @@ def handlePythonMethod(statements, filename, lineno, funcname, modulename, body)
def handleMethodFlags(statements, filename, lineno, key, m):
statements.append(MethodFlagsNode(filename, lineno, key, m))
def handleExportFuncs(statements, filename, lineno, m, classes):
statements.append(ExportFuncsNode(filename, lineno, m.group(1), classes))
def handleExportFuncs(statements, filename, lineno, m, classname):
statements.append(ExportFuncsNode(filename, lineno, m.group(1), classname))
def handleAddTask(statements, filename, lineno, m):
func = m.group("func")

View File

@@ -51,7 +51,6 @@ __infunc__ = ""
__inpython__ = False
__body__ = []
__classname__ = ""
classes = [ None, ]
cached_statements = {}
@@ -75,10 +74,17 @@ def inherit(files, fn, lineno, d):
if not os.path.isabs(file) and not file.endswith(".bbclass"):
file = os.path.join('classes', '%s.bbclass' % file)
if not os.path.isabs(file):
dname = os.path.dirname(fn)
bbpath = "%s:%s" % (dname, d.getVar("BBPATH", True))
abs_fn = bb.utils.which(bbpath, file)
if abs_fn:
file = abs_fn
if not file in __inherit_cache:
logger.log(logging.DEBUG -1, "BB %s:%d: inheriting %s", fn, lineno, file)
__inherit_cache.append( file )
data.setVar('__inherit_cache', __inherit_cache, d)
d.setVar('__inherit_cache', __inherit_cache)
include(fn, file, lineno, d, "inherit")
__inherit_cache = d.getVar('__inherit_cache') or []
@@ -107,7 +113,7 @@ def get_statements(filename, absolute_filename, base_name):
return statements
def handle(fn, d, include):
global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __infunc__, __body__, __residue__
global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __infunc__, __body__, __residue__, __classname__
__body__ = []
__infunc__ = ""
__classname__ = ""
@@ -125,11 +131,10 @@ def handle(fn, d, include):
if ext == ".bbclass":
__classname__ = root
classes.append(__classname__)
__inherit_cache = d.getVar('__inherit_cache') or []
if not fn in __inherit_cache:
__inherit_cache.append(fn)
data.setVar('__inherit_cache', __inherit_cache, d)
d.setVar('__inherit_cache', __inherit_cache)
if include != 0:
oldfile = d.getVar('FILE')
@@ -146,15 +151,17 @@ def handle(fn, d, include):
# DONE WITH PARSING... time to evaluate
if ext != ".bbclass":
data.setVar('FILE', abs_fn, d)
d.setVar('FILE', abs_fn)
statements.eval(d)
if ext == ".bbclass":
classes.remove(__classname__)
else:
try:
statements.eval(d)
except bb.parse.SkipPackage:
bb.data.setVar("__SKIPPED", True, d)
if include == 0:
return ast.multi_finalize(fn, d)
return { "" : d }
if ext != ".bbclass" and include == 0:
return ast.multi_finalize(fn, d)
if oldfile:
d.setVar("FILE", oldfile)
@@ -166,7 +173,7 @@ def handle(fn, d, include):
return d
def feeder(lineno, s, fn, root, statements):
global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __def_regexp__, __python_func_regexp__, __inpython__, __infunc__, __body__, classes, bb, __residue__
global __func_start_regexp__, __inherit_regexp__, __export_func_regexp__, __addtask_regexp__, __addhandler_regexp__, __def_regexp__, __python_func_regexp__, __inpython__, __infunc__, __body__, bb, __residue__, __classname__
if __infunc__:
if s == '}':
__body__.append('')
@@ -193,7 +200,10 @@ def feeder(lineno, s, fn, root, statements):
if s and s[0] == '#':
if len(__residue__) != 0 and __residue__[0][0] != "#":
bb.error("There is a comment on line %s of file %s (%s) which is in the middle of a multiline expression.\nBitbake used to ignore these but no longer does so, please fix your metadata as errors are likely as a result of this change." % (lineno, fn, s))
bb.fatal("There is a comment on line %s of file %s (%s) which is in the middle of a multiline expression.\nBitbake used to ignore these but no longer does so, please fix your metadata as errors are likely as a result of this change." % (lineno, fn, s))
if len(__residue__) != 0 and __residue__[0][0] == "#" and (not s or s[0] != "#"):
bb.fatal("There is a confusing multiline, partially commented expression on line %s of file %s (%s).\nPlease clarify whether this is all a comment or should be parsed." % (lineno, fn, s))
if s and s[-1] == '\\':
__residue__.append(s[:-1])
@@ -225,7 +235,7 @@ def feeder(lineno, s, fn, root, statements):
m = __export_func_regexp__.match(s)
if m:
ast.handleExportFuncs(statements, fn, lineno, m, classes)
ast.handleExportFuncs(statements, fn, lineno, m, __classname__)
return
m = __addtask_regexp__.match(s)

View File

@@ -29,7 +29,7 @@ import logging
import bb.utils
from bb.parse import ParseError, resolve_file, ast, logger
__config_regexp__ = re.compile( r"(?P<exp>export\s*)?(?P<var>[a-zA-Z0-9\-_+.${}/]+)(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?\s*((?P<colon>:=)|(?P<lazyques>\?\?=)|(?P<ques>\?=)|(?P<append>\+=)|(?P<prepend>=\+)|(?P<predot>=\.)|(?P<postdot>\.=)|=)\s*(?!'[^']*'[^']*'$)(?!\"[^\"]*\"[^\"]*\"$)(?P<apo>['\"])(?P<value>.*)(?P=apo)$")
__config_regexp__ = re.compile( r"(?P<exp>export\s*)?(?P<var>[a-zA-Z0-9\-~_+.${}/]+)(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?\s*((?P<colon>:=)|(?P<lazyques>\?\?=)|(?P<ques>\?=)|(?P<append>\+=)|(?P<prepend>=\+)|(?P<predot>=\.)|(?P<postdot>\.=)|=)\s*(?!'[^']*'[^']*'$)(?!\"[^\"]*\"[^\"]*\"$)(?P<apo>['\"])(?P<value>.*)(?P=apo)$")
__include_regexp__ = re.compile( r"include\s+(.+)" )
__require_regexp__ = re.compile( r"require\s+(.+)" )
__export_regexp__ = re.compile( r"export\s+([a-zA-Z0-9\-_+.${}/]+)$" )
@@ -98,15 +98,22 @@ def handle(fn, data, include):
while True:
lineno = lineno + 1
s = f.readline()
if not s: break
if not s:
break
w = s.strip()
if not w: continue # skip empty lines
# skip empty lines
if not w:
continue
s = s.rstrip()
if s[0] == '#': continue # skip comments
while s[-1] == '\\':
s2 = f.readline().strip()
lineno = lineno + 1
if (not s2 or s2 and s2[0] != "#") and s[0] == "#" :
bb.fatal("There is a confusing multiline, partially commented expression on line %s of file %s (%s).\nPlease clarify whether this is all a comment or should be parsed." % (lineno, fn, s))
s = s[:-1] + s2
# skip comments
if s[0] == '#':
continue
feeder(lineno, s, fn, statements)
# DONE WITH PARSING... time to evaluate

View File

@@ -125,6 +125,11 @@ class SQLTable(collections.MutableMapping):
return len(self) < len(other)
def get_by_pattern(self, pattern):
data = self._execute("SELECT * FROM %s WHERE key LIKE ?;" %
self.table, [pattern])
return [row[1] for row in data]
def values(self):
return list(self.itervalues())

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, "bitbake-cookerdaemon.log")
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

@@ -204,8 +204,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 +224,16 @@ 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
if not hasattr(self.builder, 'disk_full'):
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 +241,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 +285,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 +370,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 +416,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 +429,8 @@ class BuildDetailsPage (HobPage):
def open_log_button_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
log_file = "file:///" + log_file
gtk.show_uri(screen=button.get_screen(), uri=log_file, timestamp=0)
def failure_activate_file_bug_link_cb(self, button):
button.child.emit('activate-link', "http://bugzilla.yoctoproject.org")

View File

@@ -38,11 +38,15 @@ from bb.ui.crumbs.builddetailspage import BuildDetailsPage
from bb.ui.crumbs.imagedetailspage import ImageDetailsPage
from bb.ui.crumbs.sanitycheckpage import SanityCheckPage
from bb.ui.crumbs.hobwidget import hwc, HobButton, HobAltButton
from bb.ui.crumbs.hig import CrumbsMessageDialog, ImageSelectionDialog, \
AdvancedSettingDialog, SimpleSettingsDialog, \
LayerSelectionDialog, DeployImageDialog
from bb.ui.crumbs.persistenttooltip import PersistentTooltip
import bb.ui.crumbs.utils
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
from bb.ui.crumbs.hig.simplesettingsdialog import SimpleSettingsDialog
from bb.ui.crumbs.hig.advancedsettingsdialog import AdvancedSettingsDialog
from bb.ui.crumbs.hig.deployimagedialog import DeployImageDialog
from bb.ui.crumbs.hig.layerselectiondialog import LayerSelectionDialog
from bb.ui.crumbs.hig.imageselectiondialog import ImageSelectionDialog
from bb.ui.crumbs.hig.parsingwarningsdialog import ParsingWarningsDialog
hobVer = 20120808
@@ -51,10 +55,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 +86,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 +128,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 +176,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 +444,12 @@ class Builder(gtk.Window):
# Indicate whether the UI is working
self.sensitive = True
# Indicate whether the sanity check ran
self.sanity_checked = False
# save parsing warnings
self.parsing_warnings = []
# create visual elements
self.create_visual_elements()
@@ -455,13 +467,16 @@ 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)
self.handler.connect("data-generated", self.handler_data_generated_cb)
self.handler.connect("command-succeeded", self.handler_command_succeeded_cb)
self.handler.connect("command-failed", self.handler_command_failed_cb)
self.handler.connect("parsing-warning", self.handler_parsing_warning_cb)
self.handler.connect("sanity-failed", self.handler_sanity_failed_cb)
self.handler.connect("recipe-populated", self.handler_recipe_populated_cb)
self.handler.connect("package-populated", self.handler_package_populated_cb)
@@ -540,7 +555,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):
@@ -603,15 +619,18 @@ class Builder(gtk.Window):
# Build image
self.set_user_config()
toolchain_packages = []
base_image = None
if self.configuration.toolchain_build:
toolchain_packages = self.package_model.get_selected_packages_toolchain()
if self.configuration.selected_image == self.recipe_model.__custom_image__:
packages = self.package_model.get_selected_packages()
image = self.hob_image
base_image = self.configuration.initial_selected_image
else:
packages = []
image = self.configuration.selected_image
self.handler.generate_image(image,
base_image,
self.hob_toolchain,
packages,
toolchain_packages,
@@ -746,6 +765,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 +800,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 +851,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
@@ -862,6 +885,15 @@ class Builder(gtk.Window):
response = dialog.run()
dialog.destroy()
def show_warning_dialog(self):
dialog = ParsingWarningsDialog(title = "View warnings",
warnings = self.parsing_warnings,
parent = None,
flags = gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
response = dialog.run()
dialog.destroy()
def show_network_error_dialog(self):
lbl = "<b>Hob cannot connect to the network</b>\n"
msg = "Please check your network connection. If you are using a proxy server, please make sure it is configured correctly."
@@ -885,6 +917,9 @@ class Builder(gtk.Window):
self.show_error_dialog(msg)
self.reset()
def handler_parsing_warning_cb(self, handler, warn_msg):
self.parsing_warnings.append(warn_msg)
def handler_sanity_failed_cb(self, handler, msg, network_error):
self.reset()
if network_error:
@@ -944,10 +979,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 +992,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 +1004,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 +1017,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:
@@ -1004,7 +1040,8 @@ class Builder(gtk.Window):
self.parameters.image_names = []
selected_image = self.recipe_model.get_selected_image()
if selected_image == self.recipe_model.__custom_image__:
linkname = 'hob-image-' + self.configuration.curr_mach
version = self.recipe_model.get_custom_image_version()
linkname = 'hob-image' + version+ "-" + self.configuration.curr_mach
else:
linkname = selected_image + '-' + self.configuration.curr_mach
image_extension = self.get_image_extension()
@@ -1117,6 +1154,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 +1225,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
@@ -1274,7 +1315,7 @@ class Builder(gtk.Window):
dialog.destroy()
def show_adv_settings_dialog(self, tab=None):
dialog = AdvancedSettingDialog(title = "Advanced configuration",
dialog = AdvancedSettingsDialog(title = "Advanced configuration",
configuration = copy.deepcopy(self.configuration),
all_image_types = self.parameters.image_types,
all_package_formats = self.parameters.all_package_formats,
@@ -1310,7 +1351,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 +1365,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 +1530,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:

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,336 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
import hashlib
from bb.ui.crumbs.hobwidget import HobInfoButton, HobButton
from bb.ui.crumbs.progressbar import HobProgressBar
from bb.ui.crumbs.hig.settingsuihelper import SettingsUIHelper
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
from bb.ui.crumbs.hig.proxydetailsdialog import ProxyDetailsDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class AdvancedSettingsDialog (CrumbsDialog, SettingsUIHelper):
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 set_save_button(self, button):
self.save_button = button
def rootfs_combo_changed_cb(self, rootfs_combo, all_package_format, check_hbox):
combo_item = self.rootfs_combo.get_active_text()
modified = False
for child in check_hbox.get_children():
if isinstance(child, gtk.CheckButton):
check_hbox.remove(child)
modified = True
for format in all_package_format:
if format != combo_item:
check_button = gtk.CheckButton(format)
check_hbox.pack_start(check_button, expand=False, fill=False)
modified = True
if modified:
check_hbox.remove(self.pkgfmt_info)
check_hbox.pack_start(self.pkgfmt_info, expand=False, fill=False)
check_hbox.show_all()
def gen_pkgfmt_widget(self, curr_package_format, all_package_format, tooltip_combo="", tooltip_extra=""):
pkgfmt_vbox = gtk.VBox(False, 6)
label = self.gen_label_widget("Root file system package format")
pkgfmt_vbox.pack_start(label, expand=False, fill=False)
rootfs_format = ""
if curr_package_format:
rootfs_format = curr_package_format.split()[0]
rootfs_format_widget, rootfs_combo = self.gen_combo_widget(rootfs_format, all_package_format, tooltip_combo)
pkgfmt_vbox.pack_start(rootfs_format_widget, expand=False, fill=False)
label = self.gen_label_widget("Additional package formats")
pkgfmt_vbox.pack_start(label, expand=False, fill=False)
check_hbox = gtk.HBox(False, 12)
pkgfmt_vbox.pack_start(check_hbox, expand=False, fill=False)
for format in all_package_format:
if format != rootfs_format:
check_button = gtk.CheckButton(format)
is_active = (format in curr_package_format.split())
check_button.set_active(is_active)
check_hbox.pack_start(check_button, expand=False, fill=False)
self.pkgfmt_info = HobInfoButton(tooltip_extra, self)
check_hbox.pack_start(self.pkgfmt_info, expand=False, fill=False)
rootfs_combo.connect("changed", self.rootfs_combo_changed_cb, all_package_format, check_hbox)
pkgfmt_vbox.show_all()
return pkgfmt_vbox, rootfs_combo, check_hbox
def __init__(self, title, configuration, all_image_types,
all_package_formats, all_distros, all_sdk_machines,
max_threads, parent, flags, buttons=None):
super(AdvancedSettingsDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
# bitbake settings from Builder.Configuration
self.configuration = configuration
self.image_types = all_image_types
self.all_package_formats = all_package_formats
self.all_distros = all_distros[:]
self.all_sdk_machines = all_sdk_machines
self.max_threads = max_threads
# class members for internal use
self.distro_combo = None
self.dldir_text = None
self.sstatedir_text = None
self.sstatemirror_text = None
self.bb_spinner = None
self.pmake_spinner = None
self.rootfs_size_spinner = None
self.extra_size_spinner = None
self.gplv3_checkbox = None
self.toolchain_checkbox = None
self.image_types_checkbuttons = {}
self.md5 = self.config_md5()
self.settings_changed = False
# create visual elements on the dialog
self.save_button = None
self.create_visual_elements()
self.connect("response", self.response_cb)
def _get_sorted_value(self, var):
return " ".join(sorted(str(var).split())) + "\n"
def config_md5(self):
data = ""
data += ("PACKAGE_CLASSES: " + self.configuration.curr_package_format + '\n')
data += ("DISTRO: " + self._get_sorted_value(self.configuration.curr_distro))
data += ("IMAGE_ROOTFS_SIZE: " + self._get_sorted_value(self.configuration.image_rootfs_size))
data += ("IMAGE_EXTRA_SIZE: " + self._get_sorted_value(self.configuration.image_extra_size))
data += ("INCOMPATIBLE_LICENSE: " + self._get_sorted_value(self.configuration.incompat_license))
data += ("SDK_MACHINE: " + self._get_sorted_value(self.configuration.curr_sdk_machine))
data += ("TOOLCHAIN_BUILD: " + self._get_sorted_value(self.configuration.toolchain_build))
data += ("IMAGE_FSTYPES: " + self._get_sorted_value(self.configuration.image_fstypes))
return hashlib.md5(data).hexdigest()
def create_visual_elements(self):
self.nb = gtk.Notebook()
self.nb.set_show_tabs(True)
self.nb.append_page(self.create_image_types_page(), gtk.Label("Image types"))
self.nb.append_page(self.create_output_page(), gtk.Label("Output"))
self.nb.set_current_page(0)
self.vbox.pack_start(self.nb, expand=True, fill=True)
self.vbox.pack_end(gtk.HSeparator(), expand=True, fill=True)
self.show_all()
def get_num_checked_image_types(self):
total = 0
for b in self.image_types_checkbuttons.values():
if b.get_active():
total = total + 1
return total
def set_save_button_state(self):
if self.save_button:
self.save_button.set_sensitive(self.get_num_checked_image_types() > 0)
def image_type_checkbutton_clicked_cb(self, button):
self.set_save_button_state()
if self.get_num_checked_image_types() == 0:
# Show an error dialog
lbl = "<b>Select an image type</b>\n\nYou need to select at least one image type."
dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING)
button = dialog.add_button("OK", gtk.RESPONSE_OK)
HobButton.style_button(button)
response = dialog.run()
dialog.destroy()
def create_image_types_page(self):
main_vbox = gtk.VBox(False, 16)
main_vbox.set_border_width(6)
advanced_vbox = gtk.VBox(False, 6)
advanced_vbox.set_border_width(6)
distro_vbox = gtk.VBox(False, 6)
label = self.gen_label_widget("Distro:")
tooltip = "Selects the Yocto Project distribution you want"
try:
i = self.all_distros.index( "defaultsetup" )
except ValueError:
i = -1
if i != -1:
self.all_distros[ i ] = "Default"
if self.configuration.curr_distro == "defaultsetup":
self.configuration.curr_distro = "Default"
distro_widget, self.distro_combo = self.gen_combo_widget(self.configuration.curr_distro, self.all_distros, tooltip)
distro_vbox.pack_start(label, expand=False, fill=False)
distro_vbox.pack_start(distro_widget, expand=False, fill=False)
main_vbox.pack_start(distro_vbox, expand=False, fill=False)
rows = (len(self.image_types)+1)/3
table = gtk.Table(rows + 1, 10, True)
advanced_vbox.pack_start(table, expand=False, fill=False)
tooltip = "Image file system types you want."
info = HobInfoButton(tooltip, self)
label = self.gen_label_widget("Image types:")
align = gtk.Alignment(0, 0.5, 0, 0)
table.attach(align, 0, 4, 0, 1)
align.add(label)
table.attach(info, 4, 5, 0, 1)
i = 1
j = 1
for image_type in sorted(self.image_types):
self.image_types_checkbuttons[image_type] = gtk.CheckButton(image_type)
self.image_types_checkbuttons[image_type].connect("toggled", self.image_type_checkbutton_clicked_cb)
article = ""
if image_type.startswith(("a", "e", "i", "o", "u")):
article = "n"
self.image_types_checkbuttons[image_type].set_tooltip_text("Build a%s %s image" % (article, image_type))
table.attach(self.image_types_checkbuttons[image_type], j - 1, j + 3, i, i + 1)
if image_type in self.configuration.image_fstypes.split():
self.image_types_checkbuttons[image_type].set_active(True)
i += 1
if i > rows:
i = 1
j = j + 4
main_vbox.pack_start(advanced_vbox, expand=False, fill=False)
self.set_save_button_state()
return main_vbox
def create_output_page(self):
advanced_vbox = gtk.VBox(False, 6)
advanced_vbox.set_border_width(6)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Package format</span>'), expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
tooltip_combo = "Selects the package format used to generate rootfs."
tooltip_extra = "Selects extra package formats to build"
pkgfmt_widget, self.rootfs_combo, self.check_hbox = self.gen_pkgfmt_widget(self.configuration.curr_package_format, self.all_package_formats, tooltip_combo, tooltip_extra)
sub_vbox.pack_start(pkgfmt_widget, expand=False, fill=False)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Image size</span>'), expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
label = self.gen_label_widget("Image basic size (in MB)")
tooltip = "Sets the basic size of your target image.\nThis is the basic size of your target image unless your selected package size exceeds this value or you select \'Image Extra Size\'."
rootfs_size_widget, self.rootfs_size_spinner = self.gen_spinner_widget(int(self.configuration.image_rootfs_size*1.0/1024), 0, 65536, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(rootfs_size_widget, expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
label = self.gen_label_widget("Additional free space (in MB)")
tooltip = "Sets the extra free space of your target image.\nBy default, the system reserves 30% of your image size as free space. If your image contains zypper, it brings in 50MB more space. The maximum free space is 64GB."
extra_size_widget, self.extra_size_spinner = self.gen_spinner_widget(int(self.configuration.image_extra_size*1.0/1024), 0, 65536, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(extra_size_widget, expand=False, fill=False)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Licensing</span>'), expand=False, fill=False)
self.gplv3_checkbox = gtk.CheckButton("Exclude GPLv3 packages")
self.gplv3_checkbox.set_tooltip_text("Check this box to prevent GPLv3 packages from being included in your image")
if "GPLv3" in self.configuration.incompat_license.split():
self.gplv3_checkbox.set_active(True)
else:
self.gplv3_checkbox.set_active(False)
advanced_vbox.pack_start(self.gplv3_checkbox, expand=False, fill=False)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Toolchain</span>'), expand=False, fill=False)
sub_hbox = gtk.HBox(False, 6)
advanced_vbox.pack_start(sub_hbox, expand=False, fill=False)
self.toolchain_checkbox = gtk.CheckButton("Build toolchain")
self.toolchain_checkbox.set_tooltip_text("Check this box to build the related toolchain with your image")
self.toolchain_checkbox.set_active(self.configuration.toolchain_build)
sub_hbox.pack_start(self.toolchain_checkbox, expand=False, fill=False)
tooltip = "Selects the host platform for which you want to run the toolchain"
sdk_machine_widget, self.sdk_machine_combo = self.gen_combo_widget(self.configuration.curr_sdk_machine, self.all_sdk_machines, tooltip)
sub_hbox.pack_start(sdk_machine_widget, expand=False, fill=False)
return advanced_vbox
def response_cb(self, dialog, response_id):
package_format = []
package_format.append(self.rootfs_combo.get_active_text())
for child in self.check_hbox:
if isinstance(child, gtk.CheckButton) and child.get_active():
package_format.append(child.get_label())
self.configuration.curr_package_format = " ".join(package_format)
distro = self.distro_combo.get_active_text()
if distro == "Default":
distro = "defaultsetup"
self.configuration.curr_distro = distro
self.configuration.image_rootfs_size = self.rootfs_size_spinner.get_value_as_int() * 1024
self.configuration.image_extra_size = self.extra_size_spinner.get_value_as_int() * 1024
self.configuration.image_fstypes = ""
for image_type in self.image_types:
if self.image_types_checkbuttons[image_type].get_active():
self.configuration.image_fstypes += (" " + image_type)
self.configuration.image_fstypes.strip()
if self.gplv3_checkbox.get_active():
if "GPLv3" not in self.configuration.incompat_license.split():
self.configuration.incompat_license += " GPLv3"
else:
if "GPLv3" in self.configuration.incompat_license.split():
self.configuration.incompat_license = self.configuration.incompat_license.split().remove("GPLv3")
self.configuration.incompat_license = " ".join(self.configuration.incompat_license or [])
self.configuration.incompat_license = self.configuration.incompat_license.strip()
self.configuration.toolchain_build = self.toolchain_checkbox.get_active()
self.configuration.curr_sdk_machine = self.sdk_machine_combo.get_active_text()
md5 = self.config_md5()
self.settings_changed = (self.md5 != md5)

View File

@@ -0,0 +1,44 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class CrumbsDialog(gtk.Dialog):
"""
A GNOME HIG compliant dialog widget.
Add buttons with gtk.Dialog.add_button or gtk.Dialog.add_buttons
"""
def __init__(self, title="", parent=None, flags=0, buttons=None):
super(CrumbsDialog, self).__init__(title, parent, flags, buttons)
self.set_property("has-separator", False) # note: deprecated in 2.22
self.set_border_width(6)
self.vbox.set_property("spacing", 12)
self.action_area.set_property("spacing", 12)
self.action_area.set_property("border-width", 6)

View File

@@ -0,0 +1,95 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 glib
import gtk
from bb.ui.crumbs.hobwidget import HobIconChecker
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class CrumbsMessageDialog(CrumbsDialog):
"""
A GNOME HIG compliant dialog widget.
Add buttons with gtk.Dialog.add_button or gtk.Dialog.add_buttons
"""
def __init__(self, parent=None, label="", icon=gtk.STOCK_INFO, msg=""):
super(CrumbsMessageDialog, self).__init__("", parent, gtk.DIALOG_MODAL)
self.set_border_width(6)
self.vbox.set_property("spacing", 12)
self.action_area.set_property("spacing", 12)
self.action_area.set_property("border-width", 6)
first_column = gtk.HBox(spacing=12)
first_column.set_property("border-width", 6)
first_column.show()
self.vbox.add(first_column)
self.icon = gtk.Image()
# We have our own Info icon which should be used in preference of the stock icon
self.icon_chk = HobIconChecker()
self.icon.set_from_stock(self.icon_chk.check_stock_icon(icon), gtk.ICON_SIZE_DIALOG)
self.icon.set_property("yalign", 0.00)
self.icon.show()
first_column.pack_start(self.icon, expand=False, fill=True, padding=0)
if 0 <= len(msg) < 200:
lbl = label + "%s" % glib.markup_escape_text(msg)
self.label_short = gtk.Label()
self.label_short.set_use_markup(True)
self.label_short.set_line_wrap(True)
self.label_short.set_markup(lbl)
self.label_short.set_property("yalign", 0.00)
self.label_short.show()
first_column.add(self.label_short)
else:
second_row = gtk.VBox(spacing=12)
second_row.set_property("border-width", 6)
self.label_long = gtk.Label()
self.label_long.set_use_markup(True)
self.label_long.set_line_wrap(True)
self.label_long.set_markup(label)
self.label_long.set_alignment(0.0, 0.0)
second_row.pack_start(self.label_long, expand=False, fill=False, padding=0)
self.label_long.show()
self.textWindow = gtk.ScrolledWindow()
self.textWindow.set_shadow_type(gtk.SHADOW_IN)
self.textWindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
self.msgView = gtk.TextView()
self.msgView.set_editable(False)
self.msgView.set_wrap_mode(gtk.WRAP_WORD)
self.msgView.set_cursor_visible(False)
self.msgView.set_size_request(300, 300)
self.buf = gtk.TextBuffer()
self.buf.set_text(msg)
self.msgView.set_buffer(self.buf)
self.textWindow.add(self.msgView)
self.msgView.show()
second_row.add(self.textWindow)
self.textWindow.show()
first_column.add(second_row)
second_row.show()

View File

@@ -0,0 +1,215 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 glob
import gtk
import gobject
import os
import re
import shlex
import subprocess
import tempfile
from bb.ui.crumbs.hobwidget import hic, HobButton
from bb.ui.crumbs.progressbar import HobProgressBar
import bb.ui.crumbs.utils
import bb.process
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class DeployImageDialog (CrumbsDialog):
__dummy_usb__ = "--select a usb drive--"
def __init__(self, title, image_path, parent, flags, buttons=None, standalone=False):
super(DeployImageDialog, self).__init__(title, parent, flags, buttons)
self.image_path = image_path
self.standalone = standalone
self.create_visual_elements()
self.connect("response", self.response_cb)
def create_visual_elements(self):
self.set_size_request(600, 400)
label = gtk.Label()
label.set_alignment(0.0, 0.5)
markup = "<span font_desc='12'>The image to be written into usb drive:</span>"
label.set_markup(markup)
self.vbox.pack_start(label, expand=False, fill=False, padding=2)
table = gtk.Table(2, 10, False)
table.set_col_spacings(5)
table.set_row_spacings(5)
self.vbox.pack_start(table, expand=True, fill=True)
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
scroll.set_shadow_type(gtk.SHADOW_IN)
tv = gtk.TextView()
tv.set_editable(False)
tv.set_wrap_mode(gtk.WRAP_WORD)
tv.set_cursor_visible(False)
self.buf = gtk.TextBuffer()
self.buf.set_text(self.image_path)
tv.set_buffer(self.buf)
scroll.add(tv)
table.attach(scroll, 0, 10, 0, 1)
# There are 2 ways to use DeployImageDialog
# One way is that called by HOB when the 'Deploy Image' button is clicked
# The other way is that called by a standalone script.
# Following block of codes handles the latter way. It adds a 'Select Image' button and
# emit a signal when the button is clicked.
if self.standalone:
gobject.signal_new("select_image_clicked", self, gobject.SIGNAL_RUN_FIRST,
gobject.TYPE_NONE, ())
icon = gtk.Image()
pix_buffer = gtk.gdk.pixbuf_new_from_file(hic.ICON_IMAGES_DISPLAY_FILE)
icon.set_from_pixbuf(pix_buffer)
button = gtk.Button("Select Image")
button.set_image(icon)
#button.set_size_request(140, 50)
table.attach(button, 9, 10, 1, 2, gtk.FILL, 0, 0, 0)
button.connect("clicked", self.select_image_button_clicked_cb)
separator = gtk.HSeparator()
self.vbox.pack_start(separator, expand=False, fill=False, padding=10)
self.usb_desc = gtk.Label()
self.usb_desc.set_alignment(0.0, 0.5)
markup = "<span font_desc='12'>You haven't chosen any USB drive.</span>"
self.usb_desc.set_markup(markup)
self.usb_combo = gtk.combo_box_new_text()
self.usb_combo.connect("changed", self.usb_combo_changed_cb)
model = self.usb_combo.get_model()
model.clear()
self.usb_combo.append_text(self.__dummy_usb__)
for usb in self.find_all_usb_devices():
self.usb_combo.append_text("/dev/" + usb)
self.usb_combo.set_active(0)
self.vbox.pack_start(self.usb_combo, expand=False, fill=False)
self.vbox.pack_start(self.usb_desc, expand=False, fill=False, padding=2)
self.progress_bar = HobProgressBar()
self.vbox.pack_start(self.progress_bar, expand=False, fill=False)
separator = gtk.HSeparator()
self.vbox.pack_start(separator, expand=False, fill=True, padding=10)
self.vbox.show_all()
self.progress_bar.hide()
def set_image_text_buffer(self, image_path):
self.buf.set_text(image_path)
def set_image_path(self, image_path):
self.image_path = image_path
def popen_read(self, cmd):
tmpout, errors = bb.process.run("%s" % cmd)
return tmpout.strip()
def find_all_usb_devices(self):
usb_devs = [ os.readlink(u)
for u in glob.glob('/dev/disk/by-id/usb*')
if not re.search(r'part\d+', u) ]
return [ '%s' % u[u.rfind('/')+1:] for u in usb_devs ]
def get_usb_info(self, dev):
return "%s %s" % \
(self.popen_read('cat /sys/class/block/%s/device/vendor' % dev),
self.popen_read('cat /sys/class/block/%s/device/model' % dev))
def select_image_button_clicked_cb(self, button):
self.emit('select_image_clicked')
def usb_combo_changed_cb(self, usb_combo):
combo_item = self.usb_combo.get_active_text()
if not combo_item or combo_item == self.__dummy_usb__:
markup = "<span font_desc='12'>You haven't chosen any USB drive.</span>"
self.usb_desc.set_markup(markup)
else:
markup = "<span font_desc='12'>" + self.get_usb_info(combo_item.lstrip("/dev/")) + "</span>"
self.usb_desc.set_markup(markup)
def response_cb(self, dialog, response_id):
if response_id == gtk.RESPONSE_YES:
lbl = ''
combo_item = self.usb_combo.get_active_text()
if combo_item and combo_item != self.__dummy_usb__ and self.image_path:
cmdline = bb.ui.crumbs.utils.which_terminal()
if cmdline:
tmpfile = tempfile.NamedTemporaryFile()
cmdline += "\"sudo dd if=" + self.image_path + \
" of=" + combo_item + "; echo $? > " + tmpfile.name + "\""
subprocess.call(shlex.split(cmdline))
if int(tmpfile.readline().strip()) == 0:
lbl = "<b>Deploy image successfully.</b>"
else:
lbl = "<b>Failed to deploy image.</b>\nPlease check image <b>%s</b> exists and USB device <b>%s</b> is writable." % (self.image_path, combo_item)
tmpfile.close()
else:
if not self.image_path:
lbl = "<b>No selection made.</b>\nYou have not selected an image to deploy."
else:
lbl = "<b>No selection made.</b>\nYou have not selected a USB device."
if len(lbl):
crumbs_dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
button = crumbs_dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button)
crumbs_dialog.run()
crumbs_dialog.destroy()
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)
def write_file(self, ifile, ofile):
self.progress_bar.reset()
self.progress_bar.show()
f_from = os.open(ifile, os.O_RDONLY)
f_to = os.open(ofile, os.O_WRONLY)
total_size = os.stat(ifile).st_size
written_size = 0
while True:
buf = os.read(f_from, 1024*1024)
if not buf:
break
os.write(f_to, buf)
written_size += 1024*1024
self.update_progress_bar("Writing to usb:", written_size * 1.0/total_size)
self.update_progress_bar("Writing completed:", 1.0)
os.close(f_from)
os.close(f_to)
self.progress_bar.hide()

View File

@@ -0,0 +1,172 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
import gobject
import os
from bb.ui.crumbs.hobwidget import HobViewTable, HobInfoButton, HobButton, HobAltButton
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
from bb.ui.crumbs.hig.layerselectiondialog import LayerSelectionDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class ImageSelectionDialog (CrumbsDialog):
__columns__ = [{
'col_name' : 'Image name',
'col_id' : 0,
'col_style': 'text',
'col_min' : 400,
'col_max' : 400
}, {
'col_name' : 'Select',
'col_id' : 1,
'col_style': 'radio toggle',
'col_min' : 160,
'col_max' : 160
}]
def __init__(self, image_folder, image_types, title, parent, flags, buttons=None, image_extension = {}):
super(ImageSelectionDialog, self).__init__(title, parent, flags, buttons)
self.connect("response", self.response_cb)
self.image_folder = image_folder
self.image_types = image_types
self.image_list = []
self.image_names = []
self.image_extension = image_extension
# create visual elements on the dialog
self.create_visual_elements()
self.image_store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_BOOLEAN)
self.fill_image_store()
def create_visual_elements(self):
hbox = gtk.HBox(False, 6)
self.vbox.pack_start(hbox, expand=False, fill=False)
entry = gtk.Entry()
entry.set_text(self.image_folder)
table = gtk.Table(1, 10, True)
table.set_size_request(560, -1)
hbox.pack_start(table, expand=False, fill=False)
table.attach(entry, 0, 9, 0, 1)
image = gtk.Image()
image.set_from_stock(gtk.STOCK_OPEN, gtk.ICON_SIZE_BUTTON)
open_button = gtk.Button()
open_button.set_image(image)
open_button.connect("clicked", self.select_path_cb, self, entry)
table.attach(open_button, 9, 10, 0, 1)
self.image_table = HobViewTable(self.__columns__)
self.image_table.set_size_request(-1, 300)
self.image_table.connect("toggled", self.toggled_cb)
self.image_table.connect_group_selection(self.table_selected_cb)
self.image_table.connect("row-activated", self.row_actived_cb)
self.vbox.pack_start(self.image_table, expand=True, fill=True)
self.show_all()
def change_image_cb(self, model, path, columnid):
if not model:
return
iter = model.get_iter_first()
while iter:
rowpath = model.get_path(iter)
model[rowpath][columnid] = False
iter = model.iter_next(iter)
model[path][columnid] = True
def toggled_cb(self, table, cell, path, columnid, tree):
model = tree.get_model()
self.change_image_cb(model, path, columnid)
def table_selected_cb(self, selection):
model, paths = selection.get_selected_rows()
if paths:
self.change_image_cb(model, paths[0], 1)
def row_actived_cb(self, tab, model, path):
self.change_image_cb(model, path, 1)
self.emit('response', gtk.RESPONSE_YES)
def select_path_cb(self, action, parent, entry):
dialog = gtk.FileChooserDialog("", parent,
gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
text = entry.get_text()
dialog.set_current_folder(text if len(text) > 0 else os.getcwd())
button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
HobAltButton.style_button(button)
button = dialog.add_button("Open", gtk.RESPONSE_YES)
HobButton.style_button(button)
response = dialog.run()
if response == gtk.RESPONSE_YES:
path = dialog.get_filename()
entry.set_text(path)
self.image_folder = path
self.fill_image_store()
dialog.destroy()
def fill_image_store(self):
self.image_list = []
self.image_store.clear()
imageset = set()
for root, dirs, files in os.walk(self.image_folder):
# ignore the sub directories
dirs[:] = []
for f in files:
for image_type in self.image_types:
if image_type in self.image_extension:
real_types = self.image_extension[image_type]
else:
real_types = [image_type]
for real_image_type in real_types:
if f.endswith('.' + real_image_type):
imageset.add(f.rsplit('.' + real_image_type)[0].rsplit('.rootfs')[0])
self.image_list.append(f)
for image in imageset:
self.image_store.set(self.image_store.append(), 0, image, 1, False)
self.image_table.set_model(self.image_store)
def response_cb(self, dialog, response_id):
self.image_names = []
if response_id == gtk.RESPONSE_YES:
iter = self.image_store.get_iter_first()
while iter:
path = self.image_store.get_path(iter)
if self.image_store[path][1]:
for f in self.image_list:
if f.startswith(self.image_store[path][0] + '.'):
self.image_names.append(f)
break
iter = self.image_store.iter_next(iter)

View File

@@ -0,0 +1,296 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
import gobject
import os
import tempfile
from bb.ui.crumbs.hobwidget import hic, HobButton, HobAltButton
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class CellRendererPixbufActivatable(gtk.CellRendererPixbuf):
"""
A custom CellRenderer implementation which is activatable
so that we can handle user clicks
"""
__gsignals__ = { 'clicked' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_STRING,)), }
def __init__(self):
gtk.CellRendererPixbuf.__init__(self)
self.set_property('mode', gtk.CELL_RENDERER_MODE_ACTIVATABLE)
self.set_property('follow-state', True)
"""
Respond to a user click on a cell
"""
def do_activate(self, even, widget, path, background_area, cell_area, flags):
self.emit('clicked', path)
#
# LayerSelectionDialog
#
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)
label.set_markup(content)
label.show()
return label
def layer_widget_toggled_cb(self, cell, path, layer_store):
name = layer_store[path][0]
toggle = not layer_store[path][1]
layer_store[path][1] = toggle
def layer_widget_add_clicked_cb(self, action, layer_store, parent):
dialog = gtk.FileChooserDialog("Add new layer", parent,
gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
HobAltButton.style_button(button)
button = dialog.add_button("Open", gtk.RESPONSE_YES)
HobButton.style_button(button)
label = gtk.Label("Select the layer you wish to add")
label.show()
dialog.set_extra_widget(label)
response = dialog.run()
path = dialog.get_filename()
dialog.destroy()
lbl = "<b>Error</b>\nUnable to load layer <i>%s</i> because " % path
if response == gtk.RESPONSE_YES:
import os
import os.path
layers = []
it = layer_store.get_iter_first()
while it:
layers.append(layer_store.get_value(it, 0))
it = layer_store.iter_next(it)
if not path:
lbl += "it is an invalid path."
elif not os.path.exists(path+"/conf/layer.conf"):
lbl += "there is no layer.conf inside the directory."
elif path in layers:
lbl += "it is already in loaded layers."
else:
layer_store.append([path])
return
dialog = CrumbsMessageDialog(parent, lbl)
dialog.add_button(gtk.STOCK_CLOSE, gtk.RESPONSE_OK)
response = dialog.run()
dialog.destroy()
def layer_widget_del_clicked_cb(self, action, tree_selection, layer_store):
model, iter = tree_selection.get_selected()
if iter:
layer_store.remove(iter)
def gen_layer_widget(self, layers, layers_avail, window, tooltip=""):
hbox = gtk.HBox(False, 6)
layer_tv = gtk.TreeView()
layer_tv.set_rules_hint(True)
layer_tv.set_headers_visible(False)
tree_selection = layer_tv.get_selection()
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()
cell0.set_padding(5,2)
col0.pack_start(cell0, True)
col0.set_cell_data_func(cell0, self.draw_layer_path_cb)
layer_tv.append_column(col0)
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
scroll.set_shadow_type(gtk.SHADOW_IN)
scroll.add(layer_tv)
table_layer = gtk.Table(2, 10, False)
hbox.pack_start(table_layer, expand=True, fill=True)
table_layer.attach(scroll, 0, 10, 0, 1)
layer_store = gtk.ListStore(gobject.TYPE_STRING)
for layer in layers:
layer_store.append([layer])
col1 = gtk.TreeViewColumn('Enabled')
layer_tv.append_column(col1)
cell1 = CellRendererPixbufActivatable()
cell1.set_fixed_size(-1,35)
cell1.connect("clicked", self.del_cell_clicked_cb, layer_store)
col1.pack_start(cell1, True)
col1.set_cell_data_func(cell1, self.draw_delete_button_cb, layer_tv)
add_button = gtk.Button()
add_button.set_relief(gtk.RELIEF_NONE)
box = gtk.HBox(False, 6)
box.show()
add_button.add(box)
add_button.connect("enter-notify-event", self.add_hover_cb)
add_button.connect("leave-notify-event", self.add_leave_cb)
self.im = gtk.Image()
self.im.set_from_file(hic.ICON_INDI_ADD_FILE)
self.im.show()
box.pack_start(self.im, expand=False, fill=False, padding=6)
lbl = gtk.Label("Add layer")
lbl.set_alignment(0.0, 0.5)
lbl.show()
box.pack_start(lbl, expand=True, fill=True, padding=6)
add_button.connect("clicked", self.layer_widget_add_clicked_cb, layer_store, window)
table_layer.attach(add_button, 0, 10, 1, 2, gtk.EXPAND | gtk.FILL, 0, 0, 6)
layer_tv.set_model(layer_store)
hbox.show_all()
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, 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
# icon for remove button in TreeView
im = gtk.Image()
im.set_from_file(hic.ICON_INDI_REMOVE_FILE)
self.rem_icon = im.get_pixbuf()
# class members for internal use
self.layer_store = None
# create visual elements on the dialog
self.create_visual_elements()
self.connect("response", self.response_cb)
def create_visual_elements(self):
layer_widget, self.layer_store = self.gen_layer_widget(self.layers, self.all_layers, self, None)
layer_widget.set_size_request(450, 250)
self.vbox.pack_start(layer_widget, expand=True, fill=True)
self.show_all()
def response_cb(self, dialog, response_id):
model = self.layer_store
it = model.get_iter_first()
layers = []
while it:
layers.append(model.get_value(it, 0))
it = model.iter_next(it)
self.layers_changed = (self.layers != layers)
self.layers = layers
"""
A custom cell_data_func to draw a delete 'button' in the TreeView for layers
other than the meta layer. The deletion of which is prevented so that the
user can't shoot themselves in the foot too badly.
"""
def draw_delete_button_cb(self, col, cell, model, it, tv):
path = model.get_value(it, 0)
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)
else:
cell.set_property('pixbuf', self.rem_icon)
cell.set_sensitive(True)
cell.set_property('mode', gtk.CELL_RENDERER_MODE_ACTIVATABLE)
return True
"""
A custom cell_data_func to write an extra message into the layer path cell
for the meta layer. We should inform the user that they can't remove it for
their own safety.
"""
def draw_layer_path_cb(self, col, cell, model, it):
path = model.get_value(it, 0)
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)
def del_cell_clicked_cb(self, cell, path, model):
it = model.get_iter_from_string(path)
model.remove(it)

View File

@@ -0,0 +1,161 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-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 gtk
import gobject
from bb.ui.crumbs.hobwidget import HobAltButton
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
#
# ParsingWarningsDialog
#
class ParsingWarningsDialog (CrumbsDialog):
def __init__(self, title, warnings, parent, flags, buttons=None):
super(ParsingWarningsDialog, self).__init__(title, parent, flags, buttons)
self.warnings = warnings
self.warning_on = 0
self.warn_nb = len(warnings)
# create visual elements on the dialog
self.create_visual_elements()
def cancel_button_cb(self, button):
self.destroy()
def previous_button_cb(self, button):
self.warning_on = self.warning_on - 1
self.refresh_components()
def next_button_cb(self, button):
self.warning_on = self.warning_on + 1
self.refresh_components()
def refresh_components(self):
lbl = self.warnings[self.warning_on]
#when the warning text has more than 400 chars, it uses a scroll bar
if 0<= len(lbl) < 400:
self.warning_label.set_size_request(320, 230)
self.warning_label.set_use_markup(True)
self.warning_label.set_line_wrap(True)
self.warning_label.set_markup(lbl)
self.warning_label.set_property("yalign", 0.00)
else:
self.textWindow.set_shadow_type(gtk.SHADOW_IN)
self.textWindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
self.msgView = gtk.TextView()
self.msgView.set_editable(False)
self.msgView.set_wrap_mode(gtk.WRAP_WORD)
self.msgView.set_cursor_visible(False)
self.msgView.set_size_request(320, 230)
self.buf = gtk.TextBuffer()
self.buf.set_text(lbl)
self.msgView.set_buffer(self.buf)
self.textWindow.add(self.msgView)
self.msgView.show()
if self.warning_on==0:
self.previous_button.set_sensitive(False)
else:
self.previous_button.set_sensitive(True)
if self.warning_on==self.warn_nb-1:
self.next_button.set_sensitive(False)
else:
self.next_button.set_sensitive(True)
if self.warn_nb>1:
self.heading = "Warning " + str(self.warning_on + 1) + " of " + str(self.warn_nb)
self.heading_label.set_markup('<span weight="bold">%s</span>' % self.heading)
else:
self.heading = "Warning"
self.heading_label.set_markup('<span weight="bold">%s</span>' % self.heading)
self.show_all()
if 0<= len(lbl) < 400:
self.textWindow.hide()
else:
self.warning_label.hide()
def create_visual_elements(self):
self.set_size_request(350, 350)
self.heading_label = gtk.Label()
self.heading_label.set_alignment(0.1, 0)
self.warning_label = gtk.Label()
self.textWindow = gtk.ScrolledWindow()
table = gtk.Table(1, 10, False)
cancel_button = gtk.Button()
cancel_button.set_label("Close")
cancel_button.connect("clicked", self.cancel_button_cb)
cancel_button.set_size_request(110, 30)
self.previous_button = gtk.Button()
image1 = gtk.image_new_from_stock(gtk.STOCK_GO_BACK, gtk.ICON_SIZE_BUTTON)
image1.show()
box = gtk.HBox(False, 6)
box.show()
self.previous_button.add(box)
lbl = gtk.Label("Previous")
lbl.show()
box.pack_start(image1, expand=False, fill=False, padding=3)
box.pack_start(lbl, expand=True, fill=True, padding=3)
self.previous_button.connect("clicked", self.previous_button_cb)
self.previous_button.set_size_request(110, 30)
self.next_button = gtk.Button()
image2 = gtk.image_new_from_stock(gtk.STOCK_GO_FORWARD, gtk.ICON_SIZE_BUTTON)
image2.show()
box = gtk.HBox(False, 6)
box.show()
self.next_button.add(box)
lbl = gtk.Label("Next")
lbl.show()
box.pack_start(lbl, expand=True, fill=True, padding=3)
box.pack_start(image2, expand=False, fill=False, padding=3)
self.next_button.connect("clicked", self.next_button_cb)
self.next_button.set_size_request(110, 30)
#when there more than one warning, we need "previous" and "next" button
if self.warn_nb>1:
self.vbox.pack_start(self.heading_label, expand=False, fill=False)
self.vbox.pack_start(self.warning_label, expand=False, fill=False)
self.vbox.pack_start(self.textWindow, expand=False, fill=False)
table.attach(cancel_button, 6, 7, 0, 1, xoptions=gtk.SHRINK)
table.attach(self.previous_button, 7, 8, 0, 1, xoptions=gtk.SHRINK)
table.attach(self.next_button, 8, 9, 0, 1, xoptions=gtk.SHRINK)
self.vbox.pack_end(table, expand=False, fill=False)
else:
self.vbox.pack_start(self.heading_label, expand=False, fill=False)
self.vbox.pack_start(self.warning_label, expand=False, fill=False)
self.vbox.pack_start(self.textWindow, expand=False, fill=False)
cancel_button = self.add_button("Cancel", gtk.RESPONSE_CANCEL)
HobAltButton.style_button(cancel_button)
self.refresh_components()

View File

@@ -0,0 +1,90 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class ProxyDetailsDialog (CrumbsDialog):
def __init__(self, title, user, passwd, parent, flags, buttons=None):
super(ProxyDetailsDialog, self).__init__(title, parent, flags, buttons)
self.connect("response", self.response_cb)
self.auth = not (user == None or passwd == None or user == "")
self.user = user or ""
self.passwd = passwd or ""
# create visual elements on the dialog
self.create_visual_elements()
def create_visual_elements(self):
self.auth_checkbox = gtk.CheckButton("Use authentication")
self.auth_checkbox.set_tooltip_text("Check this box to set the username and the password")
self.auth_checkbox.set_active(self.auth)
self.auth_checkbox.connect("toggled", self.auth_checkbox_toggled_cb)
self.vbox.pack_start(self.auth_checkbox, expand=False, fill=False)
hbox = gtk.HBox(False, 6)
self.user_label = gtk.Label("Username:")
self.user_text = gtk.Entry()
self.user_text.set_text(self.user)
hbox.pack_start(self.user_label, expand=False, fill=False)
hbox.pack_end(self.user_text, expand=False, fill=False)
self.vbox.pack_start(hbox, expand=False, fill=False)
hbox = gtk.HBox(False, 6)
self.passwd_label = gtk.Label("Password:")
self.passwd_text = gtk.Entry()
self.passwd_text.set_text(self.passwd)
hbox.pack_start(self.passwd_label, expand=False, fill=False)
hbox.pack_end(self.passwd_text, expand=False, fill=False)
self.vbox.pack_start(hbox, expand=False, fill=False)
self.refresh_auth_components()
self.show_all()
def refresh_auth_components(self):
self.user_label.set_sensitive(self.auth)
self.user_text.set_editable(self.auth)
self.user_text.set_sensitive(self.auth)
self.passwd_label.set_sensitive(self.auth)
self.passwd_text.set_editable(self.auth)
self.passwd_text.set_sensitive(self.auth)
def auth_checkbox_toggled_cb(self, button):
self.auth = self.auth_checkbox.get_active()
self.refresh_auth_components()
def response_cb(self, dialog, response_id):
if response_id == gtk.RESPONSE_OK:
if self.auth:
self.user = self.user_text.get_text()
self.passwd = self.passwd_text.get_text()
else:
self.user = None
self.passwd = None

View File

@@ -0,0 +1,216 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
import os
from bb.ui.crumbs.hobwidget import HobInfoButton, HobButton, HobAltButton
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class SettingsUIHelper():
def gen_label_widget(self, content):
label = gtk.Label()
label.set_alignment(0, 0)
label.set_markup(content)
label.show()
return label
def gen_label_info_widget(self, content, tooltip):
table = gtk.Table(1, 10, False)
label = self.gen_label_widget(content)
info = HobInfoButton(tooltip, self)
table.attach(label, 0, 1, 0, 1, xoptions=gtk.FILL)
table.attach(info, 1, 2, 0, 1, xoptions=gtk.FILL, xpadding=10)
return table
def gen_spinner_widget(self, content, lower, upper, tooltip=""):
hbox = gtk.HBox(False, 12)
adjust = gtk.Adjustment(value=content, lower=lower, upper=upper, step_incr=1)
spinner = gtk.SpinButton(adjustment=adjust, climb_rate=1, digits=0)
spinner.set_value(content)
hbox.pack_start(spinner, expand=False, fill=False)
info = HobInfoButton(tooltip, self)
hbox.pack_start(info, expand=False, fill=False)
hbox.show_all()
return hbox, spinner
def gen_combo_widget(self, curr_item, all_item, tooltip=""):
hbox = gtk.HBox(False, 12)
combo = gtk.combo_box_new_text()
hbox.pack_start(combo, expand=False, fill=False)
index = 0
for item in all_item or []:
combo.append_text(item)
if item == curr_item:
combo.set_active(index)
index += 1
info = HobInfoButton(tooltip, self)
hbox.pack_start(info, expand=False, fill=False)
hbox.show_all()
return hbox, combo
def entry_widget_select_path_cb(self, action, parent, entry):
dialog = gtk.FileChooserDialog("", parent,
gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
text = entry.get_text()
dialog.set_current_folder(text if len(text) > 0 else os.getcwd())
button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
HobAltButton.style_button(button)
button = dialog.add_button("Open", gtk.RESPONSE_YES)
HobButton.style_button(button)
response = dialog.run()
if response == gtk.RESPONSE_YES:
path = dialog.get_filename()
entry.set_text(path)
dialog.destroy()
def gen_entry_widget(self, content, parent, tooltip="", need_button=True):
hbox = gtk.HBox(False, 12)
entry = gtk.Entry()
entry.set_text(content)
entry.set_size_request(350,30)
if need_button:
table = gtk.Table(1, 10, False)
hbox.pack_start(table, expand=True, fill=True)
table.attach(entry, 0, 9, 0, 1, xoptions=gtk.SHRINK)
image = gtk.Image()
image.set_from_stock(gtk.STOCK_OPEN,gtk.ICON_SIZE_BUTTON)
open_button = gtk.Button()
open_button.set_image(image)
open_button.connect("clicked", self.entry_widget_select_path_cb, parent, entry)
table.attach(open_button, 9, 10, 0, 1, xoptions=gtk.SHRINK)
else:
hbox.pack_start(entry, expand=True, fill=True)
if tooltip != "":
info = HobInfoButton(tooltip, self)
hbox.pack_start(info, expand=False, fill=False)
hbox.show_all()
return hbox, entry
def gen_mirror_entry_widget(self, content, index, match_content=""):
hbox = gtk.HBox(False)
entry = gtk.Entry()
content = content[:-2]
entry.set_text(content)
entry.set_size_request(350,30)
entry_match = gtk.Entry()
entry_match.set_text(match_content)
entry_match.set_size_request(100,30)
table = gtk.Table(2, 5, False)
table.set_row_spacings(12)
table.set_col_spacings(6)
hbox.pack_start(table, expand=True, fill=True)
label_configuration = gtk.Label("Configuration")
label_configuration.set_alignment(0.0,0.5)
label_mirror_url = gtk.Label("Mirror URL")
label_mirror_url.set_alignment(0.0,0.5)
label_match = gtk.Label("Match")
label_match.set_alignment(0.0,0.5)
label_replace_with = gtk.Label("Replace with")
label_replace_with.set_alignment(0.0,0.5)
combo = gtk.combo_box_new_text()
combo.append_text("Standard")
combo.append_text("Custom")
if match_content == "":
combo.set_active(0)
else:
combo.set_active(1)
combo.connect("changed", self.on_combo_changed, index)
combo.set_size_request(100,30)
delete_button = HobAltButton("Delete")
delete_button.connect("clicked", self.delete_cb, index, entry)
if content == "" and index == 0 and len(self.sstatemirrors_list) == 1:
delete_button.set_sensitive(False)
delete_button.set_size_request(100, 30)
entry_match.connect("changed", self.insert_entry_match_cb, index)
entry.connect("changed", self.insert_entry_cb, index, delete_button)
if match_content == "":
table.attach(label_configuration, 1, 2, 0, 1, xoptions=gtk.SHRINK|gtk.FILL)
table.attach(label_mirror_url, 2, 3, 0, 1, xoptions=gtk.SHRINK|gtk.FILL)
table.attach(combo, 1, 2, 1, 2, xoptions=gtk.SHRINK)
table.attach(entry, 2, 3, 1, 2, xoptions=gtk.SHRINK)
table.attach(delete_button, 3, 4, 1, 2, xoptions=gtk.SHRINK)
else:
table.attach(label_configuration, 1, 2, 0, 1, xoptions=gtk.SHRINK|gtk.FILL)
table.attach(label_match, 2, 3, 0, 1, xoptions=gtk.SHRINK|gtk.FILL)
table.attach(label_replace_with, 3, 4, 0, 1, xoptions=gtk.SHRINK|gtk.FILL)
table.attach(combo, 1, 2, 1, 2, xoptions=gtk.SHRINK)
table.attach(entry_match, 2, 3, 1, 2, xoptions=gtk.SHRINK)
table.attach(entry, 3, 4, 1, 2, xoptions=gtk.SHRINK)
table.attach(delete_button, 4, 5, 1, 2, xoptions=gtk.SHRINK)
hbox.show_all()
return hbox
def insert_entry_match_cb(self, entry_match, index):
self.sstatemirrors_list[index][2] = entry_match.get_text()
def insert_entry_cb(self, entry, index, button):
self.sstatemirrors_list[index][1] = entry.get_text()
if entry.get_text() == "" and index == 0:
button.set_sensitive(False)
else:
button.set_sensitive(True)
def on_combo_changed(self, combo, index):
if combo.get_active_text() == "Standard":
self.sstatemirrors_list[index][0] = 0
self.sstatemirrors_list[index][2] = "file://(.*)"
else:
self.sstatemirrors_list[index][0] = 1
self.refresh_shared_state_page()
def delete_cb(self, button, index, entry):
if index == 0 and len(self.sstatemirrors_list)==1:
entry.set_text("")
else:
self.sstatemirrors_list.pop(index)
self.refresh_shared_state_page()
def add_mirror(self, button):
tooltip = "Select the pre-built mirror that will speed your build"
index = len(self.sstatemirrors_list)
sm_list = [0, "", "file://(.*)"]
self.sstatemirrors_list.append(sm_list)
self.refresh_shared_state_page()

View File

@@ -0,0 +1,722 @@
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2011-2012 Intel Corporation
#
# Authored by Joshua Lock <josh@linux.intel.com>
# Authored by Dongxiao Xu <dongxiao.xu@intel.com>
# Authored by Shane Wang <shane.wang@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 gtk
import gobject
import hashlib
from bb.ui.crumbs.hobwidget import hic, HobInfoButton, HobButton, HobAltButton
from bb.ui.crumbs.progressbar import HobProgressBar
from bb.ui.crumbs.hig.settingsuihelper import SettingsUIHelper
from bb.ui.crumbs.hig.crumbsdialog import CrumbsDialog
from bb.ui.crumbs.hig.crumbsmessagedialog import CrumbsMessageDialog
from bb.ui.crumbs.hig.proxydetailsdialog import ProxyDetailsDialog
"""
The following are convenience classes for implementing GNOME HIG compliant
BitBake GUI's
In summary: spacing = 12px, border-width = 6px
"""
class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
(BUILD_ENV_PAGE_ID,
SHARED_STATE_PAGE_ID,
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, handler, buttons=None):
super(SimpleSettingsDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
# bitbake settings from Builder.Configuration
self.configuration = configuration
self.image_types = all_image_types
self.all_package_formats = all_package_formats
self.all_distros = all_distros
self.all_sdk_machines = all_sdk_machines
self.max_threads = max_threads
# class members for internal use
self.dldir_text = None
self.sstatedir_text = None
self.sstatemirrors_list = []
self.sstatemirrors_changed = 0
self.bb_spinner = None
self.pmake_spinner = None
self.rootfs_size_spinner = None
self.extra_size_spinner = None
self.gplv3_checkbox = None
self.toolchain_checkbox = None
self.setting_store = None
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()
self.connect("response", self.response_cb)
def _get_sorted_value(self, var):
return " ".join(sorted(str(var).split())) + "\n"
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 gen_proxy_entry_widget(self, protocol, parent, need_button=True, line=0):
label = gtk.Label(protocol.upper() + " proxy")
self.proxy_table.attach(label, 0, 1, line, line+1, xpadding=24)
proxy_entry = gtk.Entry()
proxy_entry.set_size_request(300, -1)
self.proxy_table.attach(proxy_entry, 1, 2, line, line+1, ypadding=4)
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)
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)
self.proxy_table.attach(details_button, 4, 5, line, line+1, xpadding=4, yoptions=gtk.EXPAND)
return proxy_entry, port_entry, details_button
def refresh_proxy_components(self):
self.same_checkbox.set_sensitive(self.configuration.enable_proxy)
self.http_proxy.set_text(self.configuration.combine_host_only("http"))
self.http_proxy.set_editable(self.configuration.enable_proxy)
self.http_proxy.set_sensitive(self.configuration.enable_proxy)
self.http_proxy_port.set_text(self.configuration.combine_port_only("http"))
self.http_proxy_port.set_editable(self.configuration.enable_proxy)
self.http_proxy_port.set_sensitive(self.configuration.enable_proxy)
self.http_proxy_details.set_sensitive(self.configuration.enable_proxy)
self.https_proxy.set_text(self.configuration.combine_host_only("https"))
self.https_proxy.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.https_proxy.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.https_proxy_port.set_text(self.configuration.combine_port_only("https"))
self.https_proxy_port.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.https_proxy_port.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.https_proxy_details.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.ftp_proxy.set_text(self.configuration.combine_host_only("ftp"))
self.ftp_proxy.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.ftp_proxy.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.ftp_proxy_port.set_text(self.configuration.combine_port_only("ftp"))
self.ftp_proxy_port.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.ftp_proxy_port.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.ftp_proxy_details.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.git_proxy.set_text(self.configuration.combine_host_only("git"))
self.git_proxy.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.git_proxy.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.git_proxy_port.set_text(self.configuration.combine_port_only("git"))
self.git_proxy_port.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.git_proxy_port.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.git_proxy_details.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.cvs_proxy.set_text(self.configuration.combine_host_only("cvs"))
self.cvs_proxy.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.cvs_proxy.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.cvs_proxy_port.set_text(self.configuration.combine_port_only("cvs"))
self.cvs_proxy_port.set_editable(self.configuration.enable_proxy and (not self.configuration.same_proxy))
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 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 = ""
for mirror in self.sstatemirrors_list:
if mirror[1] != "":
if mirror[1].endswith("\\1"):
smirror = mirror[2] + " " + mirror[1] + " \\n "
else:
smirror = mirror[2] + " " + mirror[1] + "\\1 \\n "
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.save_proxy_data()
self.configuration.extra_setting = {}
it = self.setting_store.get_iter_first()
while it:
key = self.setting_store.get_value(it, 0)
value = self.setting_store.get_value(it, 1)
self.configuration.extra_setting[key] = value
it = self.setting_store.iter_next(it)
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)
advanced_vbox.set_border_width(6)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Parallel threads</span>'), expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
label = self.gen_label_widget("BitBake parallel threads")
tooltip = "Sets the number of threads that BitBake tasks can simultaneously run. See the <a href=\""
tooltip += "http://www.yoctoproject.org/docs/current/poky-ref-manual/"
tooltip += "poky-ref-manual.html#var-BB_NUMBER_THREADS\">Poky reference manual</a> for information"
bbthread_widget, self.bb_spinner = self.gen_spinner_widget(self.configuration.bbthread, 1, self.max_threads, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(bbthread_widget, expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
label = self.gen_label_widget("Make parallel threads")
tooltip = "Sets the maximum number of threads the host can use during the build. See the <a href=\""
tooltip += "http://www.yoctoproject.org/docs/current/poky-ref-manual/"
tooltip += "poky-ref-manual.html#var-PARALLEL_MAKE\">Poky reference manual</a> for information"
pmake_widget, self.pmake_spinner = self.gen_spinner_widget(self.configuration.pmake, 1, self.max_threads, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(pmake_widget, expand=False, fill=False)
advanced_vbox.pack_start(self.gen_label_widget('<span weight="bold">Downloaded source code</span>'), expand=False, fill=False)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
label = self.gen_label_widget("Downloads directory")
tooltip = "Select a folder that caches the upstream project source code"
dldir_widget, self.dldir_text = self.gen_entry_widget(self.configuration.dldir, self, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(dldir_widget, expand=False, fill=False)
return advanced_vbox
def create_shared_state_page(self):
advanced_vbox = gtk.VBox(False)
advanced_vbox.set_border_width(12)
sub_vbox = gtk.VBox(False)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False, padding=24)
content = "<span>Shared state directory</span>"
tooltip = "Select a folder that caches your prebuilt results"
label = self.gen_label_info_widget(content, tooltip)
sstatedir_widget, self.sstatedir_text = self.gen_entry_widget(self.configuration.sstatedir, self)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(sstatedir_widget, expand=False, fill=False, padding=12)
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 "
tooltip += "mirror replicates the structure of your local shared state directory. "
tooltip += "For more information on shared state mirrors, check the <a href=\""
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)
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:
self.sstatemirrors_changed = 1
sstatemirrors = self.configuration.sstatemirror
if sstatemirrors == "":
sm_list = [ 0, "", "file://(.*)"]
self.sstatemirrors_list.append(sm_list)
else:
while sstatemirrors.find(searched_string) != -1:
if sstatemirrors.find(searched_string,1) != -1:
sstatemirror = sstatemirrors[:sstatemirrors.find(searched_string,1)]
sstatemirrors = sstatemirrors[sstatemirrors.find(searched_string,1):]
else:
sstatemirror = sstatemirrors
sstatemirrors = sstatemirrors[1:]
sstatemirror_fields = [x for x in sstatemirror.split(' ') if x.strip()]
if sstatemirror_fields[0] == "file://(.*)":
sm_list = [ 0, sstatemirror_fields[1], "file://(.*)"]
else:
sm_list = [ 1, sstatemirror_fields[1], sstatemirror_fields[0]]
self.sstatemirrors_list.append(sm_list)
index = 0
for mirror in self.sstatemirrors_list:
if mirror[0] == 0:
sstatemirror_widget = self.gen_mirror_entry_widget(mirror[1], index)
else:
sstatemirror_widget = self.gen_mirror_entry_widget(mirror[1], index, mirror[2])
sub_vbox.pack_start(sstatemirror_widget, expand=False, fill=False, padding=9)
index += 1
table = gtk.Table(1, 1, False)
table.set_col_spacings(6)
add_mirror_button = HobAltButton("Add another mirror")
add_mirror_button.connect("clicked", self.add_mirror)
add_mirror_button.set_size_request(150,30)
table.attach(add_mirror_button, 1, 2, 0, 1, xoptions=gtk.SHRINK)
advanced_vbox.pack_start(table, expand=False, fill=False, padding=9)
return advanced_vbox
def refresh_shared_state_page(self):
page_num = self.nb.get_current_page()
self.nb.remove_page(page_num);
self.nb.insert_page(self.create_shared_state_page(), gtk.Label("Shared state"),page_num)
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 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)
label = self.gen_label_widget("<span weight=\"bold\">Set the proxies used when fetching source code</span>")
tooltip = "Set the proxies used when fetching source code. A blank field uses a direct internet connection."
info = HobInfoButton(tooltip, self)
hbox = gtk.HBox(False, 12)
hbox.pack_start(label, expand=True, fill=True)
hbox.pack_start(info, expand=False, fill=False)
sub_vbox.pack_start(hbox, expand=False, fill=False)
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 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)
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)
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)
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)
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)
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)
self.same_checkbox.connect("toggled", self.same_checkbox_toggled_cb)
self.refresh_proxy_components()
return advanced_vbox
def switch_to_page(self, page_id):
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],
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 rootfs_combo_changed_cb(self, rootfs_combo, all_package_format, check_hbox):
combo_item = self.rootfs_combo.get_active_text()
for child in check_hbox.get_children():
if isinstance(child, gtk.CheckButton):
check_hbox.remove(child)
for format in all_package_format:
if format != combo_item:
check_button = gtk.CheckButton(format)
check_hbox.pack_start(check_button, expand=False, fill=False)
check_hbox.show_all()
def gen_pkgfmt_widget(self, curr_package_format, all_package_format, tooltip_combo="", tooltip_extra=""):
pkgfmt_hbox = gtk.HBox(False, 24)
rootfs_vbox = gtk.VBox(False, 6)
pkgfmt_hbox.pack_start(rootfs_vbox, expand=False, fill=False)
label = self.gen_label_widget("Root file system package format")
rootfs_vbox.pack_start(label, expand=False, fill=False)
rootfs_format = ""
if curr_package_format:
rootfs_format = curr_package_format.split()[0]
rootfs_format_widget, rootfs_combo = self.gen_combo_widget(rootfs_format, all_package_format, tooltip_combo)
rootfs_vbox.pack_start(rootfs_format_widget, expand=False, fill=False)
extra_vbox = gtk.VBox(False, 6)
pkgfmt_hbox.pack_start(extra_vbox, expand=False, fill=False)
label = self.gen_label_widget("Additional package formats")
extra_vbox.pack_start(label, expand=False, fill=False)
check_hbox = gtk.HBox(False, 12)
extra_vbox.pack_start(check_hbox, expand=False, fill=False)
for format in all_package_format:
if format != rootfs_format:
check_button = gtk.CheckButton(format)
is_active = (format in curr_package_format.split())
check_button.set_active(is_active)
check_hbox.pack_start(check_button, expand=False, fill=False)
info = HobInfoButton(tooltip_extra, self)
check_hbox.pack_end(info, expand=False, fill=False)
rootfs_combo.connect("changed", self.rootfs_combo_changed_cb, all_package_format, check_hbox)
pkgfmt_hbox.show_all()
return pkgfmt_hbox, rootfs_combo, check_hbox
def editable_settings_cell_edited(self, cell, path_string, new_text, model):
it = model.get_iter_from_string(path_string)
column = cell.get_data("column")
model.set(it, column, new_text)
def editable_settings_add_item_clicked(self, button, model):
new_item = ["##KEY##", "##VALUE##"]
iter = model.append()
model.set (iter,
0, new_item[0],
1, new_item[1],
)
def editable_settings_remove_item_clicked(self, button, treeview):
selection = treeview.get_selection()
model, iter = selection.get_selected()
if iter:
path = model.get_path(iter)[0]
model.remove(iter)
def gen_editable_settings(self, setting, tooltip=""):
setting_hbox = gtk.HBox(False, 12)
vbox = gtk.VBox(False, 12)
setting_hbox.pack_start(vbox, expand=True, fill=True)
setting_store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
for key in setting.keys():
setting_store.set(setting_store.append(), 0, key, 1, setting[key])
setting_tree = gtk.TreeView(setting_store)
setting_tree.set_headers_visible(True)
setting_tree.set_size_request(300, 100)
col = gtk.TreeViewColumn('Key')
col.set_min_width(100)
col.set_max_width(150)
col.set_resizable(True)
col1 = gtk.TreeViewColumn('Value')
col1.set_min_width(100)
col1.set_max_width(150)
col1.set_resizable(True)
setting_tree.append_column(col)
setting_tree.append_column(col1)
cell = gtk.CellRendererText()
cell.set_property('width-chars', 10)
cell.set_property('editable', True)
cell.set_data("column", 0)
cell.connect("edited", self.editable_settings_cell_edited, setting_store)
cell1 = gtk.CellRendererText()
cell1.set_property('width-chars', 10)
cell1.set_property('editable', True)
cell1.set_data("column", 1)
cell1.connect("edited", self.editable_settings_cell_edited, setting_store)
col.pack_start(cell, True)
col1.pack_end(cell1, True)
col.set_attributes(cell, text=0)
col1.set_attributes(cell1, text=1)
scroll = gtk.ScrolledWindow()
scroll.set_shadow_type(gtk.SHADOW_IN)
scroll.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scroll.add(setting_tree)
vbox.pack_start(scroll, expand=True, fill=True)
# some buttons
hbox = gtk.HBox(True, 6)
vbox.pack_start(hbox, False, False)
button = gtk.Button(stock=gtk.STOCK_ADD)
button.connect("clicked", self.editable_settings_add_item_clicked, setting_store)
hbox.pack_start(button)
button = gtk.Button(stock=gtk.STOCK_REMOVE)
button.connect("clicked", self.editable_settings_remove_item_clicked, setting_tree)
hbox.pack_start(button)
info = HobInfoButton(tooltip, self)
setting_hbox.pack_start(info, expand=False, fill=False)
return setting_hbox, setting_store
def create_others_page(self):
advanced_vbox = gtk.VBox(False, 6)
advanced_vbox.set_border_width(6)
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=True, fill=True)
label = self.gen_label_widget("<span weight=\"bold\">Add your own variables:</span>")
tooltip = "These are key/value pairs for your extra settings. Click \'Add\' and then directly edit the key and the value"
setting_widget, self.setting_store = self.gen_editable_settings(self.configuration.extra_setting, tooltip)
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(setting_widget, expand=True, fill=True)
return advanced_vbox
def create_visual_elements(self):
self.nb = gtk.Notebook()
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_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)
self.vbox.pack_end(gtk.HSeparator(), expand=True, fill=True)
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)

View File

@@ -30,6 +30,7 @@ class HobColors:
BLACK = "#000000"
PALE_BLUE = "#53b8ff"
DEEP_RED = "#aa3e3e"
KHAKI = "#fff68f"
OK = WHITE
RUNNING = PALE_GREEN

View File

@@ -41,6 +41,9 @@ class HobHandler(gobject.GObject):
"command-failed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_STRING,)),
"parsing-warning" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_STRING,)),
"sanity-failed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_STRING, gobject.TYPE_INT)),
@@ -65,10 +68,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__()
@@ -88,6 +98,7 @@ class HobHandler(gobject.GObject):
self.server = server
self.error_msg = ""
self.initcmd = None
self.parsing = False
def set_busy(self):
if not self.generating:
@@ -101,7 +112,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 +153,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
@@ -154,6 +170,14 @@ class HobHandler(gobject.GObject):
if self.toolchain_packages:
self.runCommand(["setVariable", "TOOLCHAIN_TARGET_TASK", " ".join(self.toolchain_packages)])
targets.append(self.toolchain)
if targets[0] == "hob-image":
hobImage = self.runCommand(["matchFile", "hob-image.bb"])
if self.base_image != "Create your own image":
baseImage = self.runCommand(["matchFile", self.base_image + ".bb"])
version = self.runCommand(["generateNewImage", hobImage, baseImage, self.package_queue])
targets[0] += version
self.recipe_model.set_custom_image_version(version)
self.runCommand(["buildTargets", targets, self.default_task])
def display_error(self):
@@ -187,6 +211,11 @@ class HobHandler(gobject.GObject):
formatter = bb.msg.BBLogFormatter()
msg = formatter.format(event)
self.error_msg += msg + '\n'
elif event.levelno >= logging.WARNING and self.parsing == True:
formatter = bb.msg.BBLogFormatter()
msg = formatter.format(event)
warn_msg = msg + '\n'
self.emit("parsing-warning", warn_msg)
elif isinstance(event, bb.event.TargetsTreeGenerated):
self.current_phase = "data generation"
@@ -227,8 +256,10 @@ 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)
if isinstance(event, bb.event.ParseStarted):
self.parsing = True
elif isinstance(event, (bb.event.ParseProgress,
bb.event.CacheLoadProgress,
bb.event.TreeDataPreparationProgress)):
@@ -236,7 +267,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 +276,16 @@ 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)
if isinstance(event, bb.event.ParseCompleted):
self.parsing = False
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 +380,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)
@@ -364,8 +407,9 @@ class HobHandler(gobject.GObject):
self.commands_async.append(self.SUB_BUILD_RECIPES)
self.run_next_command(self.GENERATE_PACKAGES)
def generate_image(self, image, toolchain, image_packages=[], toolchain_packages=[], default_task="build"):
def generate_image(self, image, base_image, toolchain, image_packages=[], toolchain_packages=[], default_task="build"):
self.image = image
self.base_image = base_image
self.toolchain = toolchain
self.package_queue = image_packages
self.toolchain_packages = toolchain_packages
@@ -398,7 +442,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 +457,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):
@@ -766,3 +766,9 @@ class RecipeListModel(gtk.ListStore):
binb="User Selected",
image_contents=True)
self.selection_change_notification()
def set_custom_image_version(self, version):
self.custom_image_version = version
def get_custom_image_version(self):
return self.custom_image_version

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,8 @@ 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.warning_shift = 0
self.create_visual_elements()
def create_visual_elements(self):
@@ -114,9 +116,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)
@@ -139,6 +142,37 @@ class ImageConfigurationPage (HobPage):
if self.builder.recipe_model.get_selected_image() == self.builder.recipe_model.__custom_image__:
self.just_bake_button.hide()
def add_warnings_bar(self):
#create the warnings bar shown when recipes parsing generates warnings
color = HobColors.KHAKI
warnings_bar = gtk.EventBox()
warnings_bar.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse(color))
warnings_bar.set_flags(gtk.CAN_DEFAULT)
warnings_bar.grab_default()
build_stop_tab = gtk.Table(10, 20, True)
warnings_bar.add(build_stop_tab)
icon = gtk.Image()
icon_pix_buffer = gtk.gdk.pixbuf_new_from_file(hic.ICON_INDI_ALERT_FILE)
icon.set_from_pixbuf(icon_pix_buffer)
build_stop_tab.attach(icon, 0, 2, 0, 10)
label = gtk.Label()
label.set_alignment(0.0, 0.5)
warnings_nb = len(self.builder.parsing_warnings)
if warnings_nb == 1:
label.set_markup("<span size='x-large'><b>1 recipe parsing warning</b></span>")
else:
label.set_markup("<span size='x-large'><b>%s recipe parsing warnings</b></span>" % warnings_nb)
build_stop_tab.attach(label, 2, 12, 0, 10)
view_warnings_button = HobButton("View warnings")
view_warnings_button.connect('clicked', self.view_warnings_button_clicked_cb)
build_stop_tab.attach(view_warnings_button, 15, 19, 1, 9)
return warnings_bar
def create_config_machine(self):
self.machine_title = gtk.Label()
self.machine_title.set_alignment(0.0, 0.5)
@@ -185,6 +219,12 @@ class ImageConfigurationPage (HobPage):
#self.gtable.attach(self.progress_box, 0, 40, 15, 18)
self.gtable.attach(self.progress_bar, 0, 37, 15, 18)
self.gtable.attach(self.stop_button, 37, 40, 15, 18, 0, 0)
if self.builder.parsing_warnings:
self.warnings_bar = self.add_warnings_bar()
self.gtable.attach(self.warnings_bar, 0, 40, 14, 18)
self.warning_shift = 4
else:
self.warning_shift = 0
self.gtable.attach(self.machine_separator, 0, 40, 13, 14)
def create_config_baseimg(self):
@@ -220,12 +260,12 @@ class ImageConfigurationPage (HobPage):
self.image_separator = gtk.HSeparator()
def set_config_baseimg_layout(self):
self.gtable.attach(self.image_title, 0, 40, 15, 17)
self.gtable.attach(self.image_title_desc, 0, 40, 18, 22)
self.gtable.attach(self.image_combo, 0, 12, 23, 26)
self.gtable.attach(self.image_desc, 0, 12, 27, 33)
self.gtable.attach(self.view_adv_configuration_button, 14, 36, 23, 28)
self.gtable.attach(self.image_separator, 0, 40, 35, 36)
self.gtable.attach(self.image_title, 0, 40, 15+self.warning_shift, 17+self.warning_shift)
self.gtable.attach(self.image_title_desc, 0, 40, 18+self.warning_shift, 22+self.warning_shift)
self.gtable.attach(self.image_combo, 0, 12, 23+self.warning_shift, 26+self.warning_shift)
self.gtable.attach(self.image_desc, 0, 12, 27+self.warning_shift, 33+self.warning_shift)
self.gtable.attach(self.view_adv_configuration_button, 14, 36, 23+self.warning_shift, 28+self.warning_shift)
self.gtable.attach(self.image_separator, 0, 40, 35+self.warning_shift, 36+self.warning_shift)
def create_config_build_button(self):
# Create the "Build packages" and "Build image" buttons at the bottom
@@ -248,9 +288,16 @@ 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 view_warnings_button_clicked_cb(self, button):
self.builder.show_warning_dialog()
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
@@ -357,7 +404,7 @@ class ImageConfigurationPage (HobPage):
image_model = recipe_model.tree_model(filter)
image_model.set_sort_column_id(recipe_model.COL_NAME, gtk.SORT_ASCENDING)
active = 0
cnt = 1
cnt = 0
white_pattern = []
if self.builder.parameters.image_white_pattern:
@@ -368,13 +415,17 @@ 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()
model = self.image_combo.get_model()
model.clear()
# Set a indicator text to combo store when first open
self.image_combo.append_text(self.__dummy_image__)
if not selected_image:
self.image_combo.append_text(self.__dummy_image__)
cnt = cnt + 1
# append and set active
while it:
path = image_model.get_path(it)
@@ -428,9 +479,11 @@ class ImageConfigurationPage (HobPage):
self.builder.reparse_post_adv_settings()
def just_bake_button_clicked_cb(self, button):
self.builder.parsing_warnings = []
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

@@ -26,7 +26,8 @@ from bb.ui.crumbs.hobcolor import HobColors
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.hig.crumbsdialog import CrumbsDialog
#
# ImageDetailsPage
#
@@ -404,7 +405,8 @@ class ImageDetailsPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
log_file = "file:///" + log_file
gtk.show_uri(screen=button.get_screen(), uri=log_file, timestamp=0)
def refresh_package_detail_box(self, image_size):
self.package_detail.update_line_widgets("Total image size: ", image_size)

View File

@@ -52,7 +52,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 +167,8 @@ class PackageSelectionPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
os.system("xdg-open /%s" % log_file)
log_file = "file:///" + log_file
gtk.show_uri(screen=button.get_screen(), uri=log_file, timestamp=0)
def show_page(self, log_file):
children = self.button_box.get_children() or []
@@ -184,6 +185,7 @@ class PackageSelectionPage (HobPage):
self.show_all()
def build_image_clicked_cb(self, button):
self.builder.parsing_warnings = []
self.builder.build_image()
def back_button_clicked_cb(self, button):
@@ -208,8 +210,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

@@ -22,7 +22,7 @@
import sys
import os
requirements = "FATAL: Gtk+, PyGtk and PyGobject are required to use Hob"
requirements = "FATAL: Hob requires Gtk+ 2.20.0 or higher, PyGtk 2.21.0 or higher"
try:
import gobject
import gtk

View File

@@ -146,7 +146,7 @@ class TerminalFilter(object):
import curses
except ImportError:
sys.exit("FATAL: The knotty ui could not load the required curses python module.")
import termios
self.curses = curses
self.termios = termios
@@ -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
@@ -312,7 +329,7 @@ def main(server, eventHandler, tf = TerminalFilter):
logfile = event.logfile
if logfile and os.path.exists(logfile):
termfilter.clearFooter()
print("ERROR: Logfile of failure stored in: %s" % logfile)
bb.error("Logfile of failure stored in: %s" % logfile)
if includelogs and not event.errprinted:
print("Log data follows:")
f = open(logfile, "r")
@@ -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

@@ -37,6 +37,17 @@ class BBUIEventQueue:
self.BBServer = BBServer
self.clientinfo = clientinfo
server = UIXMLRPCServer(self.clientinfo)
self.host, self.port = server.socket.getsockname()
server.register_function( self.system_quit, "event.quit" )
server.register_function( self.send_event, "event.sendpickle" )
server.socket.settimeout(1)
self.EventHandle = self.BBServer.registerEventHandler(self.host, self.port)
self.server = server
self.t = threading.Thread()
self.t.setDaemon(True)
self.t.run = self.startCallbackHandler
@@ -73,19 +84,9 @@ class BBUIEventQueue:
def startCallbackHandler(self):
server = UIXMLRPCServer(self.clientinfo)
self.host, self.port = server.socket.getsockname()
server.register_function( self.system_quit, "event.quit" )
server.register_function( self.send_event, "event.sendpickle" )
server.socket.settimeout(1)
self.EventHandle = self.BBServer.registerEventHandler(self.host, self.port)
self.server = server
while not server.quit:
server.handle_request()
server.server_close()
while not self.server.quit:
self.server.handle_request()
self.server.server_close()
def system_quit( self ):
"""

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

@@ -1,72 +1,72 @@
# This is a single Makefile to handle all generated Yocto Project documents.
# The Makefile needs to live in the documents directory and all figures used
# in any manuals must be .PNG files and live in the individual book's figures
# directory as well as in the figures directory for the mega-manual.
# directory as well as in the figures directory for the mega-manual.
# Note that the figures for the Yocto Project Development Manual
# differ depending on the BRANCH being built.
#
# The Makefile has these targets:
#
# pdf: generates a PDF version of a manual. Not valid for the Quick Start
# or the mega-manual (single, large HTML file comprised of all
# or the mega-manual (single, large HTML file comprised of all
# Yocto Project manuals).
# html: generates an HTML version of a manual.
# tarball: creates a tarball for the doc files.
# validate: validates
# validate: validates
# publish: pushes generated files to the Yocto Project website
# clean: removes files
#
# The Makefile generates an HTML and PDF version of every document except the
# Yocto Project Quick Start and the single, HTML mega-manual, which is comprised
# of all the individual Yocto Project manuals. These two manuals are in HTML
# form only. The variable DOC indicates the folder name for a given manual. The
# variable VER represents the distro version of the Yocto Release for which the
# 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.
# of all the individual Yocto Project manuals. These two manuals are in HTML
# form only. The variable DOC indicates the folder name for a given manual. The
# variable VER represents the distro version of the Yocto Release for which the
# 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. 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.
# 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. 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:
#
# make DOC=bsp-guide
# make DOC=yocto-project-qs
# make pdf DOC=poky-ref-manual
# make pdf DOC=ref-manual
# make DOC=dev-manual BRANCH=edison
# make DOC=mega-manual BRANCH=denzil
#
# The first example generates the HTML and PDF versions of the BSP Guide.
# The second example generates the HTML version only of the Quick Start. Note that
# the Quick Start only has an HTML version available. The third example generates
# both the PDF and HTML versions of the Yocto Project Reference Manual. The
# 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.
# The second example generates the HTML version only of the Quick Start. Note that
# the Quick Start only has an HTML version available. The third example generates
# both the PDF and HTML versions of the Yocto Project Reference Manual. The
# 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. 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
# PDF version (if applicable).
# 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
# PDF version (if applicable).
# Examples:
#
# 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)
@@ -92,7 +92,7 @@ XSLTOPTS = --stringparam html.stylesheet dev-style.css \
ALLPREQ = html pdf tarball
#
# Note that the tarfile might produce the "Cannot stat: No such file or directory" error
# message for .PNG files that are not present when building a particular branch. The
# message for .PNG files that are not present when building a particular branch. The
# list of files is all-inclusive for all branches. Note, if you don't provide a BRANCH
# option, it defaults to the latest stuff. This would be appropriate for "master" branch.
#
@@ -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
@@ -179,16 +176,13 @@ TARFILES = mega-manual.html mega-style.css figures/yocto-environment.png figures
else
TARFILES = mega-manual.html mega-style.css figures/yocto-environment.png figures/building-an-image.png \
figures/using-a-pre-built-image.png \
figures/poky-title.png \
figures/poky-title.png figures/buildhistory.png figures/buildhistory-web.png \
figures/adt-title.png figures/bsp-title.png \
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 figures/kernel-dev-title.png
endif
MANUALS = $(DOC)/$(DOC).html
@@ -197,7 +191,7 @@ STYLESHEET = $(DOC)/*.css
endif
ifeq ($(DOC),poky-ref-manual)
ifeq ($(DOC),ref-manual)
XSLTOPTS = --stringparam html.stylesheet ref-style.css \
--stringparam chapter.autolabel 1 \
--stringparam appendix.autolabel A \
@@ -205,7 +199,8 @@ XSLTOPTS = --stringparam html.stylesheet ref-style.css \
--stringparam section.label.includes.component.label 1 \
--xinclude
ALLPREQ = html pdf tarball
TARFILES = poky-ref-manual.html ref-style.css figures/poky-title.png
TARFILES = ref-manual.html ref-style.css figures/poky-title.png \
figures/buildhistory.png figures/buildhistory-web.png
MANUALS = $(DOC)/$(DOC).html $(DOC)/$(DOC).pdf
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -240,6 +235,20 @@ FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
ifeq ($(DOC),kernel-dev)
XSLTOPTS = --stringparam html.stylesheet kernel-dev-style.css \
--stringparam chapter.autolabel 1 \
--stringparam appendix.autolabel A \
--stringparam section.autolabel 1 \
--stringparam section.label.includes.component.label 1 \
--xinclude
ALLPREQ = html pdf tarball
TARFILES = kernel-dev.html kernel-dev.pdf kernel-dev-style.css figures/kernel-dev-title.png
MANUALS = $(DOC)/$(DOC).html $(DOC)/$(DOC).pdf
FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
##
# These URI should be rewritten by your distribution's xml catalog to
@@ -264,10 +273,10 @@ else
cd $(DOC); ../tools/poky-docbook-to-pdf $(DOC).xml ../template; cd ..
endif
html:
ifeq ($(DOC),mega-manual)
# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
@echo " "
@echo "******** Building "$(DOC)
@echo " "
@@ -281,7 +290,7 @@ ifeq ($(DOC),mega-manual)
@echo " "
cd $(DOC); rm mega-manual.html; mv mega-output.html mega-manual.html; cd ..
else
# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
# See http://www.sagehill.net/docbookxsl/HtmlOutput.html
@echo " "
@echo "******** Building "$(DOC)
@echo " "
@@ -314,4 +323,4 @@ publish:
fi
clean:
rm -f $(MANUALS)
rm -rf $(MANUALS); rm $(DOC)/$(DOC).tgz;

View File

@@ -6,22 +6,22 @@
<title>Using the Command Line</title>
<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>".
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,
a special version of <filename>pkgconfig</filename> and other useful
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
<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,
a special version of <filename>pkgconfig</filename> and other useful
utilities are added to the <filename>PATH</filename> variable.
Variables to assist <filename>pkgconfig</filename> and <filename>autotools</filename>
are also defined so that,
for example, <filename>configure.sh</filename> can find pre-generated
test results for tests that need target hardware on which to run.
These conditions allow you to easily use the toolchain outside of the
OpenEmbedded build environment on both autotools-based projects and
Variables to assist <filename>pkgconfig</filename> and <filename>autotools</filename>
are also defined so that,
for example, <filename>configure.sh</filename> can find pre-generated
test results for tests that need target hardware on which to run.
These conditions allow you to easily use the toolchain outside of the
OpenEmbedded build environment on both autotools-based projects and
Makefile-based projects.
</para>
@@ -29,47 +29,175 @@
<title>Autotools-Based Projects</title>
<para>
For an Autotools-based project, you can use the cross-toolchain by just
passing the appropriate host option to <filename>configure.sh</filename>.
The host option you use is derived from the name of the environment setup
script in <filename>/opt/poky</filename> resulting from installation of the
cross-toolchain tarball.
For example, the host option for an ARM-based target that uses the GNU EABI
is <filename>armv5te-poky-linux-gnueabi</filename>.
Note that the name of the script is
<filename>environment-setup-armv5te-poky-linux-gnueabi</filename>.
Thus, the following command works:
<literallayout class='monospaced'>
$ configure --host=armv5te-poky-linux-gnueabi \
Once you have a suitable cross-toolchain installed, it is very easy to
develop a project outside of the OpenEmbedded build system.
This section presents a simple "Helloworld" example that shows how
to set up, compile, and run the project.
</para>
<section id='creating-and-running-a-project-based-on-gnu-autotools'>
<title>Creating and Running a Project Based on GNU Autotools</title>
<para>
Follow these steps to create a simple autotools-based project:
<orderedlist>
<listitem><para><emphasis>Create your directory:</emphasis>
Create a clean directory for your project and then make
that directory your working location:
<literallayout class='monospaced'>
$ mkdir $HOME/helloworld
$ cd $HOME/helloworld
</literallayout></para></listitem>
<listitem><para><emphasis>Populate the directory:</emphasis>
Create <filename>hello.c</filename>, <filename>Makefile.am</filename>,
and <filename>configure.in</filename> files as follows:
<itemizedlist>
<listitem><para>For <filename>hello.c</filename>, include
these lines:
<literallayout class='monospaced'>
#include &lt;stdio.h&gt;
main()
{
printf("Hello World!\n");
}
</literallayout></para></listitem>
<listitem><para>For <filename>Makefile.am</filename>,
include these lines:
<literallayout class='monospaced'>
bin_PROGRAMS = hello
hello_SOURCES = hello.c
</literallayout></para></listitem>
<listitem><para>For <filename>configure.in</filename>,
include these lines:
<literallayout class='monospaced'>
AC_INIT(hello.c)
AM_INIT_AUTOMAKE(hello,0.1)
AC_PROG_CC
AC_PROG_INSTALL
AC_OUTPUT(Makefile)
</literallayout></para></listitem>
</itemizedlist></para></listitem>
<listitem><para><emphasis>Source the cross-toolchain
environment setup file:</emphasis>
Installation of the cross-toolchain creates a cross-toolchain
environment setup script in <filename>/opt/poky/&lt;release&gt;</filename>.
Before you can use the tools to develop your project, you must
source this setup script.
The script begins with the string "environment-setup" and contains
the machine architecture, which is followed by the string
"poky-linux".
Here is an example for an environment setup using the
32-bit Intel x86 Architecture and using the
&DISTRO_NAME; Yocto Project release:
<literallayout class='monospaced'>
$ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux
</literallayout></para></listitem>
<listitem><para><emphasis>Generate the local <filename>aclocal.m4</filename>
files and create the configure script:</emphasis>
The following GNU Autotools generate the local
<filename>aclocal.m4</filename> files and create the
configure script:
<literallayout class='monospaced'>
$ aclocal
$ autoconf
</literallayout></para></listitem>
<listitem><para><emphasis>Generate files needed by GNU
coding standards:</emphasis>
GNU coding standards require certain files in order for the
project to be compliant.
This command creates those files:
<literallayout class='monospaced'>
$ touch NEWS README AUTHORS ChangeLog
</literallayout></para></listitem>
<listitem><para><emphasis>Generate the <filename>configure</filename>
file:</emphasis>
This command generates the <filename>configure</filename>:
<literallayout class='monospaced'>
$ automake -a
</literallayout></para></listitem>
<listitem><para><emphasis>Cross-compile the project:</emphasis>
This command compiles the project using the cross-compiler:
<literallayout class='monospaced'>
$ ./configure ${CONFIGURE_FLAGS}
</literallayout></para></listitem>
<listitem><para><emphasis>Make and install the project:</emphasis>
These two commands generate and install the project into the
destination directory:
<literallayout class='monospaced'>
$ make
$ make install DESTDIR=./tmp
</literallayout></para></listitem>
<listitem><para><emphasis>Verify the installation:</emphasis>
This command is a simple way to verify the installation
of your project.
Running the command prints the architecture on which
the binary file can run.
This architecture should be the same architecture that
the installed cross-toolchain supports.
<literallayout class='monospaced'>
$ file ./tmp/usr/local/bin/hello
</literallayout></para></listitem>
<listitem><para><emphasis>Execute your project:</emphasis>
To execute the project in the shell, simply enter the name.
You could also copy the binary to the actual target hardware
and run the project there as well:
<literallayout class='monospaced'>
$ ./hello
</literallayout>
As expected, the project displays the "Hello World!" message.
</para></listitem>
</orderedlist>
</para>
</section>
<section id='passing-host-options'>
<title>Passing Host Options</title>
<para>
For an Autotools-based project, you can use the cross-toolchain by just
passing the appropriate host option to <filename>configure.sh</filename>.
The host option you use is derived from the name of the environment setup
script in <filename>/opt/poky</filename> resulting from installation of the
cross-toolchain tarball.
For example, the host option for an ARM-based target that uses the GNU EABI
is <filename>armv5te-poky-linux-gnueabi</filename>.
You will notice that the name of the script is
<filename>environment-setup-armv5te-poky-linux-gnueabi</filename>.
Thus, the following command works:
<literallayout class='monospaced'>
$ ./configure --host=armv5te-poky-linux-gnueabi \
--with-libtool-sysroot=&lt;sysroot-dir&gt;
</literallayout>
</para>
<para>
This single command updates your project and rebuilds it using the appropriate
cross-toolchain tools.
</para>
<note>
If <filename>configure</filename> script results in problems recognizing the
<filename>--with-libtool-sysroot=&lt;sysroot-dir&gt;</filename> option,
regenerate the script to enable the support by doing the following and then
re-running the script:
<literallayout class='monospaced'>
</literallayout>
</para>
<para>
This single command updates your project and rebuilds it using the appropriate
cross-toolchain tools.
<note>
If <filename>configure</filename> script results in problems recognizing the
<filename>--with-libtool-sysroot=&lt;sysroot-dir&gt;</filename> option,
regenerate the script to enable the support by doing the following and then
re-running the script:
<literallayout class='monospaced'>
$ libtoolize --automake
$ aclocal -I ${OECORE_NATIVE_SYSROOT}/usr/share/aclocal \
[-I &lt;dir_containing_your_project-specific_m4_macros&gt;]
$ autoconf
$ autoheader
$ automake -a
</literallayout>
</note>
</literallayout>
</note>
</para>
</section>
</section>
<section id='makefile-based-projects'>
<title>Makefile-Based Projects</title>
<para>
For a Makefile-based project, you use the cross-toolchain by making sure
the tools are used.
For a Makefile-based project, you use the cross-toolchain by making sure
the tools are used.
You can do this as follows:
<literallayout class='monospaced'>
CC=arm-poky-linux-gnueabi-gcc

View File

@@ -6,44 +6,44 @@
<title>Introduction</title>
<para>
Welcome to the Yocto Project Application Developer's Guide.
This manual provides information that lets you begin developing applications
Welcome to the Yocto Project Application Developer's Guide.
This manual provides information that lets you begin developing applications
using the Yocto Project.
</para>
<para>
The Yocto Project provides an application development environment based on
The Yocto Project provides an application development environment based on
an Application Development Toolkit (ADT) and the availability of stand-alone
cross-development toolchains and other tools.
This manual describes the ADT and how you can configure and install it,
how to access and use the cross-development toolchains, how to
how to access and use the cross-development toolchains, how to
customize the development packages installation,
how to use command line development for both Autotools-based and Makefile-based projects,
and an introduction to the Eclipse Yocto Plug-in.
how to use command line development for both Autotools-based and Makefile-based projects,
and an introduction to the Eclipse Yocto Plug-in.
</para>
<section id='adt-intro-section'>
<title>The Application Development Toolkit (ADT)</title>
<para>
Part of the Yocto Project development solution is an Application Development
Part of the Yocto Project development solution is an Application Development
Toolkit (ADT).
The ADT provides you with a custom-built, cross-development
The ADT provides you with a custom-built, cross-development
platform suited for developing a user-targeted product application.
</para>
<para>
Fundamentally, the ADT consists of the following:
<itemizedlist>
<listitem><para>An architecture-specific cross-toolchain and matching
<listitem><para>An architecture-specific cross-toolchain and matching
sysroot both built by the OpenEmbedded build system, which uses Poky.
The toolchain and sysroot are based on a metadata configuration and extensions,
The toolchain and sysroot are based on a metadata configuration and extensions,
which allows you to cross-develop on the host machine for the target hardware.
</para></listitem>
<listitem><para>The Eclipse IDE Yocto Plug-in.</para></listitem>
<listitem><para>The Quick EMUlator (QEMU), which lets you simulate target hardware.
</para></listitem>
<listitem><para>Various user-space tools that greatly enhance your application
<listitem><para>Various user-space tools that greatly enhance your application
development experience.</para></listitem>
</itemizedlist>
</para>
@@ -52,11 +52,13 @@
<title>The Cross-Toolchain</title>
<para>
The cross-toolchain consists of a cross-compiler, cross-linker, and cross-debugger
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
configuration or extension for your targeted device.
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>
</section>
@@ -65,10 +67,10 @@
<title>Sysroot</title>
<para>
The matching target sysroot contains needed headers and libraries for generating
binaries that run on the target architecture.
The sysroot is based on the target root filesystem image that is built by
the OpenEmbedded build system Poky and uses the same metadata configuration
The matching target sysroot contains needed headers and libraries for generating
binaries that run on the target architecture.
The sysroot is based on the target root filesystem image that is built by
the OpenEmbedded build system Poky and uses the same metadata configuration
used to build the cross-toolchain.
</para>
</section>
@@ -77,24 +79,24 @@
<title>Eclipse Yocto Plug-in</title>
<para>
The Eclipse IDE is a popular development environment and it fully supports
development using the Yocto Project.
When you install and configure the Eclipse Yocto Project Plug-in into
the Eclipse IDE, you maximize your Yocto Project experience.
Installing and configuring the Plug-in results in an environment that
has extensions specifically designed to let you more easily develop software.
These extensions allow for cross-compilation, deployment, and execution of
your output into a QEMU emulation session.
You can also perform cross-debugging and profiling.
The environment also supports a suite of tools that allows you to perform
remote profiling, tracing, collection of power data, collection of
The Eclipse IDE is a popular development environment and it fully supports
development using the Yocto Project.
When you install and configure the Eclipse Yocto Project Plug-in into
the Eclipse IDE, you maximize your Yocto Project experience.
Installing and configuring the Plug-in results in an environment that
has extensions specifically designed to let you more easily develop software.
These extensions allow for cross-compilation, deployment, and execution of
your output into a QEMU emulation session.
You can also perform cross-debugging and profiling.
The environment also supports a suite of tools that allows you to perform
remote profiling, tracing, collection of power data, collection of
latency data, and collection of performance data.
</para>
<para>
For information about the application development workflow that uses the Eclipse
IDE and for a detailed example of how to install and configure the Eclipse
Yocto Project Plug-in, see the
Yocto Project Plug-in, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#adt-eclipse'>Working Within Eclipse</ulink>" section
of the Yocto Project Development Manual.
</para>
@@ -104,17 +106,19 @@
<title>The QEMU Emulator</title>
<para>
The QEMU emulator allows you to simulate your hardware while running your
The QEMU emulator allows you to simulate your hardware while running your
application or image.
QEMU is made available a number of ways:
<itemizedlist>
<listitem><para>If you use the ADT Installer script to install ADT, you can
<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
the environment setup script, QEMU is installed and automatically
<listitem><para>If you have downloaded a Yocto Project release and unpacked
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
<listitem><para>If you have installed the cross-toolchain
tarball and you have sourcing the toolchain's setup environment script, QEMU
is also installed and automatically available.</para></listitem>
</itemizedlist>
@@ -125,38 +129,38 @@
<title>User-Space Tools</title>
<para>
User-space tools are included as part of the distribution.
You will find these tools helpful during development.
The tools include LatencyTOP, PowerTOP, OProfile, Perf, SystemTap, and Lttng-ust.
User-space tools are included as part of the distribution.
You will find these tools helpful during development.
The tools include LatencyTOP, PowerTOP, OProfile, Perf, SystemTap, and Lttng-ust.
These tools are common development tools for the Linux platform.
<itemizedlist>
<listitem><para><emphasis>LatencyTOP:</emphasis> LatencyTOP focuses on latency
<listitem><para><emphasis>LatencyTOP:</emphasis> LatencyTOP focuses on latency
that causes skips in audio,
stutters in your desktop experience, or situations that overload your server
even when you have plenty of CPU power left.
You can find out more about LatencyTOP at
stutters in your desktop experience, or situations that overload your server
even when you have plenty of CPU power left.
You can find out more about LatencyTOP at
<ulink url='http://www.latencytop.org/'></ulink>.</para></listitem>
<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>
<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
<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='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
<ulink url='http://oprofile.sourceforge.net/about/'></ulink>.</para></listitem>
<listitem><para><emphasis>Perf:</emphasis> Performance counters for Linux used
to keep track of certain types of hardware and software events.
For more information on these types of counters see
<ulink url='https://perf.wiki.kernel.org/'></ulink> and click
<listitem><para><emphasis>Perf:</emphasis> Performance counters for Linux used
to keep track of certain types of hardware and software events.
For more information on these types of counters see
<ulink url='https://perf.wiki.kernel.org/'></ulink> and click
on “Perf tools.”</para></listitem>
<listitem><para><emphasis>SystemTap:</emphasis> A free software infrastructure
that simplifies information gathering about a running Linux system.
This information helps you diagnose performance or functional problems.
SystemTap is not available as a user-space tool through the Eclipse IDE Yocto Plug-in.
See <ulink url='http://sourceware.org/systemtap'></ulink> for more information
<listitem><para><emphasis>SystemTap:</emphasis> A free software infrastructure
that simplifies information gathering about a running Linux system.
This information helps you diagnose performance or functional problems.
SystemTap is not available as a user-space tool through the Eclipse IDE Yocto Plug-in.
See <ulink url='http://sourceware.org/systemtap'></ulink> for more information
on SystemTap.</para></listitem>
<listitem><para><emphasis>Lttng-ust:</emphasis> A User-space Tracer designed to
provide detailed information on user-space activity.
<listitem><para><emphasis>Lttng-ust:</emphasis> A User-space Tracer designed to
provide detailed information on user-space activity.
See <ulink url='http://lttng.org/ust'></ulink> for more information on Lttng-ust.
</para></listitem>
</itemizedlist>

View File

@@ -2,7 +2,7 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<book id='adt-manual' lang='en'
<book id='adt-manual' lang='en'
xmlns:xi="http://www.w3.org/2003/XInclude"
xmlns="http://docbook.org/ns/docbook"
>
@@ -10,10 +10,10 @@
<mediaobject>
<imageobject>
<imagedata fileref='figures/adt-title.png'
format='SVG'
<imagedata fileref='figures/adt-title.png'
format='SVG'
align='left' scalefit='1' width='100%'/>
</imageobject>
</imageobject>
</mediaobject>
<title></title>
@@ -51,9 +51,14 @@
</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>
<revision>
<revnumber>1.4</revnumber>
<date>Sometime in 2013</date>
<revremark>Released with the Yocto Project 1.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -63,12 +68,12 @@
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this document under
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note>
Due to production processes, there could be differences between the Yocto Project
documentation bundled in the release tarball and the
documentation bundled in the release tarball and the
<ulink url='&YOCTO_DOCS_ADT_URL;'>Yocto Project Application Developer's Guide</ulink> on
the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
For the latest version of this manual, see the manual on the website.
@@ -92,6 +97,6 @@
-->
</book>
<!--
vim: expandtab tw=80 ts=4
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -6,10 +6,10 @@
<title>Optionally Customizing the Development Packages Installation</title>
<para>
Because the Yocto Project is suited for embedded Linux development, it is
likely that you will need to customize your development packages installation.
For example, if you are developing a minimal image, then you might not need
certain packages (e.g. graphics support packages).
Because the Yocto Project is suited for embedded Linux development, it is
likely that you will need to customize your development packages installation.
For example, if you are developing a minimal image, then you might not need
certain packages (e.g. graphics support packages).
Thus, you would like to be able to remove those packages from your target sysroot.
</para>
@@ -17,24 +17,24 @@
<title>Package Management Systems</title>
<para>
The OpenEmbedded build system supports the generation of sysroot files using
The OpenEmbedded build system supports the generation of sysroot files using
three different Package Management Systems (PMS):
<itemizedlist>
<listitem><para><emphasis>OPKG:</emphasis> A less well known PMS whose use
originated in the OpenEmbedded and OpenWrt embedded Linux projects.
<listitem><para><emphasis>OPKG:</emphasis> A less well known PMS whose use
originated in the OpenEmbedded and OpenWrt embedded Linux projects.
This PMS works with files packaged in an <filename>.ipk</filename> format.
See <ulink url='http://en.wikipedia.org/wiki/Opkg'></ulink> for more
See <ulink url='http://en.wikipedia.org/wiki/Opkg'></ulink> for more
information about OPKG.</para></listitem>
<listitem><para><emphasis>RPM:</emphasis> A more widely known PMS intended for GNU/Linux
distributions.
<listitem><para><emphasis>RPM:</emphasis> A more widely known PMS intended for GNU/Linux
distributions.
This PMS works with files packaged in an <filename>.rms</filename> format.
The build system currently installs through this PMS by default.
The build system currently installs through this PMS by default.
See <ulink url='http://en.wikipedia.org/wiki/RPM_Package_Manager'></ulink>
for more information about RPM.</para></listitem>
<listitem><para><emphasis>Debian:</emphasis> The PMS for Debian-based systems
is built on many PMS tools.
The lower-level PMS tool <filename>dpkg</filename> forms the base of the Debian PMS.
For information on dpkg see
<listitem><para><emphasis>Debian:</emphasis> The PMS for Debian-based systems
is built on many PMS tools.
The lower-level PMS tool <filename>dpkg</filename> forms the base of the Debian PMS.
For information on dpkg see
<ulink url='http://en.wikipedia.org/wiki/Dpkg'></ulink>.</para></listitem>
</itemizedlist>
</para>
@@ -44,13 +44,13 @@
<title>Configuring the PMS</title>
<para>
Whichever PMS you are using, you need to be sure that the
Whichever PMS you are using, you need to be sure that the
<ulink url='&YOCTO_DOCS_REF_URL;#var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></ulink>
variable in the <filename>conf/local.conf</filename>
file is set to reflect that system.
file is set to reflect that system.
The first value you choose for the variable specifies the package file format for the root
filesystem at sysroot.
Additional values specify additional formats for convenience or testing.
Additional values specify additional formats for convenience or testing.
See the configuration file for details.
</para>
@@ -61,14 +61,14 @@
</note>
<para>
As an example, consider a scenario where you are using OPKG and you want to add
As an example, consider a scenario where you are using OPKG and you want to add
the <filename>libglade</filename> package to the target sysroot.
</para>
<para>
First, you should generate the <filename>ipk</filename> file for the
<filename>libglade</filename> package and add it
into a working <filename>opkg</filename> repository.
First, you should generate the <filename>ipk</filename> file for the
<filename>libglade</filename> package and add it
into a working <filename>opkg</filename> repository.
Use these commands:
<literallayout class='monospaced'>
$ bitbake libglade
@@ -77,12 +77,12 @@
</para>
<para>
Next, source the environment setup script found in the
<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>.
Next, source the environment setup script found in the
<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>
that corresponds to the <filename>opkg</filename> repository you have just created.
that corresponds to the <filename>opkg</filename> repository you have just created.
The following command forms should now work:
<literallayout class='monospaced'>
$ opkg-cl f &lt;conf_file&gt; -o &lt;sysroot_dir&gt; update

View File

@@ -8,7 +8,7 @@
<para>
In order to develop applications, you need set up your host development system.
Several ways exist that allow you to install cross-development tools, QEMU, the
Several ways exist that allow you to install cross-development tools, QEMU, the
Eclipse Yocto Plug-in, and other tools.
This chapter describes how to prepare for application development.
</para>
@@ -18,43 +18,43 @@
<para>
The following list describes installation methods that set up varying degrees of tool
availabiltiy on your system.
availability on your system.
Regardless of the installation method you choose,
you must <filename>source</filename> the cross-toolchain
environment setup script before you use a toolchain.
See the "<link linkend='setting-up-the-cross-development-environment'>Setting Up the
See the "<link linkend='setting-up-the-cross-development-environment'>Setting Up the
Cross-Development Environment</link>" section for more information.
</para>
<note>
<para>Avoid mixing installation methods when installing toolchains for different architectures.
For example, avoid using the ADT Installer to install some toolchains and then hand-installing
cross-development toolchains by running the toolchain installer for different architectures.
cross-development toolchains by running the toolchain installer for different architectures.
Mixing installation methods can result in situations where the ADT Installer becomes
unreliable and might not install the toolchain.</para>
<para>If you must mix installation methods, you might avoid problems by deleting
<filename>/var/lib/opkg</filename>, thus purging the <filename>opkg</filename> package
<para>If you must mix installation methods, you might avoid problems by deleting
<filename>/var/lib/opkg</filename>, thus purging the <filename>opkg</filename> package
metadata</para>
</note>
<para>
<itemizedlist>
<listitem><para><emphasis>Use the ADT Installer Script:</emphasis>
This method is the recommended way to install the ADT because it
automates much of the process for you.
For example, you can configure the installation to install the QEMU emulator
and the user-space NFS, specify which root filesystem profiles to download,
and the user-space NFS, specify which root filesystem profiles to download,
and define the target sysroot location.</para></listitem>
<listitem><para><emphasis>Use an Existing Toolchain:</emphasis>
Using this method, you select and download an architecture-specific
toolchain installer and then run the script to hand-install the toolchain.
If you use this method, you just get the cross-toolchain and QEMU - you do not
If you use this method, you just get the cross-toolchain and QEMU - you do not
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>,
If you already have a
<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
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>
</itemizedlist>
</para>
@@ -63,8 +63,16 @@
<title>Using the ADT Installer</title>
<para>
To run the ADT Installer, you need to first get the ADT Installer tarball and then run the ADT
Installer Script.
To run the ADT Installer, you need to get the ADT Installer tarball, be sure
you have the necessary host development packages that support the ADT Installer,
and then run the ADT Installer Script.
</para>
<para>
For a list of the host packages needed to support ADT installation and use, see the
"ADT Installer Extras" lists in the
"<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>" section
of the Yocto Project Reference Manual.
</para>
<section id='getting-the-adt-installer-tarball'>
@@ -72,27 +80,27 @@
<para>
The ADT Installer is contained in the ADT Installer tarball.
You can download the tarball into any directory from the
You can download the tarball into any directory from the
<ulink url='&YOCTO_DL_URL;/releases'>Index of Releases</ulink>, specifically
at
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>.
Or, you can use BitBake to generate the tarball inside the existing
<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>
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>
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,
and run the <filename>bitbake</filename> command that results in the tarball
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,
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'>
$ cd ~
@@ -112,107 +120,97 @@
<para>
Before running the ADT Installer script, you need to unpack the tarball.
You can unpack the tarball in any directory you wish.
For example, this command copies the ADT Installer tarball from where
it was built into the home directory and then unpacks the tarball into
For example, this command copies the ADT Installer tarball from where
it was built into the home directory and then unpacks the tarball into
a top-level directory named <filename>adt-installer</filename>:
<literallayout class='monospaced'>
$ cd ~
$ cp ~/poky/build/tmp/deploy/sdk/adt_installer.tar.bz2 $HOME
$ tar -xjf adt_installer.tar.bz2
</literallayout>
Unpacking it creates the directory <filename>adt-installer</filename>,
Unpacking it creates the directory <filename>adt-installer</filename>,
which contains the ADT Installer script (<filename>adt_installer</filename>)
and its configuration file (<filename>adt_installer.conf</filename>).
</para>
<para>
Before you run the script, however, you should examine the ADT Installer configuration
file and be sure you are going to get what you want.
Before you run the script, however, you should examine the ADT Installer configuration
file and be sure you are going to get what you want.
Your configurations determine which kernel and filesystem image are downloaded.
</para>
<para>
The following list describes the configurations you can define for the ADT Installer.
For configuration values and restrictions, see the comments in
<para>
The following list describes the configurations you can define for the ADT Installer.
For configuration values and restrictions, see the comments in
the <filename>adt-installer.conf</filename> file:
<itemizedlist>
<listitem><para><filename>YOCTOADT_REPO</filename>: This area
includes the IPKG-based packages and the root filesystem upon which
the installation is based.
If you want to set up your own IPKG repository pointed to by
<filename>YOCTOADT_REPO</filename>, you need to be sure that the
directory structure follows the same layout as the reference directory
set up at <ulink url='http://adtrepo.yoctoproject.org'></ulink>.
<listitem><para><filename>YOCTOADT_REPO</filename>: This area
includes the IPKG-based packages and the root filesystem upon which
the installation is based.
If you want to set up your own IPKG repository pointed to by
<filename>YOCTOADT_REPO</filename>, you need to be sure that the
directory structure follows the same layout as the reference directory
set up at <ulink url='http://adtrepo.yoctoproject.org'></ulink>.
Also, your repository needs to be accessible through HTTP.</para></listitem>
<listitem><para><filename>YOCTOADT_TARGETS</filename>: The machine
target architectures for which you want to set up cross-development
<listitem><para><filename>YOCTOADT_TARGETS</filename>: The machine
target architectures for which you want to set up cross-development
environments.</para></listitem>
<listitem><para><filename>YOCTOADT_QEMU</filename>: Indicates whether
<listitem><para><filename>YOCTOADT_QEMU</filename>: Indicates whether
or not to install the emulator QEMU.</para></listitem>
<listitem><para><filename>YOCTOADT_NFS_UTIL</filename>: Indicates whether
or not to install user-mode NFS.
If you plan to use the Eclipse IDE Yocto plug-in against QEMU,
<listitem><para><filename>YOCTOADT_NFS_UTIL</filename>: Indicates whether
or not to install user-mode NFS.
If you plan to use the Eclipse IDE Yocto plug-in against QEMU,
you should install NFS.
<note>To boot QEMU images using our userspace NFS server, you need
to be running <filename>portmap</filename> or <filename>rpcbind</filename>.
If you are running <filename>rpcbind</filename>, you will also need to add the
<filename>-i</filename> option when <filename>rpcbind</filename> starts up.
Please make sure you understand the security implications of doing this.
You might also have to modify your firewall settings to allow
<note>To boot QEMU images using our userspace NFS server, you need
to be running <filename>portmap</filename> or <filename>rpcbind</filename>.
If you are running <filename>rpcbind</filename>, you will also need to add the
<filename>-i</filename> option when <filename>rpcbind</filename> starts up.
Please make sure you understand the security implications of doing this.
You might also have to modify your firewall settings to allow
NFS booting to work.</note></para></listitem>
<listitem><para><filename>YOCTOADT_ROOTFS_&lt;arch&gt;</filename>: The root
filesystem images you want to download from the
<listitem><para><filename>YOCTOADT_ROOTFS_&lt;arch&gt;</filename>: The root
filesystem images you want to download from the
<filename>YOCTOADT_IPKG_REPO</filename> repository.</para></listitem>
<listitem><para><filename>YOCTOADT_TARGET_SYSROOT_IMAGE_&lt;arch&gt;</filename>: The
<listitem><para><filename>YOCTOADT_TARGET_SYSROOT_IMAGE_&lt;arch&gt;</filename>: The
particular root filesystem used to extract and create the target sysroot.
The value of this variable must have been specified with
The value of this variable must have been specified with
<filename>YOCTOADT_ROOTFS_&lt;arch&gt;</filename>.
For example, if you downloaded both <filename>minimal</filename> and
<filename>sato-sdk</filename> images by setting
For example, if you downloaded both <filename>minimal</filename> and
<filename>sato-sdk</filename> images by setting
<filename>YOCTOADT_ROOTFS_&lt;arch&gt;</filename>
to "minimal sato-sdk", then <filename>YOCTOADT_ROOTFS_&lt;arch&gt;</filename>
must be set to either <filename>minimal</filename> or
must be set to either <filename>minimal</filename> or
<filename>sato-sdk</filename>.</para></listitem>
<listitem><para><filename>YOCTOADT_TARGET_SYSROOT_LOC_&lt;arch&gt;</filename>: The
<listitem><para><filename>YOCTOADT_TARGET_SYSROOT_LOC_&lt;arch&gt;</filename>: The
location on the development host where the target sysroot is created.
</para></listitem>
</itemizedlist>
</para>
<para>
After you have configured the <filename>adt_installer.conf</filename> file,
After you have configured the <filename>adt_installer.conf</filename> file,
run the installer using the following command.
Be sure that you are not trying to use cross-compilation tools.
When you run the installer, the environment must use a
Be sure that you are not trying to use cross-compilation tools.
When you run the installer, the environment must use a
host <filename>gcc</filename>:
<literallayout class='monospaced'>
$ cd ~/adt-installer
$ ./adt_installer
</literallayout>
</para>
<note>
The ADT Installer requires the <filename>libtool</filename> package to complete.
If you install the recommended packages as described in
"<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>"
section of the Yocto Project Quick Start, then you will have libtool installed.
</note>
<para>
Once the installer begins to run, you are asked to enter the location for
Once the installer begins to run, you are asked to enter the location for
cross-toolchain installation.
The default location is <filename>/opt/poky/&lt;release&gt;</filename>.
After selecting the location, you are prompted to run in
interactive or silent mode.
If you want to closely monitor the installation, choose “I” for interactive
mode rather than “S” for silent mode.
After selecting the location, you are prompted to run in
interactive or silent mode.
If you want to closely monitor the installation, choose “I” for interactive
mode rather than “S” for silent mode.
Follow the prompts from the script to complete the installation.
</para>
<para>
Once the installation completes, the ADT, which includes the cross-toolchain, is installed.
You will notice environment setup files for the cross-toolchain in
You will notice environment setup files for the cross-toolchain in
<filename>&YOCTO_ADTPATH_DIR;</filename>,
and image tarballs in the <filename>adt-installer</filename>
directory according to your installer configurations, and the target sysroot located
@@ -226,57 +224,65 @@
<title>Using a Cross-Toolchain Tarball</title>
<para>
If you want to simply install the cross-toolchain by hand, you can do so by running the
toolchain installer.
If you use this method to install the cross-toolchain and you still need to install the target
If you want to simply install the cross-toolchain by hand, you can do so by running the
toolchain installer.
If you use this method to install the cross-toolchain and you still need to install the target
sysroot, you will have to extract and install sysroot separately.
For information on how to do this, see the
For information on how to do this, see the
"<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>" section.
</para>
<para>
Follow these steps:
<orderedlist>
<listitem><para>Go to
<ulink url='&YOCTO_TOOLCHAIN_DL_URL;'></ulink>
and find the folder that matches your host development system
(i.e. <filename>i686</filename> for 32-bit machines or
<listitem><para>Go to
<ulink url='&YOCTO_TOOLCHAIN_DL_URL;'></ulink>
and find the folder that matches your host development system
(i.e. <filename>i686</filename> for 32-bit machines or
<filename>x86-64</filename> for 64-bit machines).</para></listitem>
<listitem><para>Go into that folder and download the toolchain installer whose name
<listitem><para>Go into that folder and download the toolchain installer whose name
includes the appropriate target architecture.
For example, if your host development system is an Intel-based 64-bit system and
you are going to use your cross-toolchain for an Intel-based 32-bit target, go into the
For example, if your host development system is an Intel-based 64-bit system and
you are going to use your cross-toolchain for an Intel-based 32-bit target, go into the
<filename>x86_64</filename> folder and download the following installer:
<literallayout class='monospaced'>
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>.
<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 need GMAE, you should use the <filename>bitbake meta-toolchain-gmae</filename>
command.
command.
The resulting installation script when run will support such development.
However, if you are not concerned with GMAE,
However, if you are not concerned with GMAE,
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.
When the <filename>bitbake</filename> command completes, the toolchain installer will
be in <filename>tmp/deploy/sdk</filename> in the build directory.
<para>Use the appropriate <filename>bitbake</filename> command only after you have
sourced the <filename>&OE_INIT_PATH;</filename> script located in the Source
Directory and you have made sure your <filename>conf/local.conf</filename>
variables are correct.
In particular, you need to be sure the
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
variable matches the architecture for which you are building and that the
<filename>SDKMACHINE</filename> variable is correctly set if you are building
a toolchain for an architecture that differs from your current
development host machine.</para>
<para>When the <filename>bitbake</filename> command completes, the
toolchain installer will 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.
You must change the permissions on the toolchain installer
You must change the permissions on the toolchain installer
script so that it is executable.</para>
<para>The following command shows how to run the installer given a toolchain tarball
<para>The following command shows how to run the installer given a toolchain tarball
for a 64-bit development host system and a 32-bit target architecture.
The example assumes the toolchain installer is located in <filename>~/Downloads/</filename>.
<literallayout class='monospaced'>
$ ~/Downloads/poky-eglibc-x86_64-i586-toolchain-gmae-&DISTRO;.sh
</literallayout>
<note>
If you do not have write permissions for the directory into which you are installing
the toolchain, the toolchain installer notifies you and exits.
If you do not have write permissions for the directory into which you are installing
the toolchain, the toolchain installer notifies you and exits.
Be sure you have write permissions in the directory and run the installer again.
</note>
Once the tarball is expanded, the cross-toolchain is installed.
@@ -290,50 +296,50 @@
<title>Using BitBake and the Build Directory</title>
<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>.
This method does not install the toolchain into the
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>.
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
As with the previous method, if you need to install the target sysroot, you must
do that separately as well.
</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>.
</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
<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>.
</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
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
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
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
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
command.</note></para></listitem>
<listitem><para>Run <filename>bitbake meta-ide-support</filename> to complete the
<listitem><para>Run <filename>bitbake meta-ide-support</filename> to complete the
cross-toolchain generation.
<note>If you change out of your working directory after you
<note>If you change out of your working directory after you
<filename>source</filename> the environment setup script and before you run
the <filename>bitbake</filename> command, the command might not work.
Be sure to run the <filename>bitbake</filename> command immediately
after checking or editing the <filename>local.conf</filename> but without
the <filename>bitbake</filename> command, the command might not work.
Be sure to run the <filename>bitbake</filename> command immediately
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.
You will notice environment setup files for the cross-toolchain in the
build directory in the <filename>tmp</filename> directory.
Once the <filename>bitbake</filename> command finishes,
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.
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.
For information on how to do this, see the
For information on how to do this, see the
"<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>" section.
</para></listitem>
</orderedlist>
@@ -345,24 +351,24 @@
<title>Setting Up the Cross-Development Environment</title>
<para>
Before you can develop using the cross-toolchain, you need to set up the
cross-development environment by sourcing the toolchain's environment setup script.
Before you can develop using the cross-toolchain, you need to set up the
cross-development environment by sourcing the toolchain's environment setup script.
If you used the ADT Installer or hand-installed cross-toolchain,
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>,
you can find the environment setup
script for the toolchain in the build directory's <filename>tmp</filename> directory.
directory.
If you installed the toolchain in the
<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.
</para>
<para>
Be sure to run the environment setup script that matches the architecture for
which you are developing.
<para>
Be sure to run the environment setup script that matches the architecture for
which you are developing.
Environment setup scripts begin with the string “<filename>environment-setup</filename>
and include as part of their name the architecture.
For example, the toolchain environment setup script for a 64-bit IA-based architecture would
be the following:
and include as part of their name the architecture.
For example, the toolchain environment setup script for a 64-bit IA-based architecture would
be the following:
<literallayout class='monospaced'>
&YOCTO_ADTPATH_DIR;/environment-setup-x86_64-poky-linux
</literallayout>
@@ -373,7 +379,7 @@
<title>Securing Kernel and Filesystem Images</title>
<para>
You will need to have a kernel and filesystem image to boot using your
You will need to have a kernel and filesystem image to boot using your
hardware or the QEMU emulator.
Furthermore, if you plan on booting your image using NFS or you want to use the root filesystem
as the target sysroot, you need to extract the root filesystem.
@@ -385,62 +391,62 @@
<para>
To get the kernel and filesystem images, you either have to build them or download
pre-built versions.
You can find examples for both these situations in the
"<ulink url='&YOCTO_DOCS_QS_URL;#test-run'>A Quick Test Run</ulink>" section of
You can find examples for both these situations in the
"<ulink url='&YOCTO_DOCS_QS_URL;#test-run'>A Quick Test Run</ulink>" section of
the Yocto Project Quick Start.
</para>
<para>
The Yocto Project ships basic kernel and filesystem images for several
architectures (<filename>x86</filename>, <filename>x86-64</filename>,
<filename>mips</filename>, <filename>powerpc</filename>, and <filename>arm</filename>)
that you can use unaltered in the QEMU emulator.
These kernel images reside in the release
<para>
The Yocto Project ships basic kernel and filesystem images for several
architectures (<filename>x86</filename>, <filename>x86-64</filename>,
<filename>mips</filename>, <filename>powerpc</filename>, and <filename>arm</filename>)
that you can use unaltered in the QEMU emulator.
These kernel images reside in the release
area - <ulink url='&YOCTO_MACHINES_DL_URL;'></ulink>
and are ideal for experimentation using Yocto Project.
For information on the image types you can build using the OpenEmbedded build system,
For information on the image types you can build using the OpenEmbedded build system,
see the
"<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in
"<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in
the Yocto Project Reference Manual.
</para>
<para>
If you are planning on developing against your image and you are not
building or using one of the Yocto Project development images
building or using one of the Yocto Project development images
(e.g. core-image-*-dev), you must be sure to include the development
packages as part of your image recipe.
</para>
</para>
<para>
Furthermore, if you plan on remotely deploying and debugging your
application from within the
Furthermore, if you plan on remotely deploying and debugging your
application from within the
Eclipse IDE, you must have an image that contains the Yocto Target Communication
Framework (TCF) agent (<filename>tcf-agent</filename>).
By default, the Yocto Project provides only one type pre-built image that contains the
Framework (TCF) agent (<filename>tcf-agent</filename>).
By default, the Yocto Project provides only one type pre-built image that contains the
<filename>tcf-agent</filename>.
And, those images are SDK (e.g.<filename>core-image-sato-sdk</filename>).
</para>
<para>
If you want to use a different image type that contains the <filename>tcf-agent</filename>,
If you want to use a different image type that contains the <filename>tcf-agent</filename>,
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>
<listitem><para>Modify the <filename>conf/local.conf</filename> configuration in
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
With this method, you need to modify the
<ulink url='&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGE_FEATURES'><filename>EXTRA_IMAGE_FEATURES</filename></ulink>
variable to have the value of "tools-debug" before rebuilding the image.
variable to have the value of "tools-debug" before rebuilding the image.
Once the image is rebuilt, the <filename>tcf-agent</filename> will be included
in the image and is launched automatically after the boot.</para></listitem>
<listitem><para>Manually build the <filename>tcf-agent</filename>.
To build the agent, follow these steps:
<orderedlist>
<listitem><para>Be sure the ADT is installed as described in the
<listitem><para>Be sure the ADT is installed as described in the
"<link linkend='installing-the-adt'>Installing the ADT and Toolchains</link>" section.
</para></listitem>
<listitem><para>Set up the cross-development environment as described in the
"<link linkend='setting-up-the-cross-development-environment'>Setting
<listitem><para>Set up the cross-development environment as described in the
"<link linkend='setting-up-the-cross-development-environment'>Setting
Up the Cross-Development Environment</link>" section.</para></listitem>
<listitem><para>Get the <filename>tcf-agent</filename> source code using
the following commands:
@@ -449,17 +455,17 @@
$ cd agent
</literallayout></para></listitem>
<listitem><para>Modify the <filename>Makefile.inc</filename> file
for the cross-compilation environment by setting the
<filename>OPSYS</filename> and
for the cross-compilation environment by setting the
<filename>OPSYS</filename> and
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
variables according to your target.</para></listitem>
<listitem><para>Use the cross-development tools to build the
<filename>tcf-agent</filename>.
<listitem><para>Use the cross-development tools to build the
<filename>tcf-agent</filename>.
Before you "Make" the file, be sure your cross-tools are set up first.
See the "<link linkend='makefile-based-projects'>Makefile-Based Projects</link>"
section for information on how to make sure the cross-tools are set up
correctly.</para>
<para>If the build is successful, the <filename>tcf-agent</filename> output will
<para>If the build is successful, the <filename>tcf-agent</filename> output will
be <filename>obj/$(OPSYS)/$(MACHINE)/Debug/agent</filename>.</para></listitem>
<listitem><para>Deploy the agent into the image's root filesystem.</para></listitem>
</orderedlist>
@@ -474,19 +480,19 @@
<para>
You must extract the root filesystem if you want to boot the image using NFS
or you want to use the root filesystem as the target sysroot.
For example, the Eclipse IDE environment with the Eclipse Yocto Plug-in installed allows you
For example, the Eclipse IDE environment with the Eclipse Yocto Plug-in installed allows you
to use QEMU to boot under NFS.
Another example is if you want to develop your target application using the
root filesystem as the target sysroot.
root filesystem as the target sysroot.
</para>
<para>
<para>
To extract the root filesystem, first <filename>source</filename>
the cross-development environment setup script and then
use the <filename>runqemu-extract-sdk</filename> command on the
filesystem image.
the cross-development environment setup script and then
use the <filename>runqemu-extract-sdk</filename> command on the
filesystem image.
For example, the following commands set up the environment and then extract
the root filesystem from a previously built filesystem image tarball named
the root filesystem from a previously built filesystem image tarball named
<filename>core-image-sato-sdk-qemux86-2011091411831.rootfs.tar.bz2</filename>.
The example extracts the root filesystem into the <filename>$HOME/qemux86-sato</filename>
directory:
@@ -496,7 +502,7 @@
tmp/deploy/images/core-image-sato-sdk-qemux86-2011091411831.rootfs.tar.bz2 \
$HOME/qemux86-sato
</literallayout>
In this case, you could now point to the target sysroot at
In this case, you could now point to the target sysroot at
<filename>$HOME/qemux86-sato</filename>.
</para>
</section>

View File

@@ -2,7 +2,7 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<book id='bsp-guide' lang='en'
<book id='bsp-guide' lang='en'
xmlns:xi="http://www.w3.org/2003/XInclude"
xmlns="http://docbook.org/ns/docbook"
>
@@ -10,13 +10,13 @@
<mediaobject>
<imageobject>
<imagedata fileref='figures/bsp-title.png'
format='SVG'
<imagedata fileref='figures/bsp-title.png'
format='SVG'
align='center' scalefit='1' width='100%'/>
</imageobject>
</imageobject>
</mediaobject>
<title></title>
<title></title>
<authorgroup>
<author>
@@ -63,9 +63,14 @@
</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>
<revision>
<revnumber>1.4</revnumber>
<date>Sometime in 2013</date>
<revremark>Released with the Yocto Project 1.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -75,12 +80,12 @@
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this document under
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/">Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note>
Due to production processes, there could be differences between the Yocto Project
documentation bundled in the release tarball and the
documentation bundled in the release tarball and the
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink> on
the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
For the latest version of this manual, see the manual on the website.
@@ -97,6 +102,6 @@
-->
</book>
<!--
vim: expandtab tw=80 ts=4
<!--
vim: expandtab tw=80 ts=4
-->

File diff suppressed because it is too large Load Diff

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
-->

File diff suppressed because it is too large Load Diff

View File

@@ -10,22 +10,22 @@
<para>
Welcome to the Yocto Project Development Manual!
This manual gives you an idea of how to use the Yocto Project to develop embedded Linux
images and user-space applications to run on targeted devices.
This manual gives you an idea of how to use the Yocto Project to develop embedded Linux
images and user-space applications to run on targeted devices.
Reading this manual gives you an overview of image, kernel, and user-space application development
using the Yocto Project.
using the Yocto Project.
Because much of the information in this manual is general, it contains many references to other
sources where you can find more detail.
For example, detailed information on Git, repositories and open source in general
can be found in many places.
Another example is how to get set up to use the Yocto Project, which our Yocto Project
can be found in many places.
Another example is how to get set up to use the Yocto Project, which our Yocto Project
Quick Start covers.
</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.
<para>
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>
@@ -35,16 +35,16 @@
<para>
The following list describes what you can get from this guide:
<itemizedlist>
<listitem><para>Information that lets you get set
<listitem><para>Information that lets you get set
up to develop using the Yocto Project.</para></listitem>
<listitem><para>Information to help developers who are new to the open source environment
and to the distributed revision control system Git, which the Yocto Project
<listitem><para>Information to help developers who are new to the open source environment
and to the distributed revision control system Git, which the Yocto Project
uses.</para></listitem>
<listitem><para>An understanding of common end-to-end development models and tasks.</para></listitem>
<listitem><para>Development case overviews for both system development and user-space
<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>
<listitem><para>An overview and understanding of the emulation environment used with
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>
@@ -57,18 +57,18 @@
<para>
This manual will not give you the following:
<itemizedlist>
<listitem><para>Step-by-step instructions if those instructions exist in other Yocto
Project documentation.
For example, the Yocto Project Application Developer's Guide contains detailed
instruction on how to run the
<listitem><para>Step-by-step instructions if those instructions exist in other Yocto
Project documentation.
For example, the Yocto Project Application Developer's Guide contains detailed
instruction on how to run the
<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>,
which is used to set up a cross-development environment.</para></listitem>
<listitem><para>Reference material.
This type of material resides in an appropriate reference manual.
For example, system variables are documented in the
<listitem><para>Reference material.
This type of material resides in an appropriate reference manual.
For example, system variables are documented in the
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>.</para></listitem>
<listitem><para>Detailed public information that is not specific to the Yocto Project.
For example, exhaustive information on how to use Git is covered better through the
<listitem><para>Detailed public information that is not specific to the Yocto Project.
For example, exhaustive information on how to use Git is covered better through the
Internet than in this manual.</para></listitem>
</itemizedlist>
</para>
@@ -76,58 +76,58 @@
<section id='other-information'>
<title>Other Information</title>
<para>
Because this manual presents overview information for many different topics, you will
need to supplement it with other information.
The following list presents other sources of information you might find helpful:
<itemizedlist>
<listitem><para><emphasis>The <ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink>:
</emphasis> The home page for the Yocto Project provides lots of information on the project
</emphasis> The home page for the Yocto Project provides lots of information on the project
as well as links to software and documentation.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>:</emphasis> This short document lets you get started
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>:</emphasis> This short document lets you get started
with the Yocto Project quickly and start building an image.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>:</emphasis> This manual is a reference
guide to the OpenEmbedded build system known as "Poky."
The manual also contains a reference chapter on Board Support Package (BSP)
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_REF_URL;'>Yocto Project Reference Manual</ulink>:</emphasis> This manual is a reference
guide to the OpenEmbedded build system known as "Poky."
The manual also contains a reference chapter on Board Support Package (BSP)
layout.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_ADT_URL;'>Yocto Project Application Developer's Guide</ulink>:</emphasis>
This guide provides information that lets you get going with the Application
Development Toolkit (ADT) and stand-alone cross-development toolchains to
This guide provides information that lets you get going with the Application
Development Toolkit (ADT) and stand-alone cross-development toolchains to
develop projects using the Yocto Project.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>:</emphasis>
This guide defines the structure for BSP components.
This guide defines the structure for BSP components.
Having a commonly understood structure encourages standardization.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_KERNEL_URL;'>Yocto Project Kernel Architecture and Use Manual</ulink>:</emphasis>
This manual describes the architecture of the Yocto Project kernel and provides
This manual describes the architecture of the Yocto Project kernel and provides
some work flow examples.</para></listitem>
<listitem><para><emphasis>
<ulink url='http://www.youtube.com/watch?v=3ZlOu-gLsh0'>
Eclipse IDE Yocto Plug-in</ulink>:</emphasis> A step-by-step instructional video that
demonstrates how an application developer uses Yocto Plug-in features within
demonstrates how an application developer uses Yocto Plug-in features within
the Eclipse IDE.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>FAQ</ulink>:</emphasis>
A list of commonly asked questions and their answers.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_HOME_URL;/download/yocto/yocto-project-&DISTRO;-release-notes-poky-&POKYVERSION;'>
Release Notes</ulink>:</emphasis> Features, updates and known issues for the current
Release Notes</ulink>:</emphasis> Features, updates and known issues for the current
release of the Yocto Project.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_HOME_URL;/projects/hob'>
Hob</ulink>:</emphasis> A graphical user interface for BitBake.
<ulink url='&YOCTO_HOME_URL;/tools-resources/projects/hob'>
Hob</ulink>:</emphasis> A graphical user interface for BitBake.
Hob's primary goal is to enable a user to perform common tasks more easily.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_HOME_URL;/documentation/build-appliance'>
Build Appliance</ulink>:</emphasis> A bootable custom embedded Linux image you can
either build using a non-Linux development system (VMware applications) or download
<ulink url='&YOCTO_HOME_URL;/download/build-appliance-0'>
Build Appliance</ulink>:</emphasis> A bootable custom embedded Linux image you can
either build using a non-Linux development system (VMware applications) or download
from the Yocto Project website.
See the <ulink url='&YOCTO_HOME_URL;/documentation/build-appliance'>Build Appliance</ulink>
See the <ulink url='&YOCTO_HOME_URL;/documentation/build-appliance-manual'>Build Appliance</ulink>
page for more information.</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_BUGZILLA_URL;'>Bugzilla</ulink>:</emphasis>
@@ -135,20 +135,23 @@
If you find problems with the Yocto Project, you should report them using this
application.</para></listitem>
<listitem><para><emphasis>
Yocto Project Mailing Lists:</emphasis> To subscribe to the Yocto Project mailing
Yocto Project Mailing Lists:</emphasis> To subscribe to the Yocto Project mailing
lists, click on the following URLs and follow the instructions:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto'></ulink> for a
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto'></ulink> for a
Yocto Project Discussions mailing list.</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/poky'></ulink> for a
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/poky'></ulink> for a
Yocto Project Discussions mailing list about the Poky build system.</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo/yocto-announce'></ulink>
for a mailing list to receive official Yocto Project announcements for developments and
as well as Yocto Project milestones.</para></listitem>
<listitem><para><ulink url='&YOCTO_LISTS_URL;/listinfo'></ulink> for a
listing of all public mailing lists on <filename>lists.yoctoproject.org</filename>.
</para></listitem>
</itemizedlist></para></listitem>
<listitem><para><emphasis>Internet Relay Chat (IRC):</emphasis>
Two IRC channels on freenode are available
for Yocto Project and Poky discussions: <filename>#yocto</filename> and
Two IRC channels on freenode are available
for Yocto Project and Poky discussions: <filename>#yocto</filename> and
<filename>#poky</filename>, respectively.</para></listitem>
<listitem><para><emphasis>
<ulink url='&OH_HOME_URL;'>OpenedHand</ulink>:</emphasis>
@@ -157,30 +160,30 @@
OpenedHand was acquired by Intel Corporation in 2008.</para></listitem>
<listitem><para><emphasis>
<ulink url='http://www.intel.com/'>Intel Corporation</ulink>:</emphasis>
A multinational semiconductor chip manufacturer company whose Software and
A multinational semiconductor chip manufacturer company whose Software and
Services Group created and supports the Yocto Project.
Intel acquired OpenedHand in 2008.</para></listitem>
<listitem><para><emphasis>
<ulink url='&OE_HOME_URL;'>OpenEmbedded</ulink>:</emphasis>
The build system used by the Yocto Project.
This project is the upstream, generic, embedded distribution from which the Yocto
The build system used by the Yocto Project.
This project is the upstream, generic, embedded distribution from which the Yocto
Project derives its build system (Poky) from and to which it contributes.</para></listitem>
<listitem><para><emphasis>
<ulink url='http://developer.berlios.de/projects/bitbake/'>
BitBake</ulink>:</emphasis> The tool used by the OpenEmbedded build system
BitBake</ulink>:</emphasis> The tool used by the OpenEmbedded build system
to process project metadata.</para></listitem>
<listitem><para><emphasis>
BitBake User Manual:</emphasis>
A comprehensive guide to the BitBake tool.
If you want information on BitBake, see the user manual inculded in the
<filename>bitbake/doc/manual</filename> directory of the
If you want information on BitBake, see the user manual inculded in the
<filename>bitbake/doc/manual</filename> directory of the
<link linkend='source-directory'>Source Directory</link>.</para></listitem>
<listitem><para><emphasis>
<ulink url='http://wiki.qemu.org/Index.html'>Quick EMUlator (QEMU)</ulink>:
</emphasis> An open-source machine emulator and virtualizer.</para></listitem>
</itemizedlist>
</para>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4

View File

@@ -7,96 +7,105 @@
<title>Kernel Modification Example</title>
<para>
Kernel modification 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.
This appendix presents simple examples that modify the kernel source code,
Kernel modification 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.
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'>
<title>Modifying the Kernel Source Code</title>
<para>
This example adds some simple QEMU emulator console output at boot time by
This example adds some simple QEMU emulator console output at boot time by
adding <filename>printk</filename> statements to the kernel's
<filename>calibrate.c</filename> source code file.
Booting the modified image causes the added messages to appear on the emulator's
console.
</para>
</para>
<section id='understanding-the-files-you-need'>
<title>Understanding the Files You Need</title>
<para>
Before you modify the kernel, you need to know what Git repositories and file
Before you modify the kernel, you need to know what Git repositories and file
structures you need.
Briefly, you need the following:
Briefly, you need the following:
<itemizedlist>
<listitem><para>A local
<link linkend='source-directory'>source directory</link> for the
<listitem><para>A local
<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>
<listitem><para>A bare clone of the
<link linkend='local-kernel-files'>Yocto Project Kernel</link> upstream Git
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.
</para></listitem>
<listitem><para>A copy of that bare clone in which you make your source
<listitem><para>A copy of that bare clone in which you make your source
modifications</para></listitem>
</itemizedlist>
</para>
<para>
The following figure summarizes these four areas.
Within each rectangular that represents a data structure, a
host development directory pathname appears at the
lower left-hand corner of the box.
<para>
The following figure summarizes these four areas.
Within each rectangular that represents a data structure, a
host development directory pathname appears at the
lower left-hand corner of the box.
These pathnames are the locations used in this example.
The figure also provides key statements and commands used during the kernel
modification process:
</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>
<para>
Here is a brief description of the four areas:
<itemizedlist>
<listitem><para><emphasis>Local Source Directory:</emphasis>
This area contains all the metadata that supports building images
<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>
This area contains the <filename>meta-kernel-dev</filename> layer,
<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
You edit <filename>.bbappend</filename> files to locate your
local kernel source files and to identify the kernel being built.
This Git repository is a gathering place for extensions to the Yocto Project
(or really any) kernel recipes that faciliate the creation and development
of kernel features, BSPs or configurations.</para>
<para>See the bulleted item
"<link linkend='poky-extras-repo'>The
<filename>poky-extras</filename> Git Repository</link>"
for information on how to get these files.</para></listitem>
<listitem><para><emphasis>Bare Clone of the Yocto Project kernel:</emphasis>
This bare Git repository tracks the upstream Git repository of the Linux
"<link linkend='poky-extras-repo'>The
<filename>poky-extras</filename> Git Repository</link>"
for information on how to get these files.</para></listitem>
<listitem><para><emphasis>Bare Clone of the Yocto Project kernel:</emphasis>
This bare Git repository tracks the upstream Git repository of the Linux
Yocto kernel source code you are changing.
When you modify the kernel you must work through a bare clone.
All source code changes you make to the kernel must be committed and
All source code changes you make to the kernel must be committed and
pushed to the bare clone using Git commands.
As mentioned, the <filename>.bbappend</filename> file in the
As mentioned, the <filename>.bbappend</filename> file in the
<filename>poky-extras</filename> repository points to the bare clone
so that the build process can locate the locally changed source files.</para>
<para>See the bulleted item
@@ -104,16 +113,16 @@
for information on how to set up the bare clone.
</para></listitem>
<listitem><para><emphasis>Copy of the Yocto Project Kernel Bare Clone:</emphasis>
This Git repository contains the actual source files that you modify.
This Git repository contains the actual source files that you modify.
Any changes you make to files in this location need to ultimately be pushed
to the bare clone using the <filename>git push</filename> command.</para>
<para>See the bulleted item
"<link linkend='local-kernel-files'>Yocto Project Kernel</link>"
for information on how to set up the bare clone.
<note>Typically, Git workflows follow a scheme where changes made to a local area
<note>Typically, Git workflows follow a scheme where changes made to a local area
are pulled into a Git repository.
However, because the <filename>git pull</filename> command does not work
with bare clones, this workflow pushes changes to the
However, because the <filename>git pull</filename> command does not work
with bare clones, this workflow pushes changes to the
repository even though you could use other more complicated methods to
get changes into the bare clone.</note>
</para></listitem>
@@ -125,27 +134,29 @@
<title>Setting Up the Local Source Directory</title>
<para>
You can set up the source directory 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.
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.
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,
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
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:
<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.
</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'>
@@ -160,23 +171,24 @@
<title>Setting Up the Local poky-extras Git Repository</title>
<para>
This example creates a local copy of the <filename>poky-extras</filename> Git
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>"
This example creates a local copy of the <filename>poky-extras</filename> Git
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
<filename>poky-extras</filename> repository.
</para>
<para>
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>.
The following commands create and checkout the local
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-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,29 +200,28 @@
<title>Setting Up the Bare Clone and its Copy</title>
<para>
This example modifies the <filename>linux-yocto-3.2</filename> kernel.
Thus, you need to create a bare clone of that kernel and then make a copy of the
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
"<link linkend='local-kernel-files'>Yocto Project Kernel</link>"
"<link linkend='local-kernel-files'>Yocto Project Kernel</link>"
for information on how to do that.
</para>
<para>
The bare clone exists for the kernel build tools and simply as the receiving end
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>
@@ -219,22 +230,22 @@
<title>Building and Booting the Default QEMU Kernel Image</title>
<para>
Before we make changes to the kernel source files, this example first builds the
Before we make changes to the kernel source files, this example first builds the
default image and then boots it inside the QEMU emulator.
<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.
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_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
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 <filename>BB_NUMBER_THREADS</filename> and
<filename>PARALLEL_MAKE</filename> to twice the number
As a guideline, set both <filename>BB_NUMBER_THREADS</filename> and
<filename>PARALLEL_MAKE</filename> to twice the number
of cores your machine supports.
</note>
The following two commands <filename>source</filename> the build environment setup script
@@ -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
@@ -269,7 +305,7 @@
before starting the build.</note>
</para>
<para>
<para>
After the build completes, you can start the QEMU emulator using the resulting image
<filename>qemux86</filename> as follows:
<literallayout class='monospaced'>
@@ -281,9 +317,9 @@
As the image boots in the emulator, console message and status output appears
across the terminal window.
Because the output scrolls by quickly, it is difficult to read.
To examine the output, you log into the system using the
To examine the output, you log into the system using the
login <filename>root</filename> with no password.
Once you are logged in, issue the following command to scroll through the
Once you are logged in, issue the following command to scroll through the
console output:
<literallayout class='monospaced'>
# dmesg | less
@@ -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.
@@ -324,7 +360,7 @@
</para>
<para>
Here is the altered code showing five new <filename>printk</filename> statements
Here is the altered code showing five new <filename>printk</filename> statements
near the top of the function:
<literallayout class='monospaced'>
void __cpuinit calibrate_delay(void)
@@ -356,16 +392,16 @@
</para>
<para>
Once the source code has been modified, you need to use Git to push the changes to
the bare clone.
If you do not push the changes, then the OpenEmbedded build system will not pick
Once the source code has been modified, you need to use Git to push the changes to
the bare clone.
If you do not push the changes, then the OpenEmbedded build system will not pick
up the changed source files.
</para>
<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>
@@ -375,43 +411,43 @@
<para>
At this point, the source has been changed and pushed.
The example now defines some variables used by the OpenEmbedded build system
The example now defines some variables used by the OpenEmbedded build system
to locate your kernel source.
You essentially need to identify where to find the kernel recipe and the changed source code.
You also need to be sure some basic configurations are in place that identify the
You also need to be sure some basic configurations are in place that identify the
type of machine you are building and to help speed up the build should your host support
multiple-core and thread capabilities.
</para>
<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
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 or you move
the bare clone, copy of the clone, or the <filename>poky-extras</filename> repository:
<itemizedlist>
<listitem><para><emphasis>Build for the Correct Target Architecture:</emphasis> The
<filename>local.conf</filename> file in the build directory defines the build's
<listitem><para><emphasis>Build for the Correct Target Architecture:</emphasis> The
<filename>local.conf</filename> file in the build directory defines the build's
target architecture.
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.
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.
In this example, <filename>MACHINE</filename> is correctly configured.
</para></listitem>
<listitem><para><emphasis>Optimize Build Time:</emphasis> Also in the
<filename>local.conf</filename> file are two variables that can speed your
<listitem><para><emphasis>Optimize Build Time:</emphasis> Also in the
<filename>local.conf</filename> file are two variables that can speed your
build time if your host supports multi-core and multi-thread capabilities:
<filename>BB_NUMBER_THREADS</filename> and <filename>PARALLEL_MAKE</filename>.
If the host system has multiple cores then you can optimize build time
by setting both these variables to twice the number of
If the host system has multiple cores then you can optimize build time
by setting both these variables to twice the number of
cores.</para></listitem>
<listitem><para><emphasis>Identify Your <filename>meta-kernel-dev</filename>
Layer:</emphasis> The <filename>BBLAYERS</filename> variable in the
<filename>bblayers.conf</filename> file found in the
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-kernel-dev</filename> layer.
By default, the <filename>BBLAYERS</filename> variable contains paths to
<filename>meta</filename> and <filename>meta-yocto</filename> in the
<filename>meta-kernel-dev</filename> layer.
By default, the <filename>BBLAYERS</filename> variable contains paths to
<filename>meta</filename> and <filename>meta-yocto</filename> in the
<filename>poky</filename> Git repository.
Add the path to your <filename>meta-kernel-dev</filename> location.
Be sure to substitute your user information in the statement.
@@ -420,40 +456,44 @@
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
<listitem><para><emphasis>Identify Your Source Files:</emphasis> 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
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>
<note>
<para>Before attempting to build the modified kernel, there is one more set of changes you
<para>Before attempting to build the modified kernel, there is one more set of changes you
need to make in the <filename>meta-kernel-dev</filename> layer.
Because all the kernel <filename>.bbappend</filename> files are parsed during the
build process regardless of whether you are using them or not, you should either
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>
Because all the kernel <filename>.bbappend</filename> files are parsed during the
build process regardless of whether you are using them or not, you should either
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.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.
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
to build all kernels in the layer.
You could end up with build errors blocking your work.</para>
</note>
</note>
</section>
<section id='building-and-booting-the-modified-qemu-kernel-image'>
@@ -464,14 +504,14 @@
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
<listitem><para>Be sure old images are cleaned out by running the
<filename>cleanall</filename> BitBake task as follows from your build directory:
<literallayout class='monospaced'>
$ bitbake -c cleanall linux-yocto
@@ -484,7 +524,7 @@
<literallayout class='monospaced'>
$ bitbake -k core-image-minimal
</literallayout></para></listitem>
<listitem><para>Finally, boot the modified image in the QEMU emulator
<listitem><para>Finally, boot the modified image in the QEMU emulator
using this command:
<literallayout class='monospaced'>
$ runqemu qemux86
@@ -493,7 +533,7 @@
</para>
<para>
Log into the machine using <filename>root</filename> with no password and then
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
@@ -501,304 +541,11 @@
</para>
<para>
You should see the results of your <filename>printk</filename> statements
You should see the results of your <filename>printk</filename> statements
as part of the output.
</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>
<!--

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -7,14 +7,14 @@
<title>Getting Started with the Yocto Project</title>
<para>
This chapter introduces the Yocto Project and gives you an idea of what you need to get started.
You can find enough information to set up your development host and build or use images for
hardware supported by the Yocto Project by reading the
This chapter introduces the Yocto Project and gives you an idea of what you need to get started.
You can find enough information to set up your development host and build or use images for
hardware supported by the Yocto Project by reading the
<ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>.
</para>
<para>
The remainder of this chapter summarizes what is in the Yocto Project Quick Start and provides
The remainder of this chapter summarizes what is in the Yocto Project Quick Start and provides
some higher-level concepts you might want to consider.
</para>
@@ -22,24 +22,24 @@
<title>Introducing the Yocto Project</title>
<para>
The Yocto Project is an open-source collaboration project focused on embedded Linux development.
The project currently provides a build system, which is
The Yocto Project is an open-source collaboration project focused on embedded Linux development.
The project currently provides a build system, which is
referred to as the OpenEmbedded build system in the Yocto Project documentation.
The Yocto Project provides various ancillary tools suitable for the embedded developer
and also features the Sato reference User Interface, which is optimized for
The Yocto Project provides various ancillary tools suitable for the embedded developer
and also features the Sato reference User Interface, which is optimized for
stylus driven, low-resolution screens.
</para>
<para>
You can use the OpenEmbedded build system, which uses
BitBake to develop complete Linux
images and associated user-space applications for architectures based on ARM, MIPS, PowerPC,
x86 and x86-64.
You can use the OpenEmbedded build system, which uses
BitBake to develop complete Linux
images and associated user-space applications for architectures based on ARM, MIPS, PowerPC,
x86 and x86-64.
While the Yocto Project does not provide a strict testing framework,
it does provide or generate for you artifacts that let you perform target-level and
emulated testing and debugging.
it does provide or generate for you artifacts that let you perform target-level and
emulated testing and debugging.
Additionally, if you are an <trademark class='trade'>Eclipse</trademark>
IDE user, you can install an Eclipse Yocto Plug-in to allow you to
IDE user, you can install an Eclipse Yocto Plug-in to allow you to
develop within that familiar environment.
</para>
</section>
@@ -50,58 +50,59 @@
<para>
Here is what you need to get set up to use the Yocto Project:
<itemizedlist>
<listitem><para><emphasis>Host System:</emphasis> You should have a reasonably current
<listitem><para><emphasis>Host System:</emphasis> You should have a reasonably current
Linux-based host system.
You will have the best results with a recent release of Fedora,
OpenSUSE, Ubuntu, or CentOS as these releases are frequently tested against the Yocto Project
and officially supported.
You will have the best results with a recent release of Fedora,
OpenSUSE, Debian, 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>
<listitem><para><emphasis>Packages:</emphasis> The OpenEmbedded build system
requires certain packages exist on your development system (e.g. Python 2.6 or 2.7).
See "<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>"
requires certain packages exist on your development system (e.g. Python 2.6 or 2.7).
See "<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>"
section in the Yocto Project Quick Start for the exact package
requirements and the installation commands to install them
requirements and the installation commands to install them
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>
one of two ways depending on whether you
<listitem id='local-yp-release'><para><emphasis>Yocto Project Release:</emphasis>
You need a release of the Yocto Project.
You set that up with a 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
back into the Yocto Project, you can simply download a Yocto Project release you want
<listitem><para><emphasis>Tarball Extraction:</emphasis> If you are not going to contribute
back into the Yocto Project, you can simply download a Yocto Project release you want
from the websites <ulink url='&YOCTO_HOME_URL;/download'>download page</ulink>.
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
<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
with a top-level folder named <filename>&YOCTO_POKY;</filename>:
<literallayout class='monospaced'>
$ tar xfj &YOCTO_POKY_TARBALL;
</literallayout></para>
<para>This method does not produce a local Git repository.
<para>This method does not produce a local Git repository.
Instead, you simply end up with a snapshot of the release.</para></listitem>
<listitem><para><emphasis>Git Repository Method:</emphasis> If you are going to be contributing
back into the Yocto Project or you simply want to keep up
with the latest developments, you should use Git commands to set up a local
Git repository of the upstream <filename>poky</filename> source repository.
Doing so creates a repository with a complete history of changes and allows
Doing so creates a repository with a complete history of changes and allows
you to easily submit your changes upstream to the project.
Because you cloned the repository, you have access to all the Yocto Project development
branches and tag names used in the upstream repository.</para>
<para>The following transcript shows how to clone the <filename>poky</filename>
<para>The following transcript shows how to clone the <filename>poky</filename>
Git repository into the current working directory.
<note>You can view the Yocto Project Source Repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink></note>
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink></note>
The command creates the local repository in a directory named <filename>poky</filename>.
For information on Git used within the Yocto Project, see the
"<link linkend='git'>Git</link>" section.
@@ -119,27 +120,27 @@
wiki page</ulink>, which describes how to create both <filename>poky</filename>
and <filename>meta-intel</filename> Git repositories.</para></listitem>
</itemizedlist></para></listitem>
<listitem id='local-kernel-files'><para><emphasis>Yocto Project Kernel:</emphasis>
If you are going to be making modifications to a supported Yocto Project kernel, you
<listitem id='local-kernel-files'><para><emphasis>Yocto Project Kernel:</emphasis>
If you are going to be making modifications to a supported Yocto Project kernel, you
need to establish local copies of the source.
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>
For simplicity, it is recommended that you create these structures outside of the
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
of the <filename>linux-yocto-3.4</filename> kernel and then create a copy of
that clone.
<note>When you have a local Yocto Project kernel Git repository, you can
reference that repository rather than the upstream Git repository as
<note>When you have a local Yocto Project kernel Git repository, you can
reference that repository rather than the upstream Git repository as
part of the <filename>clone</filename> command.
Doing so can speed up the process.</note></para>
<para>In the following example, the bare clone is named
<filename>linux-yocto-3.4.git</filename>, while the
copy is named <filename>my-linux-yocto-3.4-work</filename>:
<para>In the following example, the bare clone is named
<filename>linux-yocto-3.4.git</filename>, while the
copy is named <filename>my-linux-yocto-3.4-work</filename>:
<literallayout class='monospaced'>
$ git clone --bare git://git.yoctoproject.org/linux-yocto-3.4 linux-yocto-3.4.git
Initialized empty Git repository in /home/scottrif/linux-yocto-3.4.git/
@@ -152,25 +153,25 @@
<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>:
The <filename>poky-extras</filename> Git repository contains metadata needed
The <filename>poky-extras</filename> Git repository contains metadata needed
only if you are modifying and building the kernel image.
In particular, it contains the kernel BitBake append (<filename>.bbappend</filename>)
files that you
files that you
edit to point to your locally modified kernel source files and to build the kernel
image.
Pointing to these local files is much more efficient than requiring a download of the
image.
Pointing to these local files is much more efficient than requiring a download of the
kernel's source files from upstream each time you make changes to the kernel.</para>
<para>You can find the <filename>poky-extras</filename> Git Repository in the
"Yocto Metadata Layers" area of the Yocto Project Source Repositories at
<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>
<para>Following is an example that creates the <filename>poky-extras</filename> Git
repository inside the source directory, which is named <filename>poky</filename>
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>
in this case:
<literallayout class='monospaced'>
$ cd ~/poky
@@ -182,21 +183,21 @@
Receiving objects: 100% (618/618), 526.26 KiB | 111 KiB/s, done.
Resolving deltas: 100% (192/192), done.
</literallayout></para></listitem>
<listitem><para id='supported-board-support-packages-(bsps)'><emphasis>Supported Board
Support Packages (BSPs):</emphasis>
The Yocto Project provides a layer called <filename>meta-intel</filename> and
<listitem><para id='supported-board-support-packages-(bsps)'><emphasis>Supported Board
Support Packages (BSPs):</emphasis>
The Yocto Project provides a layer called <filename>meta-intel</filename> and
it is maintained in its own separate Git repository.
The <filename>meta-intel</filename> layer contains many supported
The <filename>meta-intel</filename> layer contains many supported
<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-layers'>BSP Layers</ulink>.</para>
<para>Similar considerations exist for setting up the <filename>meta-intel</filename>
layer.
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.
Regardless of the method you use, the Yocto Project uses the following BSP layer
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'>
meta-&lt;BSP_name&gt;
<literallayout class='monospaced'>
meta-&lt;BSP_name&gt;
</literallayout>
where <filename>&lt;BSP_name&gt;</filename> is the recognized BSP name.
Here are some examples:
@@ -210,22 +211,22 @@
section in the Yocto Project Board Support Package (BSP) Developer's Guide for more
information on BSP Layers.
<itemizedlist>
<listitem><para><emphasis>Tarball Extraction:</emphasis> You can download any released
BSP tarball from the same
<ulink url='&YOCTO_HOME_URL;/download'>download site</ulink> used
to get the Yocto Project release.
<listitem><para><emphasis>Tarball Extraction:</emphasis> You can download any released
BSP tarball from the same
<ulink url='&YOCTO_HOME_URL;/download'>download site</ulink> used
to get the Yocto Project release.
Once you have the tarball, just extract it into a directory of your choice.
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
<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
to set up the <filename>meta-intel</filename> Git repository.
You can locate the <filename>meta-intel</filename> Git repository in the
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.
For example, the following transcript shows the steps to clone the
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.
<literallayout class='monospaced'>
@@ -238,15 +239,15 @@
Receiving objects: 100% (3380/3380), 1.77 MiB | 128 KiB/s, done.
Resolving deltas: 100% (1689/1689), done.
</literallayout></para>
<para>The same
<para>The same
<ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>
wiki page</ulink> referenced earlier covers how to
wiki page</ulink> referenced earlier covers how to
set up the <filename>meta-intel</filename> Git repository.</para></listitem>
</itemizedlist></para></listitem>
<listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing
<listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing
applications using the Eclipse Integrated Development Environment (IDE),
you will need this plug-in.
See the
you will need this plug-in.
See the
"<link linkend='setting-up-the-eclipse-ide'>Setting up the Eclipse IDE</link>"
section for more information.</para></listitem>
</itemizedlist>
@@ -257,8 +258,8 @@
<title>Building Images</title>
<para>
The build process creates an entire Linux distribution, including the toolchain, from source.
For more information on this topic, see the
The build process creates an entire Linux distribution, including the toolchain, from source.
For more information on this topic, see the
"<ulink url='&YOCTO_DOCS_QS_URL;#building-image'>Building an Image</ulink>"
section in the Yocto Project Quick Start.
</para>
@@ -266,27 +267,27 @@
<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
<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>,
is set up how you want it.
This file defines many aspects of the build environment including
the target machine architecture through the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'>MACHINE</ulink></filename> variable,
the development machine's processor use through the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BB_NUMBER_THREADS'>BB_NUMBER_THREADS</ulink></filename> and
which is found in the
<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
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'>MACHINE</ulink></filename> variable,
the development machine's processor use through the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BB_NUMBER_THREADS'>BB_NUMBER_THREADS</ulink></filename> and
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-PARALLEL_MAKE'>PARALLEL_MAKE</ulink></filename> variables, and
a centralized tarball download directory through the
a centralized tarball download directory through the
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-DL_DIR'>DL_DIR</ulink></filename> variable.</para></listitem>
<listitem><para>Build the image using the <filename>bitbake</filename> command.
If you want information on BitBake, see the user manual inculded in the
<filename>bitbake/doc/manual</filename> directory of the
If you want information on BitBake, see the user manual inculded in the
<filename>bitbake/doc/manual</filename> directory of the
<link linkend='source-directory'>Source Directory</link>.</para></listitem>
<listitem><para>Run the image either on the actual hardware or using the QEMU
<listitem><para>Run the image either on the actual hardware or using the QEMU
emulator.</para></listitem>
</orderedlist>
</para>
@@ -296,60 +297,60 @@
<title>Using Pre-Built Binaries and QEMU</title>
<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>
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>"
chapter in the Yocto Project Reference Manual
for descriptions of the types of binaries that ship with a Yocto Project
release.
</para>
<para>
Using a pre-built binary is ideal for developing software applications to run on your
target hardware.
To do this, you need to be able to access the appropriate cross-toolchain tarball for
the architecture on which you are developing.
If you are using an SDK type image, the image ships with the complete toolchain native to
the architecture.
If you are not using an SDK type image, you need to separately download and
Using a pre-built binary is ideal for developing software applications to run on your
target hardware.
To do this, you need to be able to access the appropriate cross-toolchain tarball for
the architecture on which you are developing.
If you are using an SDK type image, the image ships with the complete toolchain native to
the architecture.
If you are not using an SDK type image, you need to separately download and
install the stand-alone Yocto Project cross-toolchain tarball.
</para>
<para>
Regardless of the type of image you are using, you need to download the pre-built kernel
that you will boot in the QEMU emulator and then download and extract the target root
Regardless of the type of image you are using, you need to download the pre-built kernel
that you will boot in the QEMU emulator and then download and extract the target root
filesystem for your target machines architecture.
You can get architecture-specific binaries and filesystems from
<ulink url='&YOCTO_MACHINES_DL_URL;'>machines</ulink>.
You can get installation scripts for stand-alone toolchains from
<ulink url='&YOCTO_TOOLCHAIN_DL_URL;'>toolchains</ulink>.
Once you have all your files, you set up the environment to emulate the hardware
by sourcing an environment setup script.
Once you have all your files, you set up the environment to emulate the hardware
by sourcing an environment setup script.
Finally, you start the QEMU emulator.
You can find details on all these steps in the
You can find details on all these steps in the
"<ulink url='&YOCTO_DOCS_QS_URL;#using-pre-built'>Using Pre-Built Binaries and QEMU</ulink>"
section of the Yocto Project Quick Start.
section of the Yocto Project Quick Start.
</para>
<para>
<para>
Using QEMU to emulate your hardware can result in speed issues
depending on the target and host architecture mix.
For example, using the <filename>qemux86</filename> image in the emulator
on an Intel-based 32-bit (x86) host machine is fast because the target and
For example, using the <filename>qemux86</filename> image in the emulator
on an Intel-based 32-bit (x86) host machine is fast because the target and
host architectures match.
On the other hand, using the <filename>qemuarm</filename> image on the same Intel-based
host can be slower.
But, you still achieve faithful emulation of ARM-specific issues.
But, you still achieve faithful emulation of ARM-specific issues.
</para>
<para>
To speed things up, the QEMU images support using <filename>distcc</filename>
to call a cross-compiler outside the emulated system.
to call a cross-compiler outside the emulated system.
If you used <filename>runqemu</filename> to start QEMU, and the
<filename>distccd</filename> application is present on the host system, any
<filename>distccd</filename> application is present on the host system, any
BitBake cross-compiling toolchain available from the build system is automatically
used from within QEMU simply by calling <filename>distcc</filename>.
You can accomplish this by defining the cross-compiler variable
You can accomplish this by defining the cross-compiler variable
(e.g. <filename>export CC="distcc"</filename>).
Alternatively, if you are using a suitable SDK image or the appropriate
stand-alone toolchain is present in <filename>/opt/poky</filename>,
@@ -357,27 +358,27 @@
</para>
<note>
Several mechanisms exist that let you connect to the system running on the
Several mechanisms exist that let you connect to the system running on the
QEMU emulator:
<itemizedlist>
<listitem><para>QEMU provides a framebuffer interface that makes standard
<listitem><para>QEMU provides a framebuffer interface that makes standard
consoles available.</para></listitem>
<listitem><para>Generally, headless embedded devices have a serial port.
If so, you can configure the operating system of the running image
to use that port to run a console.
to use that port to run a console.
The connection uses standard IP networking.</para></listitem>
<listitem><para>SSH servers exist in some QEMU images.
The <filename>core-image-sato</filename> QEMU image has a Dropbear secure
The <filename>core-image-sato</filename> QEMU image has a Dropbear secure
shell (ssh) server that runs with the root password disabled.
The <filename>core-image-basic</filename> and <filename>core-image-lsb</filename> QEMU images
The <filename>core-image-basic</filename> and <filename>core-image-lsb</filename> QEMU images
have OpenSSH instead of Dropbear.
Including these SSH servers allow you to use standard <filename>ssh</filename> and
Including these SSH servers allow you to use standard <filename>ssh</filename> and
<filename>scp</filename> commands.
The <filename>core-image-minimal</filename> QEMU image, however, contains no ssh
The <filename>core-image-minimal</filename> QEMU image, however, contains no ssh
server.</para></listitem>
<listitem><para>You can use a provided, user-space NFS server to boot the QEMU session
<listitem><para>You can use a provided, user-space NFS server to boot the QEMU session
using a local copy of the root filesystem on the host.
In order to make this connection, you must extract a root filesystem tarball by using the
In order to make this connection, you must extract a root filesystem tarball by using the
<filename>runqemu-extract-sdk</filename> command.
After running the command, you must then point the <filename>runqemu</filename>
script to the extracted directory instead of a root filesystem image file.</para></listitem>

View File

@@ -2,7 +2,7 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<book id='dev-manual' lang='en'
<book id='dev-manual' lang='en'
xmlns:xi="http://www.w3.org/2003/XInclude"
xmlns="http://docbook.org/ns/docbook"
>
@@ -10,13 +10,13 @@
<mediaobject>
<imageobject>
<imagedata fileref='figures/dev-title.png'
format='SVG'
<imagedata fileref='figures/dev-title.png'
format='SVG'
align='left' scalefit='1' width='100%'/>
</imageobject>
</imageobject>
</mediaobject>
<title></title>
<title></title>
<authorgroup>
<author>
@@ -41,9 +41,14 @@
</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>
<revision>
<revnumber>1.4</revnumber>
<date>Sometime in 2013</date>
<revremark>Released with the Yocto Project 1.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -53,9 +58,9 @@
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this document under
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">
Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by
Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by
Creative Commons.
</para>
@@ -76,15 +81,11 @@
<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>
<!--
vim: expandtab tw=80 ts=4
<!--
vim: expandtab tw=80 ts=4
-->

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,667 @@
<!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='kernel-dev-common'>
<title>Common Tasks</title>
<para>
This chapter presents several common tasks that are performed when you
work with the Yocto Project Linux kernel.
These tasks include preparing a layer, modifying an existing recipe,
iterative development, working with your own sources, and incorporating
out-of-tree modules.
</para>
<section id='creating-and-preparing-a-layer'>
<title>Creating and Preparing a Layer</title>
<para>
If you are going to be modifying kernel recipes, it is recommended
that you create and prepare your own layer in which to do your
work.
Your layer contains its own BitBake append files
(<filename>.bbappend</filename>) and provides a convenient
mechanism to create your own recipe files
(<filename>.bb</filename>).
For details on how to create and work with layers, see the following
sections in the Yocto Project Development Manual:
<itemizedlist>
<listitem><para>"<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding and Creating Layers</ulink>" for
general information on layers and how to create them.</para></listitem>
<listitem><para>"<ulink url='&YOCTO_DOCS_DEV_URL;#get-your-layer-setup-for-the-build'>Get Your Layer Setup for the Build</ulink>" for
specific instructions on setting up a layer for kernel
development.</para></listitem>
</itemizedlist>
</para>
</section>
<section id='modifying-an-existing-recipe'>
<title>Modifying an Existing Recipe</title>
<para>
In many cases, you can customize an existing linux-yocto recipe to
meet the needs of your project.
Each release of the Yocto Project provides a few Linux
kernel recipes from which you can choose.
These are located in the
<ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
in <filename>meta/recipes-kernel/linux</filename>.
</para>
<para>
Modifying an existing recipe can consist of the following:
<itemizedlist>
<listitem><para>Creating the append file</para></listitem>
<listitem><para>Applying patches</para></listitem>
<listitem><para>Changing the configuration</para></listitem>
</itemizedlist>
</para>
<para>
Before modifying an existing recipe, be sure that you have created
a minimal, custom layer from which you can work.
See the "<link linkend='creating-and-preparing-a-layer'>Creating and Preparing a Layer</link>"
section for some general resources.
You can also see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#get-your-layer-setup-for-the-build'>Get Your Layer Setup for the Build</ulink>" section
of the Yocto Project Development Manual for a detailed
example.
</para>
<section id='creating-the-append-file'>
<title>Creating the Append File</title>
<para>
You create this file in your custom layer.
You also name it accordingly based on the linux-yocto recipe
you are using.
For example, if you are modifying the
<filename>meta/recipes-kernel/linux/linux-yocto_3.4.bb</filename>
recipe, the append file will typical be located as follows
within your custom layer:
<literallayout class='monospaced'>
&lt;your-layer&gt;/recipes-kernel/linux/linux-yocto_3.4.bbappend
</literallayout>
The append file should initially contain the following text:
<literallayout class='monospaced'>
<ulink url='&YOCTO_DOCS_REF_URL;#var-FILESEXTRAPATHS'>FILESEXTRAPATHS</ulink> := "${THISDIR}/${PN}"
</literallayout>
The path <filename>${THISDIR}/${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-PN'><filename>PN</filename></ulink><filename>}</filename> expands
to "linux-yocto" in the current directory for this example.
If you add any new files that modify the kernel recipe,
you need to place them in your layer in the following area:
<literallayout class='monospaced'>
&lt;your-layer&gt;/recipes-kernel/linux/linux-yocto/
</literallayout>
<note>If you are working on a new machine Board Support Package
(BSP), be sure to refer to the
<ulink url='&YOCTO_DOCS_BSP_URL;'>Yocto Project Board Support Package (BSP) Developer's Guide</ulink>.
</note>
</para>
</section>
<section id='applying-patches'>
<title>Applying Patches</title>
<para>
If you have a single patch or a small series of patches
that you want to apply to the Linux kernel source, you
can do so just as you would with any other recipe.
You first copy the patches to the path added to
<ulink url='&YOCTO_DOCS_REF_URL;#var-FILESEXTRAPATHS'><filename>FILESEXTRAPATHS</filename></ulink>
in your <filename>.bbappend</filename> file as described in
the previous section, and then reference them in
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
statements.
</para>
<para>
For example, you can apply a three-patch series by adding the
following lines to your linux-yocto <filename>.bbappend</filename>
file in your layer:
<literallayout class='monospaced'>
SRC_URI += "file://0001-first-change.patch"
SRC_URI += "file://0002-first-change.patch"
SRC_URI += "file://0003-first-change.patch"
</literallayout>
The next time you run BitBake to build the Linux kernel, BitBake
detects the change in the recipe and fetches and applies the patches
before building the kernel.
</para>
<para>
For a detailed example showing how to patch the kernel, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#patching-the-kernel'>Patching the Kernel</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
<section id='changing-the-configuration'>
<title>Changing the Configuration</title>
<para>
You can make wholesale or incremental changes to the Linux
kernel <filename>.config</filename> file by including a
<filename>defconfig</filename> or by specifying
configuration fragments in the <filename>SRC_URI</filename>.
</para>
<para>
If you have a complete Linux kernel <filename>.config</filename>
file you want to use, copy it to the
<filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-FILES'><filename>FILES</filename></ulink><filename>}</filename>
directory within your layer and name it "defconfig".
Then, add the following line to your linux-yocto
<filename>.bbappend</filename> file in your layer:
<literallayout class='monospaced'>
SRC_URI += "file://defconfig"
</literallayout>
</para>
<para>
Generally speaking, the preferred approach is to determine the
incremental change you want to make and add that as a
configuration fragment.
For example, if you want to add support for a basic serial
console, create a file named <filename>8250.cfg</filename> in the
<filename>${FILES}</filename> directory with the following
content (without indentation):
<literallayout class='monospaced'>
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
</literallayout>
Next, include this configuration fragment in a
<filename>SRC_URI</filename> statement in your
<filename>.bbappend</filename> file:
<literallayout class='monospaced'>
SRC_URI += "file://8250.cfg"
</literallayout>
The next time you run BitBake to build the Linux kernel, BitBake
detects the change in the recipe and fetches and applies the
new configuration before building the kernel.
</para>
<para>
For a detailed example showing how to configure the kernel,
see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#configuring-the-kernel'>Configuring the Kernel</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
</section>
<section id='using-an-iterative-development-process'>
<title>Using an Iterative Development Process</title>
<para>
If you do not have existing patches or configuration files,
you can iteratively generate them from within the BitBake build
environment as described within this section.
During an iterative workflow, running a previously completed BitBake
task causes BitBake to invalidate the tasks that follow the
completed task in the build sequence.
Invalidated tasks rebuild the next time you run the build using
BitBake.
</para>
<para>
As you read this section, be sure to substitute the name
of your Linux kernel recipe for the term
"linux-yocto".
</para>
<section id='generating-configuration-files'>
<title>Generating Configuration Files</title>
<para>
You can manipulate the <filename>.config</filename> file
used to build a linux-yocto recipe with the
<filename>menuconfig</filename> command as follows:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c menuconfig
</literallayout>
This command starts the Linux kernel configuration tool,
which allows you to prepare a new
<filename>.config</filename> file for the build.
When you exit the tool, be sure to save your changes
at the prompt.
</para>
<para>
The resulting <filename>.config</filename> file is
located in
<filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink><filename>}</filename> under the
<filename>linux-${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink><filename>}-${KTYPE}-build</filename> directory.
You can use the entire <filename>.config</filename> file as the
<filename>defconfig</filename> file as described in the
"<link linkend='changing-the-configuration'>Changing the Configuration</link>" section.
</para>
<para>
A better method is to create a configuration fragment using the
differences between two configuration files: one previously
created and saved, and one freshly created using the
<filename>menuconfig</filename> tool.
</para>
<para>
To create a configuration fragment using this method, follow
these steps:
<orderedlist>
<listitem><para>Complete a build at least through the kernel
configuration task as follows:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c kernel_configme -f
</literallayout></para></listitem>
<listitem><para>Copy and rename the resulting
<filename>.config</filename> file (e.g.
<filename>config.orig</filename>).
</para></listitem>
<listitem><para>Run the <filename>menuconfig</filename>
command:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c menuconfig
</literallayout></para></listitem>
<listitem><para>Prepare a configuration fragment based on
the differences between the two files.
</para></listitem>
</orderedlist>
</para>
<para>
Ultimately, the configuration fragment file needs to be a
list of Linux kernel <filename>CONFIG_</filename> assignments.
It cannot be in <filename>diff</filename> format.
Here is an example of a command that creates your
configuration fragment file.
Regardless of the exact command you use, plan on reviewing
the output as you can usually remove some of the defaults:
<literallayout class='monospaced'>
$ diff -Nurp config.orig .config | sed -n "s/^\+//p" > frag.cfg
</literallayout>
See the "<link linkend='changing-the-configuration'>Changing the Configuration</link>"
section for information on how to use the output as a
configuration fragment.
<note>
You can also use this method to create configuration
fragments for a BSP.
See the "<link linkend='bsp-descriptions'>BSP Descriptions</link>"
section for more information.
</note>
</para>
<para>
The kernel tools also provide configuration validation.
You can use these tools to produce warnings for when a
requested configuration does not appear in the final
<filename>.config</filename> file or when you override a
policy configuration in a hardware configuration fragment.
Here is an example with some sample output of the command
that runs these tools:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c kernel_configcheck -f
...
NOTE: validating kernel configuration
This BSP sets 3 invalid/obsolete kernel options.
These config options are not offered anywhere within this kernel.
The full list can be found in your kernel src dir at:
meta/cfg/standard/mybsp/invalid.cfg
This BSP sets 21 kernel options that are possibly non-hardware related.
The full list can be found in your kernel src dir at:
meta/cfg/standard/mybsp/specified_non_hdw.cfg
WARNING: There were 2 hardware options requested that do not
have a corresponding value present in the final ".config" file.
This probably means you aren't getting the config you wanted.
The full list can be found in your kernel src dir at:
meta/cfg/standard/mybsp/mismatch.cfg
</literallayout>
</para>
<para>
The output describes the various problems that you can
encounter along with where to find the offending configuration
items.
You can use the information in the logs to adjust your
configuration files and then repeat the
<filename>kernel_configme</filename> and
<filename>kernel_configcheck</filename> commands until
they produce no warnings.
</para>
<para>
For more information on how to use the
<filename>menuconfig</filename> tool, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#using-menuconfig'>Using <filename>menuconfig</filename></ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
<section id='modifying-source-code'>
<title>Modifying Source Code</title>
<para>
You can experiment with source code changes and create a
simple patch without leaving the BitBake environment.
To get started, be sure to complete a build at
least through the kernel configuration task:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c kernel_configme -f
</literallayout>
Taking this step ensures you have the sources prepared
and the configuration completed.
You can find the sources in the
<filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink><filename>}/linux</filename> directory.
</para>
<para>
You can edit the sources as you would any other Linux source
tree.
However, keep in mind that you will lose changes if you
trigger the <filename>fetch</filename> task for the recipe.
You can avoid triggering this task by not issuing BitBake's
<filename>cleanall</filename>, <filename>cleansstate</filename>,
or forced <filename>fetch</filename> commands.
Also, do not modify the recipe itself while working
with temporary changes or BitBake might run the
<filename>fetch</filename> command depending on the
changes to the recipe.
</para>
<para>
To test your temporary changes, instruct BitBake to run the
<filename>compile</filename> again.
The <filename>-f</filename> option forces the command to run
even though BitBake might think it has already done so:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c compile -f
</literallayout>
If the compile fails, you can update the sources and repeat
the <filename>compile</filename>.
Once compilation is successful, you can inspect and test
the resulting build (i.e. kernel, modules, and so forth) from
the <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>:
<literallayout class='monospaced'>
${WORKDIR}/linux-${MACHINE}-${KTYPE}-build
</literallayout>
Alternatively, you can run the <filename>deploy</filename>
command to place the kernel image in the
<filename>tmp/deploy/images</filename> directory:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c deploy
</literallayout>
And, of course, you can perform the remaining installation and
packaging steps by issuing:
<literallayout class='monospaced'>
$ bitbake linux-yocto
</literallayout>
</para>
<para>
For rapid iterative development, the edit-compile-repeat loop
described in this section is preferable to rebuilding the
entire recipe because the installation and packaging tasks
are very time consuming.
</para>
<para>
Once you are satisfied with your source code modifications,
you can make them permanent by generating patches and
applying them to the
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
statement as described in section
"<link linkend='applying-patches'>Applying Patches</link>" section.
If you are not familiar with generating patches, refer to the
"<ulink url='&YOCTO_DOCS_DEV_URL;#creating-the-patch'>Creating the Patch</ulink>"
section in the Yocto Project Development Manual.
</para>
</section>
</section>
<section id='working-with-your-own-sources'>
<title>Working With Your Own Sources</title>
<para>
If you cannot work with one of the Linux kernel
versions supported by existing linux-yocto recipes, you can
still make use of the Yocto Project Linux kernel tooling by
working with your own sources.
When you use your own sources, you will not be able to
leverage the existing kernel
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink> and
stabilization work of the linux-yocto sources.
However, you will be able to manage your own Metadata in the same
format as the linux-yocto sources.
Maintaining format compatibility facilitates converging with
linux-yocto on a future, mutually-supported kernel version.
</para>
<para>
To help you use your own sources, the Yocto Project provides a
linux-yocto custom recipe
(<filename>linux-yocto-custom.bb</filename>) that uses
<filename>kernel.org</filename> sources
and the Yocto Project Linux kernel tools for managing
kernel Metadata.
You can find this recipe in the
<filename>poky</filename> Git repository of the
Yocto Project <ulink url='&YOCTO_GIT_URL;'>Source Repository</ulink>
at:
<literallayout class="monospaced">
poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
</literallayout>
</para>
<para>
Here are some basic steps you can use to work with your own sources:
<orderedlist>
<listitem><para>Copy the <filename>linux-yocto-custom.bb</filename>
recipe to your layer and give it a meaningful name.
The name should include the version of the Linux kernel you
are using (e.g. <filename>linux-yocto-myproject_3.5.bb</filename>,
where "3.5" is the base version of the Linux kernel
with which you would be working).</para></listitem>
<listitem><para>In the same directory inside your layer,
create a matching directory
to store your patches and configuration files (e.g.
<filename>linux-yocto-myproject</filename>).
</para></listitem>
<listitem><para>Edit the following variables in your recipe
as appropriate for your project:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>:
The <filename>SRC_URI</filename> should be a Git
repository that uses one of the supported Git fetcher
protocols (i.e. <filename>file</filename>,
<filename>git</filename>, <filename>http</filename>,
and so forth).
The skeleton recipe provides an example
<filename>SRC_URI</filename> as a syntax reference.
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-LINUX_VERSION'><filename>LINUX_VERSION</filename></ulink>:
The Linux kernel version you are using (e.g.
"3.4").</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-LINUX_VERSION_EXTENSION'><filename>LINUX_VERSION_EXTENSION</filename></ulink>:
The Linux kernel <filename>CONFIG_LOCALVERSION</filename>
that is compiled into the resulting kernel and visible
through the <filename>uname</filename> command.
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-SRCREV'><filename>SRCREV</filename></ulink>:
The commit ID from which you want to build.
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-PR'><filename>PR</filename></ulink>:
Treat this variable the same as you would in any other
recipe.
Increment the variable to indicate to the OpenEmbedded
build system that the recipe has changed.
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink>:
The default <filename>PV</filename> assignment is
typically adequate.
It combines the <filename>LINUX_VERSION</filename>
with the Source Control Manager (SCM) revision
as derived from the
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRCPV'><filename>SRCPV</filename></ulink>
variable.
The combined results are a string with
the following form:
<literallayout class='monospaced'>
3.4.11+git1+68a635bf8dfb64b02263c1ac80c948647cc76d5f_1+218bd8d2022b9852c60d32f0d770931e3cf343e2
</literallayout>
While lengthy, the extra verbosity in <filename>PV</filename>
helps ensure you are using the exact
sources from which you intend to build.
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>:
A list of the machines supported by your new recipe.
This variable in the example recipe is set
by default to a regular expression that matches
only the empty string, "(^$)".
This default setting triggers an explicit build
failure.
You must change it to match a list of the machines
that your new recipe supports.
For example, to support the <filename>qemux86</filename>
and <filename>qemux86-64</filename> machines, use
the following form:
<literallayout class='monospaced'>
COMPATIBLE_MACHINE = "qemux86|qemux86-64"
</literallayout></para></listitem>
</itemizedlist></para></listitem>
<listitem><para>Provide further customizations to your recipe
as needed just as you would customize an existing
linux-yocto recipe.
See the "<link linkend='modifying-an-existing-recipe'>Modifying
an Existing Recipe</link>" section for information.
</para></listitem>
</orderedlist>
</para>
</section>
<section id='incorporating-out-of-tree-modules'>
<title>Incorporating Out-of-Tree Modules</title>
<para>
While it is always preferable to work with sources integrated
into the Linux kernel sources, if you need an external kernel
module, the <filename>hello-mod.bb</filename> recipe is available
as a template from which you can create your own out-of-tree
Linux kernel module recipe.
</para>
<para>
This template recipe is located in the
<filename>poky</filename> Git repository of the
Yocto Project <ulink url='&YOCTO_GIT_URL;'>Source Repository</ulink>
at:
<literallayout class="monospaced">
poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
</literallayout>
</para>
<para>
To get started, copy this recipe to your layer and give it a
meaningful name (e.g. <filename>mymodule_1.0.bb</filename>).
In the same directory, create a directory named
<filename>files</filename> where you can store any source files,
patches, or other files necessary for building
the module that do not come with the sources.
Finally, update the recipe as appropriate for the module.
Typically you will need to set the following variables:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-DESCRIPTION'><filename>DESCRIPTION</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-LICENSE'><filename>LICENSE*</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink>
</para></listitem>
</itemizedlist>
</para>
<para>
Depending on the build system used by the module sources, you might
need to make some adjustments.
For example, a typical module <filename>Makefile</filename> looks
much like the one provided with the <filename>hello-mod</filename>
template:
<literallayout class='monospaced'>
obj-m := hello.o
SRC := $(shell pwd)
all:
$(MAKE) -C $(KERNEL_SRC) M=$(SRC)
modules_install:
$(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install
...
</literallayout>
</para>
<para>
The important point to note here is the
<filename>KERNEL_SRC</filename> variable.
The module <filename>bbclass</filename> sets this variable,
as well as the <filename>KERNEL_PATH</filename> variable
to <filename>${STAGING_KERNEL_DIR}</filename> with the
necessary Linux kernel build information to build modules.
If your module <filename>Makefile</filename> uses a different
variable, you might want to override the
<filename>do_compile()</filename> step, or create a patch to
the <filename>Makefile</filename> to work with the more typical
<filename>KERNEL_SRC</filename> or <filename>KERNEL_PATH</filename>
variables.
</para>
<para>
After you have prepared your recipe, you will likely want to
include the module in your images.
To do this, see the documentation for the following variables in
the Yocto Project Reference Manual and set one of them as
appropriate in your machine configuration file:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RDEPENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RDEPENDS</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RDEPENDS'><filename>MACHINE_EXTRA_RDEPENDS</filename></ulink>
</para></listitem>
<listitem><para><ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RRECOMMENDS'><filename>MACHINE_EXTRA_RRECOMMENDS</filename></ulink>
</para></listitem>
</itemizedlist>
</para>
<para>
modules are often not required for boot and can be excluded from
certain build configurations.
The following allows for the most flexibility:
<literallayout class='monospaced'>
MACHINE_EXTRA_RRECOMMENDS += "kernel-module-mymodule"
</literallayout>
Where the value is derived by appending the module filename without
the <filename>.ko</filename> extension to the string
"kernel-module-".
</para>
<para>
Because the variable is <filename>RRECOMMENDS</filename> and not
a <filename>RDEPENDS</filename> variable, the build will not fail
if this module is not available to include in the image.
</para>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -0,0 +1,8 @@
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml" xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0">
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl" />
<!-- <xsl:param name="generate.toc" select="'article nop'"></xsl:param> -->
</xsl:stylesheet>

View File

@@ -0,0 +1,918 @@
<!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='kernel-how-to'>
<title>Working with the Yocto Project Kernel</title>
<section id='actions-org'>
<title>Introduction</title>
<para>
This chapter describes how to accomplish tasks involving a kernel's tree structure.
The information is designed to help the developer that wants to modify the Yocto
Project kernel and contribute changes upstream to the Yocto Project.
The information covers the following:
<itemizedlist>
<listitem><para>Tree construction</para></listitem>
<listitem><para>Build strategies</para></listitem>
<listitem><para>Workflow examples</para></listitem>
</itemizedlist>
</para>
</section>
<section id='tree-construction'>
<title>Tree Construction</title>
<para>
This section describes construction of the Yocto Project kernel source repositories
as accomplished by the Yocto Project team to create kernel repositories.
These kernel repositories are found under the heading "Yocto Linux Kernel" at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'>&YOCTO_GIT_URL;/cgit.cgi</ulink>
and can be shipped as part of a Yocto Project release.
The team creates these repositories by
compiling and executing the set of feature descriptions for every BSP/feature
in the product.
Those feature descriptions list all necessary patches,
configuration, branching, tagging and feature divisions found in a kernel.
Thus, the Yocto Project kernel repository (or tree) is built.
</para>
<para>
The existence of this tree allows you to access and clone a particular
Yocto Project kernel repository and use it to build images based on their configurations
and features.
</para>
<para>
You can find the files used to describe all the valid features and BSPs
in the Yocto Project kernel in any clone of the Yocto Project kernel source repository
Git tree.
For example, the following command clones the Yocto Project baseline kernel that
branched off of <filename>linux.org</filename> version 3.4:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/linux-yocto-3.4
</literallayout>
For another example of how to set up a local Git repository of the Yocto Project
kernel files, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Yocto Project Kernel</ulink>" bulleted
item in the Yocto Project Development Manual.
</para>
<para>
Once you have cloned the kernel Git repository on your local machine, you can
switch to the <filename>meta</filename> branch within the repository.
Here is an example that assumes the local Git repository for the kernel is in
a top-level directory named <filename>linux-yocto-3.4</filename>:
<literallayout class='monospaced'>
$ cd ~/linux-yocto-3.4
$ git checkout -b meta origin/meta
</literallayout>
Once you have checked out and switched to the <filename>meta</filename> branch,
you can see a snapshot of all the kernel configuration and feature descriptions that are
used to build that particular kernel repository.
These descriptions are in the form of <filename>.scc</filename> files.
</para>
<para>
You should realize, however, that browsing your local kernel repository
for feature descriptions and patches is not an effective way to determine what is in a
particular kernel branch.
Instead, you should use Git directly to discover the changes in a branch.
Using Git is an efficient and flexible way to inspect changes to the kernel.
For examples showing how to use Git to inspect kernel commits, see the following sections
in this chapter.
<note>
Ground up reconstruction of the complete kernel tree is an action only taken by the
Yocto Project team during an active development cycle.
When you create a clone of the kernel Git repository, you are simply making it
efficiently available for building and development.
</note>
</para>
<para>
The following steps describe what happens when the Yocto Project Team constructs
the Yocto Project kernel source Git repository (or tree) found at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> given the
introduction of a new top-level kernel feature or BSP.
These are the actions that effectively create the tree
that includes the new feature, patch or BSP:
<orderedlist>
<listitem><para>A top-level kernel feature is passed to the kernel build subsystem.
Normally, this feature is a BSP for a particular kernel type.</para></listitem>
<listitem><para>The file that describes the top-level feature is located by searching
these system directories:
<itemizedlist>
<listitem><para>The in-tree kernel-cache directories, which are located
in <filename>meta/cfg/kernel-cache</filename></para></listitem>
<listitem><para>Areas pointed to by <filename>SRC_URI</filename> statements
found in recipes</para></listitem>
</itemizedlist>
For a typical build, the target of the search is a
feature description in an <filename>.scc</filename> file
whose name follows this format:
<literallayout class='monospaced'>
&lt;bsp_name&gt;-&lt;kernel_type&gt;.scc
</literallayout>
</para></listitem>
<listitem><para>Once located, the feature description is either compiled into a simple script
of actions, or into an existing equivalent script that is already part of the
shipped kernel.</para></listitem>
<listitem><para>Extra features are appended to the top-level feature description.
These features can come from the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'><filename>KERNEL_FEATURES</filename></ulink>
variable in recipes.</para></listitem>
<listitem><para>Each extra feature is located, compiled and appended to the script
as described in step three.</para></listitem>
<listitem><para>The script is executed to produce a series of <filename>meta-*</filename>
directories.
These directories are descriptions of all the branches, tags, patches and configurations that
need to be applied to the base Git repository to completely create the
source (build) branch for the new BSP or feature.</para></listitem>
<listitem><para>The base repository is cloned, and the actions
listed in the <filename>meta-*</filename> directories are applied to the
tree.</para></listitem>
<listitem><para>The Git repository is left with the desired branch checked out and any
required branching, patching and tagging has been performed.</para></listitem>
</orderedlist>
</para>
<para>
The kernel tree is now ready for developer consumption to be locally cloned,
configured, and built into a Yocto Project kernel specific to some target hardware.
<note><para>The generated <filename>meta-*</filename> directories add to the kernel
as shipped with the Yocto Project release.
Any add-ons and configuration data are applied to the end of an existing branch.
The full repository generation that is found in the
official Yocto Project kernel repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'>http://git.yoctoproject.org/cgit.cgi</ulink>
is the combination of all supported boards and configurations.</para>
<para>The technique the Yocto Project team uses is flexible and allows for seamless
blending of an immutable history with additional patches specific to a
deployment.
Any additions to the kernel become an integrated part of the branches.</para>
</note>
</para>
</section>
<section id='build-strategy'>
<title>Build Strategy</title>
<para>
Once a local Git repository of the Yocto Project kernel exists on a development system,
you can consider the compilation phase of kernel development - building a kernel image.
Some prerequisites exist that are validated by the build process before compilation
starts:
</para>
<itemizedlist>
<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'>
&lt;kernel_type&gt;/&lt;bsp_name&gt;
</literallayout></para></listitem>
</itemizedlist>
<para>
The OpenEmbedded build system makes sure these conditions exist before attempting compilation.
Other means, however, do exist, such as as bootstrapping a BSP, see
the "<link linkend='workflow-examples'>Workflow Examples</link>".
</para>
<para>
Before building a kernel, the build process verifies the tree
and configures the kernel by processing all of the
configuration "fragments" specified by feature descriptions in the <filename>.scc</filename>
files.
As the features are compiled, associated kernel configuration fragments are noted
and recorded in the <filename>meta-*</filename> series of directories in their compilation order.
The fragments are migrated, pre-processed and passed to the Linux Kernel
Configuration subsystem (<filename>lkc</filename>) as raw input in the form
of a <filename>.config</filename> file.
The <filename>lkc</filename> uses its own internal dependency constraints to do the final
processing of that information and generates the final <filename>.config</filename> file
that is used during compilation.
</para>
<para>
Using the board's architecture and other relevant values from the board's template,
kernel compilation is started and a kernel image is produced.
</para>
<para>
The other thing that you notice once you configure a kernel is that
the build process generates a build tree that is separate from your kernel's local Git
source repository tree.
This build tree has a name that uses the following form, where
<filename>${MACHINE}</filename> is the metadata name of the machine (BSP) and "kernel_type" is one
of the Yocto Project supported kernel types (e.g. "standard"):
<literallayout class='monospaced'>
linux-${MACHINE}-&lt;kernel_type&gt;-build
</literallayout>
</para>
<para>
The existing support in the <filename>kernel.org</filename> tree achieves this
default functionality.
</para>
<para>
This behavior means that all the generated files for a particular machine or BSP are now in
the build tree directory.
The files include the final <filename>.config</filename> file, all the <filename>.o</filename>
files, the <filename>.a</filename> files, and so forth.
Since each machine or BSP has its own separate build directory in its own separate branch
of the Git repository, you can easily switch between different builds.
</para>
</section>
<section id='workflow-examples'>
<title>Workflow Examples</title>
<para>
As previously noted, the Yocto Project kernel has built-in Git integration.
However, these utilities are not the only way to work with the kernel repository.
The Yocto Project has not made changes to Git or to other tools that
would invalidate alternate workflows.
Additionally, the way the kernel repository is constructed results in using
only core Git functionality, thus allowing any number of tools or front ends to use the
resulting tree.
</para>
<para>
This section contains several workflow examples.
Many of the examples use Git commands.
You can find Git documentation at
<ulink url='http://git-scm.com/documentation'></ulink>.
You can find a simple overview of using Git with the Yocto Project in the
"<ulink url='&YOCTO_DOCS_DEV_URL;#git'>Git</ulink>"
section of the Yocto Project Development Manual.
</para>
<section id='change-inspection-kernel-changes-commits'>
<title>Change Inspection: Changes/Commits</title>
<para>
A common question when working with a kernel is:
"What changes have been applied to this tree?"
</para>
<para>
In projects that have a collection of directories that
contain patches to the kernel, it is possible to inspect or "grep" the contents
of the directories to get a general feel for the changes.
This sort of patch inspection is not an efficient way to determine what has been
done to the kernel.
The reason it is inefficient is because there are many optional patches that are
selected based on the kernel type and the feature description.
Additionally, patches could exist in directories that are not included in the search.
</para>
<para>
A more efficient way to determine what has changed in the branch is to use
Git and inspect or search the kernel tree.
This method gives you a full view of not only the source code modifications,
but also provides the reasons for the changes.
</para>
<section id='what-changed-in-a-kernel'>
<title>What Changed in a Kernel?</title>
<para>
Following are a few examples that show how to use Git commands to examine changes.
Because Git repositories in the Yocto Project do not break existing Git
functionality, and because there exists many permutations of these types of
Git commands, many methods exist by which you can discover changes.
<note>
In the following examples, unless you provide a commit range,
<filename>kernel.org</filename> history is blended with Yocto Project
kernel changes.
You can form ranges by using branch names from the kernel tree as the
upper and lower commit markers with the Git commands.
You can see the branch names through the web interface to the
Yocto Project source repositories at
<ulink url='http://git.yoctoproject.org/cgit.cgi'></ulink>.
For example, the branch names for the <filename>linux-yocto-3.4</filename>
kernel repository can be seen at
<ulink url='http://git.yoctoproject.org/cgit.cgi/linux-yocto-3.4/refs/heads'></ulink>.
</note>
To see a full range of the changes, use the
<filename>git whatchanged</filename> command and specify a commit range
for the branch (<filename>&lt;commit&gt;..&lt;commit&gt;</filename>).
</para>
<para>
Here is an example that looks at what has changed in the
<filename>emenlow</filename> branch of the
<filename>linux-yocto-3.4</filename> kernel.
The lower commit range is the commit associated with the
<filename>standard/base</filename> branch, while
the upper commit range is the commit associated with the
<filename>standard/emenlow</filename> branch.
<literallayout class='monospaced'>
$ git whatchanged origin/standard/base..origin/standard/emenlow
</literallayout>
</para>
<para>
To see a summary of changes use the <filename>git log</filename> command.
Here is an example using the same branches:
<literallayout class='monospaced'>
$ git log --oneline origin/standard/base..origin/standard/emenlow
</literallayout>
The <filename>git log</filename> output might be more useful than
the <filename>git whatchanged</filename> as you get
a short, one-line summary of each change and not the entire commit.
</para>
<para>
If you want to see code differences associated with all the changes, use
the <filename>git diff</filename> command.
Here is an example:
<literallayout class='monospaced'>
$ git diff origin/standard/base..origin/standard/emenlow
</literallayout>
</para>
<para>
You can see the commit log messages and the text differences using the
<filename>git show</filename> command:
Here is an example:
<literallayout class='monospaced'>
$ git show origin/standard/base..origin/standard/emenlow
</literallayout>
</para>
<para>
You can create individual patches for each change by using the
<filename>git format-patch</filename> command.
Here is an example that that creates patch files for each commit and
places them in your <filename>Documents</filename> directory:
<literallayout class='monospaced'>
$ git format-patch -o $HOME/Documents origin/standard/base..origin/standard/emenlow
</literallayout>
</para>
</section>
<section id='show-a-particular-feature-or-branch-change'>
<title>Show a Particular Feature or Branch Change</title>
<para>
Developers use tags in the Yocto Project kernel tree to divide changes for significant
features or branches.
Once you know a particular tag, you can use Git commands
to show changes associated with the tag and find the branches that contain
the feature.
<note>
Because BSP branch, <filename>kernel.org</filename>, and feature tags are all
present, there could be many tags.
</note>
The <filename>git show &lt;tag&gt;</filename> command shows changes that are tagged by
a feature.
Here is an example that shows changes tagged by the <filename>systemtap</filename>
feature:
<literallayout class='monospaced'>
$ git show systemtap
</literallayout>
You can use the <filename>git branch --contains &lt;tag&gt;</filename> command
to show the branches that contain a particular feature.
This command shows the branches that contain the <filename>systemtap</filename>
feature:
<literallayout class='monospaced'>
$ git branch --contains systemtap
</literallayout>
</para>
<para>
You can use many other comparisons to isolate BSP and kernel changes.
For example, you can compare against <filename>kernel.org</filename> tags
such as the <filename>v3.4</filename> tag.
</para>
</section>
</section>
<section id='development-saving-kernel-modifications'>
<title>Development: Saving Kernel Modifications</title>
<para>
Another common operation is to build a BSP supplied by the Yocto Project, make some
changes, rebuild, and then test.
Those local changes often need to be exported, shared or otherwise maintained.
</para>
<para>
Since the Yocto Project kernel source tree is backed by Git, this activity is
much easier as compared to with previous releases.
Because Git tracks file modifications, additions and deletions, it is easy
to modify the code and later realize that you need to save the changes.
It is also easy to determine what has changed.
This method also provides many tools to commit, undo and export those modifications.
</para>
<para>
This section and its sub-sections, describe general application of Git's
<filename>push</filename> and <filename>pull</filename> commands, which are used to
get your changes upstream or source your code from an upstream repository.
The Yocto Project provides scripts that help you work in a collaborative development
environment.
For information on these scripts, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#pushing-a-change-upstream'>Using Scripts to Push a Change
Upstream and Request a Pull</ulink>" and
"<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-patch'>Using Email to Submit a Patch</ulink>"
sections in the Yocto Project Development Manual.
</para>
<para>
There are many ways to save kernel modifications.
The technique employed
depends on the destination for the patches:
<itemizedlist>
<listitem><para>Bulk storage</para></listitem>
<listitem><para>Internal sharing either through patches or by using Git</para></listitem>
<listitem><para>External submissions</para></listitem>
<listitem><para>Exporting for integration into another Source Code
Manager (SCM)</para></listitem>
</itemizedlist>
</para>
<para>
Because of the following list of issues, the destination of the patches also influences
the method for gathering them:
<itemizedlist>
<listitem><para>Bisectability</para></listitem>
<listitem><para>Commit headers</para></listitem>
<listitem><para>Division of subsystems for separate submission or review</para></listitem>
</itemizedlist>
</para>
<section id='bulk-export'>
<title>Bulk Export</title>
<para>
This section describes how you can "bulk" export changes that have not
been separated or divided.
This situation works well when you are simply storing patches outside of the kernel
source repository, either permanently or temporarily, and you are not committing
incremental changes during development.
<note>
This technique is not appropriate for full integration of upstream submission
because changes are not properly divided and do not provide an avenue for per-change
commit messages.
Therefore, this example assumes that changes have not been committed incrementally
during development and that you simply must gather and export them.
</note>
<literallayout class='monospaced'>
# bulk export of ALL modifications without separation or division
# of the changes
$ git add .
$ git commit -s -a -m &lt;msg&gt;
or
$ git commit -s -a # and interact with $EDITOR
</literallayout>
</para>
<para>
The previous operations capture all the local changes in the project source
tree in a single Git commit.
And, that commit is also stored in the project's source tree.
</para>
<para>
Once the changes are exported, you can restore them manually using a template
or through integration with the <filename>default_kernel</filename>.
</para>
</section>
<section id='incremental-planned-sharing'>
<title>Incremental/Planned Sharing</title>
<para>
This section describes how to save modifications when you are making incremental
commits or practicing planned sharing.
The examples in this section assume that you have incrementally committed
changes to the tree during development and now need to export them.
The sections that follow
describe how you can export your changes internally through either patches or by
using Git commands.
</para>
<para>
During development, the following commands are of interest.
For full Git documentation, refer to the Git documentation at
<ulink url='http://github.com'></ulink>.
<literallayout class='monospaced'>
# edit a file
$ vi &lt;path&gt;/file
# stage the change
$ git add &lt;path&gt;/file
# commit the change
$ git commit -s
# remove a file
$ git rm &lt;path&gt;/file
# commit the change
$ git commit -s
... etc.
</literallayout>
</para>
<para>
Distributed development with Git is possible when you use a universally
agreed-upon unique commit identifier (set by the creator of the commit) that maps to a
specific change set with a specific parent.
This identifier is created for you when
you create a commit, and is re-created when you amend, alter or re-apply
a commit.
As an individual in isolation, this is of no interest.
However, if you
intend to share your tree with normal Git <filename>push</filename> and
<filename>pull</filename> operations for
distributed development, you should consider the ramifications of changing a
commit that you have already shared with others.
</para>
<para>
Assuming that the changes have not been pushed upstream, or pulled into
another repository, you can update both the commit content and commit messages
associated with development by using the following commands:
<literallayout class='monospaced'>
$ Git add &lt;path&gt;/file
$ Git commit --amend
$ Git rebase or Git rebase -i
</literallayout>
</para>
<para>
Again, assuming that the changes have not been pushed upstream, and that
no pending works-in-progress exist (use <filename>git status</filename> to check), then
you can revert (undo) commits by using the following commands:
<literallayout class='monospaced'>
# remove the commit, update working tree and remove all
# traces of the change
$ git reset --hard HEAD^
# remove the commit, but leave the files changed and staged for re-commit
$ git reset --soft HEAD^
# remove the commit, leave file change, but not staged for commit
$ git reset --mixed HEAD^
</literallayout>
</para>
<para>
You can create branches, "cherry-pick" changes, or perform any number of Git
operations until the commits are in good order for pushing upstream
or for pull requests.
After a <filename>push</filename> or <filename>pull</filename> command,
commits are normally considered
"permanent" and you should not modify them.
If the commits need to be changed, you can incrementally do so with new commits.
These practices follow standard Git workflow and the <filename>kernel.org</filename> best
practices, which is recommended.
<note>
It is recommended to tag or branch before adding changes to a Yocto Project
BSP or before creating a new one.
The reason for this recommendation is because the branch or tag provides a
reference point to facilitate locating and exporting local changes.
</note>
</para>
<section id='export-internally-via-patches'>
<title>Exporting Changes Internally by Using Patches</title>
<para>
This section describes how you can extract committed changes from a working directory
by exporting them as patches.
Once the changes have been extracted, you can use the patches for upstream submission,
place them in a Yocto Project template for automatic kernel patching,
or apply them in many other common uses.
</para>
<para>
This example shows how to create a directory with sequentially numbered patches.
Once the directory is created, you can apply it to a repository using the
<filename>git am</filename> command to reproduce the original commit and all
the related information such as author, date, commit log, and so forth.
<note>
The new commit identifiers (ID) will be generated upon re-application.
This action reflects that the commit is now applied to an underlying commit
with a different ID.
</note>
<literallayout class='monospaced'>
# &lt;first-commit&gt; can be a tag if one was created before development
# began. It can also be the parent branch if a branch was created
# before development began.
$ git format-patch -o &lt;dir&gt; &lt;first commit&gt;..&lt;last commit&gt;
</literallayout>
</para>
<para>
In other words:
<literallayout class='monospaced'>
# Identify commits of interest.
# If the tree was tagged before development
$ git format-patch -o &lt;save dir&gt; &lt;tag&gt;
# If no tags are available
$ git format-patch -o &lt;save dir&gt; HEAD^ # last commit
$ git format-patch -o &lt;save dir&gt; HEAD^^ # last 2 commits
$ git whatchanged # identify last commit
$ git format-patch -o &lt;save dir&gt; &lt;commit id&gt;
$ git format-patch -o &lt;save dir&gt; &lt;rev-list&gt;
</literallayout>
</para>
</section>
<section id='export-internally-via-git'>
<title>Exporting Changes Internally by Using Git</title>
<para>
This section describes how you can export changes from a working directory
by pushing the changes into a master repository or by making a pull request.
Once you have pushed the changes to the master repository, you can then
pull those same changes into a new kernel build at a later time.
</para>
<para>
Use this command form to push the changes:
<literallayout class='monospaced'>
$ git push ssh://&lt;master_server&gt;/&lt;path_to_repo&gt;
&lt;local_branch&gt;:&lt;remote_branch&gt;
</literallayout>
</para>
<para>
For example, the following command pushes the changes from your local branch
<filename>yocto/standard/common-pc/base</filename> to the remote branch with the same name
in the master repository <filename>//git.mycompany.com/pub/git/kernel-3.4</filename>.
<literallayout class='monospaced'>
$ git push ssh://git.mycompany.com/pub/git/kernel-3.4 \
yocto/standard/common-pc/base:yocto/standard/common-pc/base
</literallayout>
</para>
<para>
A pull request entails using the <filename>git request-pull</filename> command to compose
an email to the
maintainer requesting that a branch be pulled into the master repository, see
<ulink url='http://github.com/guides/pull-requests'></ulink> for an example.
<note>
Other commands such as <filename>git stash</filename> or branching can also be used to save
changes, but are not covered in this document.
</note>
</para>
</section>
</section>
<section id='export-for-external-upstream-submission'>
<title>Exporting Changes for External (Upstream) Submission</title>
<para>
This section describes how to export changes for external upstream submission.
If the patch series is large or the maintainer prefers to pull
changes, you can submit these changes by using a pull request.
However, it is common to send patches as an email series.
This method allows easy review and integration of the changes.
<note>
Before sending patches for review be sure you understand the
community standards for submitting and documenting changes and follow their best practices.
For example, kernel patches should follow standards such as:
<itemizedlist>
<listitem><para>
<ulink url='http://linux.yyz.us/patch-format.html'></ulink></para></listitem>
<listitem><para>Documentation/SubmittingPatches (in any linux
kernel source tree)</para></listitem>
</itemizedlist>
</note>
</para>
<para>
The messages used to commit changes are a large part of these standards.
Consequently, be sure that the headers for each commit have the required information.
For information on how to follow the Yocto Project commit message standards, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#how-to-submit-a-change'>How to Submit a
Change</ulink>" section in the Yocto Project Development Manual.
</para>
<para>
If the initial commits were not properly documented or do not meet those standards,
you can re-base by using the <filename>git rebase -i</filename> command to
manipulate the commits and
get them into the required format.
Other techniques such as branching and cherry-picking commits are also viable options.
</para>
<para>
Once you complete the commits, you can generate the email that sends the patches
to the maintainer(s) or lists that review and integrate changes.
The command <filename>git send-email</filename> is commonly used to ensure
that patches are properly
formatted for easy application and avoid mailer-induced patch damage.
</para>
<para>
The following is an example of dumping patches for external submission:
<literallayout class='monospaced'>
# dump the last 4 commits
$ git format-patch --thread -n -o ~/rr/ HEAD^^^^
$ git send-email --compose --subject '[RFC 0/N] &lt;patch series summary&gt;' \
--to foo@yoctoproject.org --to bar@yoctoproject.org \
--cc list@yoctoproject.org ~/rr
# the editor is invoked for the 0/N patch, and when complete the entire
# series is sent via email for review
</literallayout>
</para>
</section>
<section id='export-for-import-into-other-scm'>
<title>Exporting Changes for Import into Another SCM</title>
<para>
When you want to export changes for import into another
Source Code Manager (SCM), you can use any of the previously discussed
techniques.
However, if the patches are manually applied to a secondary tree and then
that tree is checked into the SCM, you can lose change information such as
commit logs.
This process is not recommended.
</para>
<para>
Many SCMs can directly import Git commits, or can translate Git patches so that
information is not lost.
Those facilities are SCM-dependent and you should use them whenever possible.
</para>
</section>
</section>
<section id='scm-working-with-the-yocto-project-kernel-in-another-scm'>
<title>Working with the Yocto Project Kernel in Another SCM</title>
<para>
This section describes kernel development in an SCM other than Git,
which is not the same as exporting changes to another SCM described earlier.
For this scenario, you use the OpenEmbedded build system to
develop the kernel in a different SCM.
The following must be true for you to accomplish this:
<itemizedlist>
<listitem><para>The delivered Yocto Project kernel must be exported into the second
SCM.</para></listitem>
<listitem><para>Development must be exported from that secondary SCM into a
format that can be used by the OpenEmbedded build system.</para></listitem>
</itemizedlist>
</para>
<section id='exporting-delivered-kernel-to-scm'>
<title>Exporting the Delivered Kernel to the SCM</title>
<para>
Depending on the SCM, it might be possible to export the entire Yocto Project
kernel Git repository, branches and all, into a new environment.
This method is preferred because it has the most flexibility and potential to maintain
the meta data associated with each commit.
</para>
<para>
When a direct import mechanism is not available, it is still possible to
export a branch (or series of branches) and check them into a new repository.
</para>
<para>
The following commands illustrate some of the steps you could use to
import the <filename>yocto/standard/common-pc/base</filename>
kernel into a secondary SCM:
<literallayout class='monospaced'>
$ git checkout yocto/standard/common-pc/base
$ cd .. ; echo linux/.git &gt; .cvsignore
$ cvs import -m "initial import" linux MY_COMPANY start
</literallayout>
</para>
<para>
You could now relocate the CVS repository and use it in a centralized manner.
</para>
<para>
The following commands illustrate how you can condense and merge two BSPs into a
second SCM:
<literallayout class='monospaced'>
$ git checkout yocto/standard/common-pc/base
$ git merge yocto/standard/common-pc-64/base
# resolve any conflicts and commit them
$ cd .. ; echo linux/.git &gt; .cvsignore
$ cvs import -m "initial import" linux MY_COMPANY start
</literallayout>
</para>
</section>
<section id='importing-changes-for-build'>
<title>Importing Changes for the Build</title>
<para>
Once development has reached a suitable point in the second development
environment, you need to export the changes as patches.
To export them, place the changes in a recipe and
automatically apply them to the kernel during patching.
</para>
</section>
</section>
<section id='bsp-creating'>
<title>Creating a BSP Based on an Existing Similar BSP</title>
<para>
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 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>
<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
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
already supported and exists in the Yocto Project.
Starting with something as close as possible to your board makes developing
your BSP easier.
You can find all the BSPs that are supported and ship with the Yocto Project
on the Yocto Project's Download page at
<ulink url='&YOCTO_HOME_URL;/download'></ulink>.</para></listitem>
<listitem><para><emphasis>Be sure you have the Base BSP:</emphasis>
You need to either have a local Git repository of the base BSP set up or
have downloaded and extracted the files from a release BSP tarball.
Either method gives you access to the BSP source files.</para></listitem>
<listitem><para><emphasis>Make a copy of the existing BSP, thus isolating your new
BSP work:</emphasis>
Copying the existing BSP file structure gives you a new area in which to work.</para></listitem>
<listitem><para><emphasis>Make configuration and recipe changes to your new BSP:</emphasis>
Configuration changes involve the files in the BSP's <filename>conf</filename>
directory.
Changes include creating a machine-specific configuration file and editing the
<filename>layer.conf</filename> file.
The configuration changes identify the kernel you will be using.
Recipe changes include removing, modifying, or adding new recipe files that
instruct the build process on what features to include in the image.</para></listitem>
<listitem><para><emphasis>Prepare for the build:</emphasis>
Before you actually initiate the build, you need to set up the build environment
by sourcing the environment initialization script.
After setting up the environment, you need to make some build configuration
changes to the <filename>local.conf</filename> and <filename>bblayers.conf</filename>
files.</para></listitem>
<listitem><para><emphasis>Build the image:</emphasis>
The OpenEmbedded build system uses BitBake to create the image.
You need to decide on the type of image you are going to build (e.g. minimal, base,
core, sato, and so forth) and then start the build using the <filename>bitbake</filename>
command.</para></listitem>
</orderedlist>
</para>
</section>
<section id='tip-dirty-string'>
<title>"-dirty" String</title>
<para>
If kernel images are being built with "-dirty" on the end of the version
string, this simply means that modifications in the source
directory have not been committed.
<literallayout class='monospaced'>
$ git status
</literallayout>
</para>
<para>
You can use the above Git command to report modified, removed, or added files.
You should commit those changes to the tree regardless of whether they will be saved,
exported, or used.
Once you commit the changes you need to rebuild the kernel.
</para>
<para>
To brute force pickup and commit all such pending changes, enter the following:
<literallayout class='monospaced'>
$ git add .
$ git commit -s -a -m "getting rid of -dirty"
</literallayout>
</para>
<para>
Next, rebuild the kernel.
</para>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -0,0 +1,131 @@
<!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='kernel-dev-faq'>
<title>Kernel Development FAQ</title>
<qandaset>
<qandaentry>
<question>
<para>
How do I use my own Linux kernel <filename>.config</filename>
file?
</para>
</question>
<answer>
<para>
Refer to the "<link linkend='changing-the-configuration'>Changing the Configuration</link>"
section for information.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I create configuration fragments?
</para>
</question>
<answer>
<para>
Refer to the "<link linkend='generating-configuration-files'>Generating Configuration Files</link>"
section for information.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I use my own Linux kernel sources?
</para>
</question>
<answer>
<para>
Refer to the "<link linkend='working-with-your-own-sources'>Working With Your Own Sources</link>"
section for information.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I install/not-install the kernel image on the rootfs?
</para>
</question>
<answer>
<para>
The kernel image (e.g. <filename>vmlinuz</filename>) is provided
by the <filename>kernel-image</filename> package.
Image recipes depend on <filename>kernel-base</filename>.
To specify whether or not the kernel
image is installed in the generated root filesystem, override
<filename>RDEPENDS_kernel-base</filename> to include or not
include "kernel-image".</para>
<para>See the
"<ulink url='&YOCTO_DOCS_DEV_URL;#using-bbappend-files'>Using .bbappend Files</ulink>"
section in the Yocto Project Development Manual for information on
how to use an append file to override metadata.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I install a specific kernel module?
</para>
</question>
<answer>
<para>
Linux kernel modules are packaged individually.
To ensure a specific kernel module is included in an image,
include it in the appropriate machine
<ulink url='&YOCTO_DOCS_REF_URL;#var-RRECOMMENDS'><filename>RRECOMMENDS</filename></ulink>
variable.</para>
<para>These other variables are useful for installing specific
modules:
<literallayout class='monospaced'>
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RDEPENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RDEPENDS</filename></ulink>
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS'><filename>MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS</filename></ulink>
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RDEPENDS'><filename>MACHINE_EXTRA_RDEPENDS</filename></ulink>
<ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RRECOMMENDS'><filename>MACHINE_EXTRA_RRECOMMENDS</filename></ulink>
</literallayout>
For example, set the following in the <filename>qemux86.conf</filename>
file to include the <filename>ab123</filename> kernel modules
with images built for the <filename>qemux86</filename> machine:
<literallayout class='monospaced'>
MACHINE_EXTRA_RRECOMMENDS += "kernel-module-ab123"
</literallayout>
For more information, see the
"<link linkend='incorporating-out-of-tree-modules'>Incorporating Out-of-Tree Modules</link>"
section.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I change the Linux kernel command line?
</para>
</question>
<answer>
<para>
The Linux kernel command line is typically specified in
the machine config using the <filename>APPEND</filename> variable.
For example, you can add some helpful debug information doing
the following:
<literallayout class='monospaced'>
APPEND += "printk.time=y initcall_debug debug"
</literallayout>
</para>
</answer>
</qandaentry>
</qandaset>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -0,0 +1,124 @@
<!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='kernel-dev-intro'>
<title>Introduction</title>
<section id='kernel-dev-overview'>
<title>Overview</title>
<para>
Regardless of how you intend to make use of the Yocto Project,
chances are you will work with the Linux kernel.
This manual provides background information on the Yocto Linux kernel
<ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>,
describes common tasks you can perform using the kernel tools,
and shows you how to use the Metadata needed to work with
the kernel inside the Yocto Project.
</para>
<para>
Each Yocto Project release has a set of linux-yocto recipes, whose
Git repositories you can view in the Yocto
<ulink url='&YOCTO_GIT_URL;'>Source Repositories</ulink> under
the "Yocto Linux Kernel" heading.
New recipes for the release track the latest upstream developments
and introduce newly supported platforms.
Previous recipes in the release are refreshed and supported for at
least one additional release.
As they align, these previous releases are updated to include the
latest from the Long Term Support Initiative (LTSI) project.
Also included is a linux-yocto development recipe
(<filename>linux-yocto-dev.bb</filename>) should you want to work
with the very latest in upstream Linux kernel development and
Metadata development.
</para>
<para>
The Yocto Project also provides a powerful set of kernel
tools for managing Linux kernel sources and configuration data.
You can use these tools to make a single configuration change,
apply multiple patches, or work with your own kernel sources.
</para>
<para>
In particular, the kernel tools allow you to generate configuration
fragments that specify only what you must, and nothing more.
Configuration fragments only need to contain the highest level
visible <filename>CONFIG</filename> options as presented by the Linux
kernel <filename>menuconfig</filename> system.
Contrast this against a complete Linux kernel
<filename>.config</filename>, which includes all the automatically
selected <filename>CONFIG</filename> options.
This efficiency reduces your maintenance effort and allows you
to further separate your configuration in ways that make sense for
your project.
A common split separates policy and hardware.
For example, all your kernels might support
the <filename>proc</filename> and <filename>sys</filename> filesystems,
but only specific boards require sound, USB, or specific drivers.
Specifying these configurations individually allows you to aggregate
them together as needed, but maintains them in only one place.
Similar logic applies to separating source changes.
</para>
<para>
If you do not maintain your own kernel sources and need to make
only minimal changes to the sources, the released recipes provide a
vetted base upon which to layer your changes.
Doing so allows you to benefit from the continual kernel
integration and testing performed during development of the
Yocto Project.
</para>
<para>
If, instead, you have a very specific Linux kernel source tree
and are unable to align with one of the official linux-yocto
recipes, an alternative exists by which you can use the Yocto
Project Linux kernel tools with your own kernel sources.
</para>
</section>
<section id='kernel-dev-other-resources'>
<title>Other Resources</title>
<para>
The sections that follow provide instructions for completing
specific Linux kernel development tasks.
These instructions assume you are comfortable working with
<ulink url='http://developer.berlios.de/projects/bitbake/'>BitBake</ulink>
recipes and basic open-source development tools.
Understanding these concepts will facilitate the process of working
with the kernel recipes.
If you find you need some additional background, please be sure to
review and understand the following documentation:
<itemizedlist>
<listitem><para><ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink>
</para></listitem>
<listitem><para>The "<ulink url='&YOCTO_DOCS_DEV_URL;#modifying-temporary-source-code'>Modifying Temporary Source Code</ulink>"
section in the Yocto Project Development Manual
</para></listitem>
<listitem><para>The "<ulink url='&YOCTO_DOCS_DEV_URL;#understanding-and-creating-layers'>Understanding and Creating Layers</ulink>" section
in the Yocto Project Development Manual</para></listitem>
<listitem><para>The "<ulink url='&YOCTO_DOCS_DEV_URL;#modifying-the-kernel'>Modifying the Kernel</ulink>" section
in the Yocto Project Development Manual.</para></listitem>
</itemizedlist>
</para>
<para>
Finally, while this document focuses on the manual creation of
recipes, patches, and configuration files, the Yocto Project
Board Support Package (BSP) tools are available to automate
this process with existing content and work well to create the
initial framework and boilerplate code.
For details on these tools, see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#using-the-yocto-projects-bsp-tools'>Using the Yocto Project's BSP Tools</ulink>"
section in the Yocto Project Board Support Package (BSP) Developer's
Guide.
</para>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -0,0 +1,978 @@
/*
Generic XHTML / DocBook XHTML CSS Stylesheet.
Browser wrangling and typographic design by
Oyvind Kolas / pippin@gimp.org
Customised for Poky by
Matthew Allum / mallum@o-hand.com
Thanks to:
Liam R. E. Quin
William Skaggs
Jakub Steiner
Structure
---------
The stylesheet is divided into the following sections:
Positioning
Margins, paddings, width, font-size, clearing.
Decorations
Borders, style
Colors
Colors
Graphics
Graphical backgrounds
Nasty IE tweaks
Workarounds needed to make it work in internet explorer,
currently makes the stylesheet non validating, but up until
this point it is validating.
Mozilla extensions
Transparency for footer
Rounded corners on boxes
*/
/*************** /
/ Positioning /
/ ***************/
body {
font-family: Verdana, Sans, sans-serif;
min-width: 640px;
width: 80%;
margin: 0em auto;
padding: 2em 5em 5em 5em;
color: #333;
}
h1,h2,h3,h4,h5,h6,h7 {
font-family: Arial, Sans;
color: #00557D;
clear: both;
}
h1 {
font-size: 2em;
text-align: left;
padding: 0em 0em 0em 0em;
margin: 2em 0em 0em 0em;
}
h2.subtitle {
margin: 0.10em 0em 3.0em 0em;
padding: 0em 0em 0em 0em;
font-size: 1.8em;
padding-left: 20%;
font-weight: normal;
font-style: italic;
}
h2 {
margin: 2em 0em 0.66em 0em;
padding: 0.5em 0em 0em 0em;
font-size: 1.5em;
font-weight: bold;
}
h3.subtitle {
margin: 0em 0em 1em 0em;
padding: 0em 0em 0em 0em;
font-size: 142.14%;
text-align: right;
}
h3 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 140%;
font-weight: bold;
}
h4 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 120%;
font-weight: bold;
}
h5 {
margin: 1em 0em 0.5em 0em;
padding: 1em 0em 0em 0em;
font-size: 110%;
font-weight: bold;
}
h6 {
margin: 1em 0em 0em 0em;
padding: 1em 0em 0em 0em;
font-size: 110%;
font-weight: bold;
}
.authorgroup {
background-color: transparent;
background-repeat: no-repeat;
padding-top: 256px;
background-image: url("figures/kernel-dev-title.png");
background-position: left top;
margin-top: -256px;
padding-right: 50px;
margin-left: 0px;
text-align: right;
width: 740px;
}
h3.author {
margin: 0em 0me 0em 0em;
padding: 0em 0em 0em 0em;
font-weight: normal;
font-size: 100%;
color: #333;
clear: both;
}
.author tt.email {
font-size: 66%;
}
.titlepage hr {
width: 0em;
clear: both;
}
.revhistory {
padding-top: 2em;
clear: both;
}
.toc,
.list-of-tables,
.list-of-examples,
.list-of-figures {
padding: 1.33em 0em 2.5em 0em;
color: #00557D;
}
.toc p,
.list-of-tables p,
.list-of-figures p,
.list-of-examples p {
padding: 0em 0em 0em 0em;
padding: 0em 0em 0.3em;
margin: 1.5em 0em 0em 0em;
}
.toc p b,
.list-of-tables p b,
.list-of-figures p b,
.list-of-examples p b{
font-size: 100.0%;
font-weight: bold;
}
.toc dl,
.list-of-tables dl,
.list-of-figures dl,
.list-of-examples dl {
margin: 0em 0em 0.5em 0em;
padding: 0em 0em 0em 0em;
}
.toc dt {
margin: 0em 0em 0em 0em;
padding: 0em 0em 0em 0em;
}
.toc dd {
margin: 0em 0em 0em 2.6em;
padding: 0em 0em 0em 0em;
}
div.glossary dl,
div.variablelist dl {
}
.glossary dl dt,
.variablelist dl dt,
.variablelist dl dt span.term {
font-weight: normal;
width: 20em;
text-align: right;
}
.variablelist dl dt {
margin-top: 0.5em;
}
.glossary dl dd,
.variablelist dl dd {
margin-top: -1em;
margin-left: 25.5em;
}
.glossary dd p,
.variablelist dd p {
margin-top: 0em;
margin-bottom: 1em;
}
div.calloutlist table td {
padding: 0em 0em 0em 0em;
margin: 0em 0em 0em 0em;
}
div.calloutlist table td p {
margin-top: 0em;
margin-bottom: 1em;
}
div p.copyright {
text-align: left;
}
div.legalnotice p.legalnotice-title {
margin-bottom: 0em;
}
p {
line-height: 1.5em;
margin-top: 0em;
}
dl {
padding-top: 0em;
}
hr {
border: solid 1px;
}
.mediaobject,
.mediaobjectco {
text-align: center;
}
img {
border: none;
}
ul {
padding: 0em 0em 0em 1.5em;
}
ul li {
padding: 0em 0em 0em 0em;
}
ul li p {
text-align: left;
}
table {
width :100%;
}
th {
padding: 0.25em;
text-align: left;
font-weight: normal;
vertical-align: top;
}
td {
padding: 0.25em;
vertical-align: top;
}
p a[id] {
margin: 0px;
padding: 0px;
display: inline;
background-image: none;
}
a {
text-decoration: underline;
color: #444;
}
pre {
overflow: auto;
}
a:hover {
text-decoration: underline;
/*font-weight: bold;*/
}
div.informalfigure,
div.informalexample,
div.informaltable,
div.figure,
div.table,
div.example {
margin: 1em 0em;
padding: 1em;
page-break-inside: avoid;
}
div.informalfigure p.title b,
div.informalexample p.title b,
div.informaltable p.title b,
div.figure p.title b,
div.example p.title b,
div.table p.title b{
padding-top: 0em;
margin-top: 0em;
font-size: 100%;
font-weight: normal;
}
.mediaobject .caption,
.mediaobject .caption p {
text-align: center;
font-size: 80%;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.epigraph {
padding-left: 55%;
margin-bottom: 1em;
}
.epigraph p {
text-align: left;
}
.epigraph .quote {
font-style: italic;
}
.epigraph .attribution {
font-style: normal;
text-align: right;
}
span.application {
font-style: italic;
}
.programlisting {
font-family: monospace;
font-size: 80%;
white-space: pre;
margin: 1.33em 0em;
padding: 1.33em;
}
.tip,
.warning,
.caution,
.note {
margin-top: 1em;
margin-bottom: 1em;
}
/* force full width of table within div */
.tip table,
.warning table,
.caution table,
.note table {
border: none;
width: 100%;
}
.tip table th,
.warning table th,
.caution table th,
.note table th {
padding: 0.8em 0.0em 0.0em 0.0em;
margin : 0em 0em 0em 0em;
}
.tip p,
.warning p,
.caution p,
.note p {
margin-top: 0.5em;
margin-bottom: 0.5em;
padding-right: 1em;
text-align: left;
}
.acronym {
text-transform: uppercase;
}
b.keycap,
.keycap {
padding: 0.09em 0.3em;
margin: 0em;
}
.itemizedlist li {
clear: none;
}
.filename {
font-size: medium;
font-family: Courier, monospace;
}
div.navheader, div.heading{
position: absolute;
left: 0em;
top: 0em;
width: 100%;
background-color: #cdf;
width: 100%;
}
div.navfooter, div.footing{
position: fixed;
left: 0em;
bottom: 0em;
background-color: #eee;
width: 100%;
}
div.navheader td,
div.navfooter td {
font-size: 66%;
}
div.navheader table th {
/*font-family: Georgia, Times, serif;*/
/*font-size: x-large;*/
font-size: 80%;
}
div.navheader table {
border-left: 0em;
border-right: 0em;
border-top: 0em;
width: 100%;
}
div.navfooter table {
border-left: 0em;
border-right: 0em;
border-bottom: 0em;
width: 100%;
}
div.navheader table td a,
div.navfooter table td a {
color: #777;
text-decoration: none;
}
/* normal text in the footer */
div.navfooter table td {
color: black;
}
div.navheader table td a:visited,
div.navfooter table td a:visited {
color: #444;
}
/* links in header and footer */
div.navheader table td a:hover,
div.navfooter table td a:hover {
text-decoration: underline;
background-color: transparent;
color: #33a;
}
div.navheader hr,
div.navfooter hr {
display: none;
}
.qandaset tr.question td p {
margin: 0em 0em 1em 0em;
padding: 0em 0em 0em 0em;
}
.qandaset tr.answer td p {
margin: 0em 0em 1em 0em;
padding: 0em 0em 0em 0em;
}
.answer td {
padding-bottom: 1.5em;
}
.emphasis {
font-weight: bold;
}
/************* /
/ decorations /
/ *************/
.titlepage {
}
.part .title {
}
.subtitle {
border: none;
}
/*
h1 {
border: none;
}
h2 {
border-top: solid 0.2em;
border-bottom: solid 0.06em;
}
h3 {
border-top: 0em;
border-bottom: solid 0.06em;
}
h4 {
border: 0em;
border-bottom: solid 0.06em;
}
h5 {
border: 0em;
}
*/
.programlisting {
border: solid 1px;
}
div.figure,
div.table,
div.informalfigure,
div.informaltable,
div.informalexample,
div.example {
border: 1px solid;
}
.tip,
.warning,
.caution,
.note {
border: 1px solid;
}
.tip table th,
.warning table th,
.caution table th,
.note table th {
border-bottom: 1px solid;
}
.question td {
border-top: 1px solid black;
}
.answer {
}
b.keycap,
.keycap {
border: 1px solid;
}
div.navheader, div.heading{
border-bottom: 1px solid;
}
div.navfooter, div.footing{
border-top: 1px solid;
}
/********* /
/ colors /
/ *********/
body {
color: #333;
background: white;
}
a {
background: transparent;
}
a:hover {
background-color: #dedede;
}
h1,
h2,
h3,
h4,
h5,
h6,
h7,
h8 {
background-color: transparent;
}
hr {
border-color: #aaa;
}
.tip, .warning, .caution, .note {
border-color: #fff;
}
.tip table th,
.warning table th,
.caution table th,
.note table th {
border-bottom-color: #fff;
}
.warning {
background-color: #f0f0f2;
}
.caution {
background-color: #f0f0f2;
}
.tip {
background-color: #f0f0f2;
}
.note {
background-color: #f0f0f2;
}
.glossary dl dt,
.variablelist dl dt,
.variablelist dl dt span.term {
color: #044;
}
div.figure,
div.table,
div.example,
div.informalfigure,
div.informaltable,
div.informalexample {
border-color: #aaa;
}
pre.programlisting {
color: black;
background-color: #fff;
border-color: #aaa;
border-width: 2px;
}
.guimenu,
.guilabel,
.guimenuitem {
background-color: #eee;
}
b.keycap,
.keycap {
background-color: #eee;
border-color: #999;
}
div.navheader {
border-color: black;
}
div.navfooter {
border-color: black;
}
/*********** /
/ graphics /
/ ***********/
/*
body {
background-image: url("images/body_bg.jpg");
background-attachment: fixed;
}
.navheader,
.note,
.tip {
background-image: url("images/note_bg.jpg");
background-attachment: fixed;
}
.warning,
.caution {
background-image: url("images/warning_bg.jpg");
background-attachment: fixed;
}
.figure,
.informalfigure,
.example,
.informalexample,
.table,
.informaltable {
background-image: url("images/figure_bg.jpg");
background-attachment: fixed;
}
*/
h1,
h2,
h3,
h4,
h5,
h6,
h7{
}
/*
Example of how to stick an image as part of the title.
div.article .titlepage .title
{
background-image: url("figures/white-on-black.png");
background-position: center;
background-repeat: repeat-x;
}
*/
div.preface .titlepage .title,
div.colophon .title,
div.chapter .titlepage .title,
div.article .titlepage .title
{
}
div.section div.section .titlepage .title,
div.sect2 .titlepage .title {
background: none;
}
h1.title {
background-color: transparent;
background-image: url("figures/yocto-project-bw.png");
background-repeat: no-repeat;
height: 256px;
text-indent: -9000px;
overflow:hidden;
}
h2.subtitle {
background-color: transparent;
text-indent: -9000px;
overflow:hidden;
width: 0px;
display: none;
}
/*************************************** /
/ pippin.gimp.org specific alterations /
/ ***************************************/
/*
div.heading, div.navheader {
color: #777;
font-size: 80%;
padding: 0;
margin: 0;
text-align: left;
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 50px;
background: url('/gfx/heading_bg.png') transparent;
background-repeat: repeat-x;
background-attachment: fixed;
border: none;
}
div.heading a {
color: #444;
}
div.footing, div.navfooter {
border: none;
color: #ddd;
font-size: 80%;
text-align:right;
width: 100%;
padding-top: 10px;
position: absolute;
bottom: 0px;
left: 0px;
background: url('/gfx/footing_bg.png') transparent;
}
*/
/****************** /
/ nasty ie tweaks /
/ ******************/
/*
div.heading, div.navheader {
width:expression(document.body.clientWidth + "px");
}
div.footing, div.navfooter {
width:expression(document.body.clientWidth + "px");
margin-left:expression("-5em");
}
body {
padding:expression("4em 5em 0em 5em");
}
*/
/**************************************** /
/ mozilla vendor specific css extensions /
/ ****************************************/
/*
div.navfooter, div.footing{
-moz-opacity: 0.8em;
}
div.figure,
div.table,
div.informalfigure,
div.informaltable,
div.informalexample,
div.example,
.tip,
.warning,
.caution,
.note {
-moz-border-radius: 0.5em;
}
b.keycap,
.keycap {
-moz-border-radius: 0.3em;
}
*/
table tr td table tr td {
display: none;
}
hr {
display: none;
}
table {
border: 0em;
}
.photo {
float: right;
margin-left: 1.5em;
margin-bottom: 1.5em;
margin-top: 0em;
max-width: 17em;
border: 1px solid gray;
padding: 3px;
background: white;
}
.seperator {
padding-top: 2em;
clear: both;
}
#validators {
margin-top: 5em;
text-align: right;
color: #777;
}
@media print {
body {
font-size: 8pt;
}
.noprint {
display: none;
}
}
.tip,
.note {
background: #f0f0f2;
color: #333;
padding: 20px;
margin: 20px;
}
.tip h3,
.note h3 {
padding: 0em;
margin: 0em;
font-size: 2em;
font-weight: bold;
color: #333;
}
.tip a,
.note a {
color: #333;
text-decoration: underline;
}
.footnote {
font-size: small;
color: #333;
}
/* Changes the announcement text */
.tip h3,
.warning h3,
.caution h3,
.note h3 {
font-size:large;
color: #00557D;
}

View File

@@ -0,0 +1,80 @@
<!DOCTYPE book 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; ] >
<book id='kernel-dev' lang='en'
xmlns:xi="http://www.w3.org/2003/XInclude"
xmlns="http://docbook.org/ns/docbook"
>
<bookinfo>
<mediaobject>
<imageobject>
<imagedata fileref='figures/kernel-dev-title.png'
format='SVG'
align='left' scalefit='1' width='100%'/>
</imageobject>
</mediaobject>
<title></title>
<authorgroup>
<author>
<firstname>Darren</firstname> <surname>Hart</surname>
<affiliation>
<orgname>Intel Corporation</orgname>
</affiliation>
<email>darren.hart@intel.com</email>
</author>
</authorgroup>
<revhistory>
<revision>
<revnumber>1.4</revnumber>
<date>Sometime in 2013</date>
<revremark>Released with the Yocto Project 1.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
<year>&COPYRIGHT_YEAR;</year>
<holder>Linux Foundation</holder>
</copyright>
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note>
Due to production processes, there could be differences between the Yocto Project
documentation bundled in the release tarball and the
<ulink url='&YOCTO_DOCS_KERNEL_URL;'>Yocto Project Linux Kernel Development Manual</ulink> on
the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
For the latest version of this manual, see the manual on the website.
</note>
</legalnotice>
</bookinfo>
<xi:include href="kernel-dev-intro.xml"/>
<xi:include href="kernel-dev-common.xml"/>
<xi:include href="kernel-dev-advanced.xml"/>
<!--
<xi:include href="kernel-dev-examples.xml"/>
-->
<xi:include href="kernel-dev-faq.xml"/>
<!-- <index id='index'>
<title>Index</title>
</index>
-->
</book>
<!--
vim: expandtab tw=80 ts=4
-->

View File

@@ -22,38 +22,38 @@
<section id='kernel-goals'>
<title>Kernel Goals</title>
<para>
The complexity of embedded kernel design has increased dramatically.
The complexity of embedded kernel design has increased dramatically.
Whether it is managing multiple implementations of a particular feature or tuning and
optimizing board specific features, both flexibility and maintainability are key concerns.
optimizing board specific features, both flexibility and maintainability are key concerns.
The Linux kernels available through the Yocto Project are presented with the embedded
developer's needs in mind and have evolved to assist in these key concerns.
developer's needs in mind and have evolved to assist in these key concerns.
For example, prior methods such as applying hundreds of patches to an extracted
tarball have been replaced with proven techniques that allow easy inspection,
bisection and analysis of changes.
Application of these techniques also creates a platform for performing integration and
bisection and analysis of changes.
Application of these techniques also creates a platform for performing integration and
collaboration with the thousands of upstream development projects.
</para>
<para>
With all these considerations in mind, the Yocto Project's kernel and development team
strives to attain these goals:
<itemizedlist>
<listitem><para>Allow the end user to leverage community best practices to seamlessly
<listitem><para>Allow the end user to leverage community best practices to seamlessly
manage the development, build and debug cycles.</para></listitem>
<listitem><para>Create a platform for performing integration and collaboration with the
<listitem><para>Create a platform for performing integration and collaboration with the
thousands of upstream development projects that exist.</para></listitem>
<listitem><para>Provide mechanisms that support many different work flows, front-ends and
<listitem><para>Provide mechanisms that support many different work flows, front-ends and
management techniques.</para></listitem>
<listitem><para>Deliver the most up-to-date kernel possible while still ensuring that
<listitem><para>Deliver the most up-to-date kernel possible while still ensuring that
the baseline kernel is the most stable official release.</para></listitem>
<listitem><para>Include major technological features as part of the Yocto Project's
<listitem><para>Include major technological features as part of the Yocto Project's
upward revision strategy.</para></listitem>
<listitem><para>Present a kernel Git repository that, similar to the upstream
<filename>kernel.org</filename> tree,
<listitem><para>Present a kernel Git repository that, similar to the upstream
<filename>kernel.org</filename> tree,
has a clear and continuous history.</para></listitem>
<listitem><para>Deliver a key set of supported kernel types, where each type is tailored
<listitem><para>Deliver a key set of supported kernel types, where each type is tailored
to meet a specific use (e.g. networking, consumer, devices, and so forth).</para></listitem>
<listitem><para>Employ a Git branching strategy that, from a developer's point of view,
results in a linear path from the baseline <filename>kernel.org</filename>,
results in a linear path from the baseline <filename>kernel.org</filename>,
through a select group of features and
ends with their BSP-specific commits.</para></listitem>
</itemizedlist>
@@ -63,78 +63,78 @@
<section id='kernel-big-picture'>
<title>Yocto Project Kernel Development and Maintenance Overview</title>
<para>
Kernels available through the Yocto Project, like other kernels, are based off the Linux
kernel releases from <ulink url='http://www.kernel.org'></ulink>.
Kernels available through the Yocto Project, like other kernels, are based off the Linux
kernel releases from <ulink url='http://www.kernel.org'></ulink>.
At the beginning of a major development cycle, the Yocto Project team
chooses its kernel based on factors such as release timing, the anticipated release
timing of final upstream <filename>kernel.org</filename> versions, and Yocto Project
chooses its kernel based on factors such as release timing, the anticipated release
timing of final upstream <filename>kernel.org</filename> versions, and Yocto Project
feature requirements.
Typically, the kernel chosen is in the
final stages of development by the community.
In other words, the kernel is in the release
candidate or "rc" phase and not yet a final release.
But, by being in the final stages of external development, the team knows that the
<filename>kernel.org</filename> final release will clearly be within the early stages of
candidate or "rc" phase and not yet a final release.
But, by being in the final stages of external development, the team knows that the
<filename>kernel.org</filename> final release will clearly be within the early stages of
the Yocto Project development window.
</para>
<para>
This balance allows the team to deliver the most up-to-date kernel
as possible, while still ensuring that the team has a stable official release for
possible, while still ensuring that the team has a stable official release for
the baseline Linux kernel version.
</para>
<para>
The ultimate source for kernels available through the Yocto Project are released kernels
The ultimate source for kernels available through the Yocto Project are released kernels
from <filename>kernel.org</filename>.
In addition to a foundational kernel from <filename>kernel.org</filename>, the
In addition to a foundational kernel from <filename>kernel.org</filename>, the
kernels available contain a mix of important new mainline
developments, non-mainline developments (when there is no alternative),
Board Support Package (BSP) developments,
and custom features.
These additions result in a commercially released Yocto Project Linux kernel that caters
These additions result in a commercially released Yocto Project Linux kernel that caters
to specific embedded designer needs for targeted hardware.
</para>
<para>
Once a kernel is officially released, the Yocto Project team goes into
their next development cycle, or upward revision (uprev) cycle, while still
Once a kernel is officially released, the Yocto Project team goes into
their next development cycle, or upward revision (uprev) cycle, while still
continuing maintenance on the released kernel.
It is important to note that the most sustainable and stable way
to include feature development upstream is through a kernel uprev process.
Back-porting hundreds of individual fixes and minor features from various
kernel versions is not sustainable and can easily compromise quality.
</para>
<para>
<para>
During the uprev cycle, the Yocto Project team uses an ongoing analysis of
kernel development, BSP support, and release timing to select the best
possible <filename>kernel.org</filename> version.
The team continually monitors community kernel
development to look for significant features of interest.
The team does consider back-porting large features if they have a significant advantage.
The team does consider back-porting large features if they have a significant advantage.
User or community demand can also trigger a back-port or creation of new
functionality in the Yocto Project baseline kernel during the uprev cycle.
functionality in the Yocto Project baseline kernel during the uprev cycle.
</para>
<para>
Generally speaking, every new kernel both adds features and introduces new bugs.
These consequences are the basic properties of upstream kernel development and are
managed by the Yocto Project team's kernel strategy.
It is the Yocto Project team's policy to not back-port minor features to the released kernel.
They only consider back-porting significant technological jumps - and, that is done
after a complete gap analysis.
The reason for this policy is that back-porting any small to medium sized change
from an evolving kernel can easily create mismatches, incompatibilities and very
managed by the Yocto Project team's kernel strategy.
It is the Yocto Project team's policy to not back-port minor features to the released kernel.
They only consider back-porting significant technological jumps - and, that is done
after a complete gap analysis.
The reason for this policy is that back-porting any small to medium sized change
from an evolving kernel can easily create mismatches, incompatibilities and very
subtle errors.
</para>
<para>
These policies result in both a stable and a cutting
edge kernel that mixes forward ports of existing features and significant and critical
new functionality.
Forward porting functionality in the kernels available through the Yocto Project kernel
edge kernel that mixes forward ports of existing features and significant and critical
new functionality.
Forward porting functionality in the kernels available through the Yocto Project kernel
can be thought of as a "micro uprev."
The many “micro uprevs” produce a kernel version with a mix of
important new mainline, non-mainline, BSP developments and feature integrations.
The many “micro uprevs” produce a kernel version with a mix of
important new mainline, non-mainline, BSP developments and feature integrations.
This kernel gives insight into new features and allows focused
amounts of testing to be done on the kernel, which prevents
surprises when selecting the next major uprev.
The quality of these cutting edge kernels is evolving and the kernels are used in leading edge
surprises when selecting the next major uprev.
The quality of these cutting edge kernels is evolving and the kernels are used in leading edge
feature and BSP development.
</para>
</section>
@@ -142,33 +142,33 @@
<section id='kernel-architecture'>
<title>Kernel Architecture</title>
<para>
This section describes the architecture of the kernels available through the
This section describes the architecture of the kernels available through the
Yocto Project and provides information
on the mechanisms used to achieve that architecture.
</para>
<section id='architecture-overview'>
<title>Overview</title>
<para>
As mentioned earlier, a key goal of the Yocto Project is to present the
developer with
a kernel that has a clear and continuous history that is visible to the user.
The architecture and mechanisms used achieve that goal in a manner similar to the
As mentioned earlier, a key goal of the Yocto Project is to present the
developer with
a kernel that has a clear and continuous history that is visible to the user.
The architecture and mechanisms used achieve that goal in a manner similar to the
upstream <filename>kernel.org</filename>.
</para>
<para>
You can think of a Yocto Project kernel as consisting of a baseline Linux kernel with
added features logically structured on top of the baseline.
The features are tagged and organized by way of a branching strategy implemented by the
The features are tagged and organized by way of a branching strategy implemented by the
source code manager (SCM) Git.
For information on Git as applied to the Yocto Project, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#git'>Git</ulink>" section in the
"<ulink url='&YOCTO_DOCS_DEV_URL;#git'>Git</ulink>" section in the
Yocto Project Development Manual.
</para>
<para>
The result is that the user has the ability to see the added features and
The result is that the user has the ability to see the added features and
the commits that make up those features.
In addition to being able to see added features, the user can also view the history of what
In addition to being able to see added features, the user can also view the history of what
made up the baseline kernel.
</para>
<para>
@@ -178,73 +178,73 @@
<imagedata fileref="figures/kernel-architecture-overview.png" width="6in" depth="7in" align="center" scale="100" />
</para>
<para>
In the illustration, the "Kernel.org Branch Point"
marks the specific spot (or release) from
which the Yocto Project kernel is created.
In the illustration, the "Kernel.org Branch Point"
marks the specific spot (or release) from
which the Yocto Project kernel is created.
From this point "up" in the tree, features and differences are organized and tagged.
</para>
<para>
The "Yocto Project Baseline Kernel" contains functionality that is common to every kernel
type and BSP that is organized further up the tree.
Placing these common features in the
tree this way means features don't have to be duplicated along individual branches of the
type and BSP that is organized further up the tree.
Placing these common features in the
tree this way means features don't have to be duplicated along individual branches of the
structure.
</para>
<para>
From the Yocto Project Baseline Kernel, branch points represent specific functionality
for individual BSPs as well as real-time kernels.
The illustration represents this through three BSP-specific branches and a real-time
kernel branch.
The illustration represents this through three BSP-specific branches and a real-time
kernel branch.
Each branch represents some unique functionality for the BSP or a real-time kernel.
</para>
<para>
In this example structure, the real-time kernel branch has common features for all
In this example structure, the real-time kernel branch has common features for all
real-time kernels and contains
more branches for individual BSP-specific real-time kernels.
The illustration shows three branches as an example.
more branches for individual BSP-specific real-time kernels.
The illustration shows three branches as an example.
Each branch points the way to specific, unique features for a respective real-time
kernel as they apply to a given BSP.
</para>
<para>
The resulting tree structure presents a clear path of markers (or branches) to the
developer that, for all practical purposes, is the kernel needed for any given set
The resulting tree structure presents a clear path of markers (or branches) to the
developer that, for all practical purposes, is the kernel needed for any given set
of requirements.
</para>
</section>
<section id='branching-and-workflow'>
<title>Branching Strategy and Workflow</title>
<para>
The Yocto Project team creates kernel branches at points where functionality is
The Yocto Project team creates kernel branches at points where functionality is
no longer shared and thus, needs to be isolated.
For example, board-specific incompatibilities would require different functionality
and would require a branch to separate the features.
and would require a branch to separate the features.
Likewise, for specific kernel features, the same branching strategy is used.
</para>
<para>
This branching strategy results in a tree that has features organized to be specific
for particular functionality, single kernel types, or a subset of kernel types.
This strategy also results in not having to store the same feature twice
This branching strategy results in a tree that has features organized to be specific
for particular functionality, single kernel types, or a subset of kernel types.
This strategy also results in not having to store the same feature twice
internally in the tree.
Rather, the kernel team stores the unique differences required to apply the
Rather, the kernel team stores the unique differences required to apply the
feature onto the kernel type in question.
<note>
The Yocto Project team strives to place features in the tree such that they can be
The Yocto Project team strives to place features in the tree such that they can be
shared by all boards and kernel types where possible.
However, during development cycles or when large features are merged,
the team cannot always follow this practice.
the team cannot always follow this practice.
In those cases, the team uses isolated branches to merge features.
</note>
</para>
<para>
BSP-specific code additions are handled in a similar manner to kernel-specific additions.
BSP-specific code additions are handled in a similar manner to kernel-specific additions.
Some BSPs only make sense given certain kernel types.
So, for these types, the team creates branches off the end of that kernel type for all
of the BSPs that are supported on that kernel type.
From the perspective of the tools that create the BSP branch, the BSP is really no
So, for these types, the team creates branches off the end of that kernel type for all
of the BSPs that are supported on that kernel type.
From the perspective of the tools that create the BSP branch, the BSP is really no
different than a feature.
Consequently, the same branching strategy applies to BSPs as it does to features.
So again, rather than store the BSP twice, the team only stores the unique
So again, rather than store the BSP twice, the team only stores the unique
differences for the BSP across the supported multiple kernels.
</para>
<para>
@@ -252,47 +252,47 @@
important to realize that from the developer's point of view, there is a linear
path that travels from the baseline <filename>kernel.org</filename>, through a select
group of features and ends with their BSP-specific commits.
In other words, the divisions of the kernel are transparent and are not relevant
to the developer on a day-to-day basis.
In other words, the divisions of the kernel are transparent and are not relevant
to the developer on a day-to-day basis.
From the developer's perspective, this path is the "master" branch.
The developer does not need to be aware of the existence of any other branches at all.
The developer does not need to be aware of the existence of any other branches at all.
Of course, there is value in the existence of these branches
in the tree, should a person decide to explore them.
For example, a comparison between two BSPs at either the commit level or at the line-by-line
in the tree, should a person decide to explore them.
For example, a comparison between two BSPs at either the commit level or at the line-by-line
code <filename>diff</filename> level is now a trivial operation.
</para>
<para>
Working with the kernel as a structured tree follows recognized community best practices.
Working with the kernel as a structured tree follows recognized community best practices.
In particular, the kernel as shipped with the product, should be
considered an "upstream source" and viewed as a series of
historical and documented modifications (commits).
historical and documented modifications (commits).
These modifications represent the development and stabilization done
by the Yocto Project kernel development team.
</para>
<para>
Because commits only change at significant release points in the product life cycle,
developers can work on a branch created
from the last relevant commit in the shipped Yocto Project kernel.
from the last relevant commit in the shipped Yocto Project kernel.
As mentioned previously, the structure is transparent to the developer
because the kernel tree is left in this state after cloning and building the kernel.
</para>
</section>
<section id='source-code-manager-git'>
<title>Source Code Manager - Git</title>
<para>
The Source Code Manager (SCM) is Git.
This SCM is the obvious mechanism for meeting the previously mentioned goals.
This SCM is the obvious mechanism for meeting the previously mentioned goals.
Not only is it the SCM for <filename>kernel.org</filename> but,
Git continues to grow in popularity and supports many different work flows,
Git continues to grow in popularity and supports many different work flows,
front-ends and management techniques.
</para>
<para>
You can find documentation on Git at <ulink url='http://git-scm.com/documentation'></ulink>.
You can also get an introduction to Git as it applies to the Yocto Project in the
"<ulink url='&YOCTO_DOCS_DEV_URL;#git'>Git</ulink>"
section in the Yocto Project Development Manual.
These referenced sections overview Git and describe a minimal set of
section in the Yocto Project Development Manual.
These referenced sections overview Git and describe a minimal set of
commands that allows you to be functional using Git.
<note>
You can use as much, or as little, of what Git has to offer to accomplish what
@@ -307,11 +307,11 @@
<title>Kernel Configuration</title>
<para>
Kernel configuration, along with kernel features, defines how a kernel
image is built for the Yocto Project.
image is built for the Yocto Project.
Through configuration settings, you can customize a Yocto Project kernel to be
specific to particular hardware.
For example, you can specify sound support or networking support.
This section describes basic concepts behind Kernel configuration within the
This section describes basic concepts behind Kernel configuration within the
Yocto Project and references you to other areas for specific configuration
applications.
</para>
@@ -319,52 +319,52 @@
<para>
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.
You can directly set various configurations in the
<filename>.config</filename> file by using the <filename>menuconfig</filename>
The build process for a Yocto Project kernel uses a <filename>.config</filename> file, which
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.
You can also define configurations in the file by using configuration fragments.
<note>
It is not recommended that you edit the <filename>.config</filename> file directly.
</note>
Here are some brief descriptions of the ways you can affect the
Here are some brief descriptions of the ways you can affect the
<filename>.config</filename> file:
<itemizedlist>
<listitem><para><emphasis>The <filename>menuconfig</filename> Tool:</emphasis>
One of many front-ends that allows you to define kernel configurations.
Some others are <filename>make config</filename>,
<listitem><para><emphasis>The <filename>menuconfig</filename> Tool:</emphasis>
One of many front-ends that allows you to define kernel configurations.
Some others are <filename>make config</filename>,
<filename>make nconfig</filename>, and <filename>make gconfig</filename>.
In the Yocto Project environment, you must use BitBake to build the
In the Yocto Project environment, you must use BitBake to build the
<filename>menuconfig</filename> tool before you can use it to define
configurations:
<literallayout class='monospaced'>
$ bitbake linux-yocto -c menuconfig
</literallayout>
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>"
You can see how <filename>menuconfig</filename> is used to change a simple
kernel configuration in the
"<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>.
</para></listitem>
<listitem><para><emphasis>Configuration Fragments:</emphasis> A file with a
list of kernel options just as they would appear syntactically in the
<listitem><para><emphasis>Configuration Fragments:</emphasis> A file with a
list of kernel options just as they would appear syntactically in the
<filename>.config</filename> file.
Configuration fragments are typically logical groupings and are assembled
by the OpenEmbedded build system to produce input used by the LKC
that ultimately generates the <filename>.config</filename> file.</para>
<para>The
<para>The
<filename><ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'>KERNEL_FEATURES</ulink></filename>
variable can be used to list configuration fragments.
For further discussion on applying configuration fragments, see the
For further discussion on applying configuration fragments, see the
"<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-kernel'>Linux Kernel Configuration</ulink>"
section in the Yocto Project Board Support Package (BSP) Guide.
</para></listitem>
</itemizedlist>
</para>
</section>
</section>
<section id='kernel-tools'>
<title>Kernel Tools</title>
@@ -381,11 +381,11 @@
<listitem><para>Group patches into named, reusable features.</para></listitem>
<listitem><para>Allow top-down control of included features.</para></listitem>
<listitem><para>Bind kernel configurations to kernel patches and features.</para></listitem>
<listitem><para>Present a seamless Git repository that blends Yocto Project value
<listitem><para>Present a seamless Git repository that blends Yocto Project value
with the <filename>kernel.org</filename> history and development.</para></listitem>
</itemizedlist>
</para>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4

View File

@@ -10,9 +10,9 @@
<title>Introduction</title>
<para>
The Yocto Project presents kernels as a fully patched, history-clean Git
repositories.
repositories.
Each repository represents selected features, board support,
and configurations extensively tested by the Yocto Project.
and configurations extensively tested by the Yocto Project.
Yocto Project kernels allow the end user to leverage community
best practices to seamlessly manage the development, build and debug cycles.
</para>
@@ -22,14 +22,14 @@
The manual consists of two sections:
<itemizedlist>
<listitem><para><emphasis>Concepts:</emphasis> Describes concepts behind a kernel.
You will understand how a kernel is organized and why it is organized in
the way it is. You will understand the benefits of a kernel's organization
and the mechanisms used to work with the kernel and how to apply it in your
You will understand how a kernel is organized and why it is organized in
the way it is. You will understand the benefits of a kernel's organization
and the mechanisms used to work with the kernel and how to apply it in your
design process.</para></listitem>
<listitem><para><emphasis>Using a Kernel:</emphasis> Describes best practices
<listitem><para><emphasis>Using a Kernel:</emphasis> Describes best practices
and "how-to" information
that lets you put a kernel to practical use.
Some examples are how to examine changes in a branch and how to
that lets you put a kernel to practical use.
Some examples are how to examine changes in a branch and how to
save kernel modifications.</para></listitem>
</itemizedlist>
</para>
@@ -38,10 +38,9 @@
For more information on the Linux kernel, see the following links:
<itemizedlist>
<listitem><para>The Linux Foundation's guide for kernel development
process - <ulink url='http://ldn.linuxfoundation.org/book/1-a-guide-kernel-development-process'></ulink></para></listitem>
<!-- <listitem><para><ulink url='http://userweb.kernel.org/~akpm/stuff/tpp.txt'></ulink></para></listitem> -->
<listitem><para>A fairly encompassing guide on Linux kernel development -
<ulink url='http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/HOWTO;hb=HEAD'></ulink></para></listitem>
process - <ulink url='http://www.linuxfoundation.org/content/1-guide-kernel-development-process'></ulink></para></listitem>
<listitem><para>A fairly encompassing guide on Linux kernel development -
<ulink url='http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/HOWTO;hb=HEAD'></ulink></para></listitem>
</itemizedlist>
</para>
@@ -54,12 +53,14 @@
<listitem><para>
"<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>
<listitem><para>
"<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>
<para>
<para>
For general information on the Yocto Project, visit the website at
<ulink url='&YOCTO_HOME_URL;'></ulink>.
</para>

View File

@@ -10,11 +10,11 @@
<section id='actions-org'>
<title>Introduction</title>
<para>
This chapter describes how to accomplish tasks involving a kernel's tree structure.
The information is designed to help the developer that wants to modify the Yocto
This chapter describes how to accomplish tasks involving a kernel's tree structure.
The information is designed to help the developer that wants to modify the Yocto
Project kernel and contribute changes upstream to the Yocto Project.
The information covers the following:
<itemizedlist>
<itemizedlist>
<listitem><para>Tree construction</para></listitem>
<listitem><para>Build strategies</para></listitem>
<listitem><para>Workflow examples</para></listitem>
@@ -25,72 +25,72 @@
<section id='tree-construction'>
<title>Tree Construction</title>
<para>
This section describes construction of the Yocto Project kernel source repositories
This section describes construction of the Yocto Project kernel source repositories
as accomplished by the Yocto Project team to create kernel repositories.
These kernel repositories are found under the heading "Yocto Linux Kernel" at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'>&YOCTO_GIT_URL;/cgit.cgi</ulink>
and can be shipped as part of a Yocto Project release.
and can be shipped as part of a Yocto Project release.
The team creates these repositories by
compiling and executing the set of feature descriptions for every BSP/feature
in the product.
in the product.
Those feature descriptions list all necessary patches,
configuration, branching, tagging and feature divisions found in a kernel.
Thus, the Yocto Project kernel repository (or tree) is built.
</para>
<para>
The existence of this tree allows you to access and clone a particular
The existence of this tree allows you to access and clone a particular
Yocto Project kernel repository and use it to build images based on their configurations
and features.
</para>
<para>
You can find the files used to describe all the valid features and BSPs
in the Yocto Project kernel in any clone of the Yocto Project kernel source repository
You can find the files used to describe all the valid features and BSPs
in the Yocto Project kernel in any clone of the Yocto Project kernel source repository
Git tree.
For example, the following command clones the Yocto Project baseline kernel that
For example, the following command clones the Yocto Project baseline kernel that
branched off of <filename>linux.org</filename> version 3.4:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/linux-yocto-3.4
</literallayout>
For another example of how to set up a local Git repository of the Yocto Project
kernel files, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Yocto Project Kernel</ulink>" bulleted
kernel files, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Yocto Project Kernel</ulink>" bulleted
item in the Yocto Project Development Manual.
</para>
<para>
Once you have cloned the kernel Git repository on your local machine, you can
<para>
Once you have cloned the kernel Git repository on your local machine, you can
switch to the <filename>meta</filename> branch within the repository.
Here is an example that assumes the local Git repository for the kernel is in
Here is an example that assumes the local Git repository for the kernel is in
a top-level directory named <filename>linux-yocto-3.4</filename>:
<literallayout class='monospaced'>
$ cd ~/linux-yocto-3.4
$ git checkout -b meta origin/meta
</literallayout>
Once you have checked out and switched to the <filename>meta</filename> branch,
you can see a snapshot of all the kernel configuration and feature descriptions that are
you can see a snapshot of all the kernel configuration and feature descriptions that are
used to build that particular kernel repository.
These descriptions are in the form of <filename>.scc</filename> files.
These descriptions are in the form of <filename>.scc</filename> files.
</para>
<para>
You should realize, however, that browsing your local kernel repository
for feature descriptions and patches is not an effective way to determine what is in a
particular kernel branch.
particular kernel branch.
Instead, you should use Git directly to discover the changes in a branch.
Using Git is an efficient and flexible way to inspect changes to the kernel.
Using Git is an efficient and flexible way to inspect changes to the kernel.
For examples showing how to use Git to inspect kernel commits, see the following sections
in this chapter.
<note>
Ground up reconstruction of the complete kernel tree is an action only taken by the
Yocto Project team during an active development cycle.
When you create a clone of the kernel Git repository, you are simply making it
Ground up reconstruction of the complete kernel tree is an action only taken by the
Yocto Project team during an active development cycle.
When you create a clone of the kernel Git repository, you are simply making it
efficiently available for building and development.
</note>
</para>
<para>
The following steps describe what happens when the Yocto Project Team constructs
the Yocto Project kernel source Git repository (or tree) found at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> given the
introduction of a new top-level kernel feature or BSP.
These are the actions that effectively create the tree
the Yocto Project kernel source Git repository (or tree) found at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> given the
introduction of a new top-level kernel feature or BSP.
These are the actions that effectively create the tree
that includes the new feature, patch or BSP:
<orderedlist>
<listitem><para>A top-level kernel feature is passed to the kernel build subsystem.
@@ -103,7 +103,7 @@
<listitem><para>Areas pointed to by <filename>SRC_URI</filename> statements
found in recipes</para></listitem>
</itemizedlist>
For a typical build, the target of the search is a
For a typical build, the target of the search is a
feature description in an <filename>.scc</filename> file
whose name follows this format:
<literallayout class='monospaced'>
@@ -113,19 +113,19 @@
<listitem><para>Once located, the feature description is either compiled into a simple script
of actions, or into an existing equivalent script that is already part of the
shipped kernel.</para></listitem>
<listitem><para>Extra features are appended to the top-level feature description.
These features can come from the
<listitem><para>Extra features are appended to the top-level feature description.
These features can come from the
<ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_FEATURES'><filename>KERNEL_FEATURES</filename></ulink>
variable in recipes.</para></listitem>
<listitem><para>Each extra feature is located, compiled and appended to the script
<listitem><para>Each extra feature is located, compiled and appended to the script
as described in step three.</para></listitem>
<listitem><para>The script is executed to produce a series of <filename>meta-*</filename>
directories.
directories.
These directories are descriptions of all the branches, tags, patches and configurations that
need to be applied to the base Git repository to completely create the
source (build) branch for the new BSP or feature.</para></listitem>
<listitem><para>The base repository is cloned, and the actions
listed in the <filename>meta-*</filename> directories are applied to the
listed in the <filename>meta-*</filename> directories are applied to the
tree.</para></listitem>
<listitem><para>The Git repository is left with the desired branch checked out and any
required branching, patching and tagging has been performed.</para></listitem>
@@ -133,17 +133,17 @@
</para>
<para>
The kernel tree is now ready for developer consumption to be locally cloned,
configured, and built into a Yocto Project kernel specific to some target hardware.
<note><para>The generated <filename>meta-*</filename> directories add to the kernel
as shipped with the Yocto Project release.
Any add-ons and configuration data are applied to the end of an existing branch.
The full repository generation that is found in the
configured, and built into a Yocto Project kernel specific to some target hardware.
<note><para>The generated <filename>meta-*</filename> directories add to the kernel
as shipped with the Yocto Project release.
Any add-ons and configuration data are applied to the end of an existing branch.
The full repository generation that is found in the
official Yocto Project kernel repositories at
<ulink url='&YOCTO_GIT_URL;/cgit.cgi'>http://git.yoctoproject.org/cgit.cgi</ulink>
is the combination of all supported boards and configurations.</para>
<para>The technique the Yocto Project team uses is flexible and allows for seamless
blending of an immutable history with additional patches specific to a
deployment.
<para>The technique the Yocto Project team uses is flexible and allows for seamless
blending of an immutable history with additional patches specific to a
deployment.
Any additions to the kernel become an integrated part of the branches.</para>
</note>
</para>
@@ -152,15 +152,16 @@
<section id='build-strategy'>
<title>Build Strategy</title>
<para>
Once a local Git repository of the Yocto Project kernel exists on a development system,
Once a local Git repository of the Yocto Project kernel exists on a development system,
you can consider the compilation phase of kernel development - building a kernel image.
Some prerequisites exist that are validated by the build process before compilation
starts:
</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'>
@@ -170,22 +171,22 @@
<para>
The OpenEmbedded build system makes sure these conditions exist before attempting compilation.
Other means, however, do exist, such as as bootstrapping a BSP, see
Other means, however, do exist, such as as bootstrapping a BSP, see
the "<link linkend='workflow-examples'>Workflow Examples</link>".
</para>
<para>
Before building a kernel, the build process verifies the tree
Before building a kernel, the build process verifies the tree
and configures the kernel by processing all of the
configuration "fragments" specified by feature descriptions in the <filename>.scc</filename>
files.
files.
As the features are compiled, associated kernel configuration fragments are noted
and recorded in the <filename>meta-*</filename> series of directories in their compilation order.
and recorded in the <filename>meta-*</filename> series of directories in their compilation order.
The fragments are migrated, pre-processed and passed to the Linux Kernel
Configuration subsystem (<filename>lkc</filename>) as raw input in the form
Configuration subsystem (<filename>lkc</filename>) as raw input in the form
of a <filename>.config</filename> file.
The <filename>lkc</filename> uses its own internal dependency constraints to do the final
processing of that information and generates the final <filename>.config</filename> file
processing of that information and generates the final <filename>.config</filename> file
that is used during compilation.
</para>
@@ -196,9 +197,9 @@
<para>
The other thing that you notice once you configure a kernel is that
the build process generates a build tree that is separate from your kernel's local Git
the build process generates a build tree that is separate from your kernel's local Git
source repository tree.
This build tree has a name that uses the following form, where
This build tree has a name that uses the following form, where
<filename>${MACHINE}</filename> is the metadata name of the machine (BSP) and "kernel_type" is one
of the Yocto Project supported kernel types (e.g. "standard"):
<literallayout class='monospaced'>
@@ -207,13 +208,13 @@
</para>
<para>
The existing support in the <filename>kernel.org</filename> tree achieves this
The existing support in the <filename>kernel.org</filename> tree achieves this
default functionality.
</para>
<para>
This behavior means that all the generated files for a particular machine or BSP are now in
the build tree directory.
This behavior means that all the generated files for a particular machine or BSP are now in
the build tree directory.
The files include the final <filename>.config</filename> file, all the <filename>.o</filename>
files, the <filename>.a</filename> files, and so forth.
Since each machine or BSP has its own separate build directory in its own separate branch
@@ -228,18 +229,18 @@
As previously noted, the Yocto Project kernel has built-in Git integration.
However, these utilities are not the only way to work with the kernel repository.
The Yocto Project has not made changes to Git or to other tools that
would invalidate alternate workflows.
Additionally, the way the kernel repository is constructed results in using
only core Git functionality, thus allowing any number of tools or front ends to use the
would invalidate alternate workflows.
Additionally, the way the kernel repository is constructed results in using
only core Git functionality, thus allowing any number of tools or front ends to use the
resulting tree.
</para>
<para>
This section contains several workflow examples.
Many of the examples use Git commands.
You can find Git documentation at
Many of the examples use Git commands.
You can find Git documentation at
<ulink url='http://git-scm.com/documentation'></ulink>.
You can find a simple overview of using Git with the Yocto Project in the
You can find a simple overview of using Git with the Yocto Project in the
"<ulink url='&YOCTO_DOCS_DEV_URL;#git'>Git</ulink>"
section of the Yocto Project Development Manual.
</para>
@@ -248,25 +249,25 @@
<title>Change Inspection: Kernel Changes/Commits</title>
<para>
A common question when working with a BSP or kernel is:
A common question when working with a BSP or kernel is:
"What changes have been applied to this tree?"
</para>
<para>
In projects that have a collection of directories that
contain patches to the kernel, it is possible to inspect or "grep" the contents
of the directories to get a general feel for the changes.
contain patches to the kernel, it is possible to inspect or "grep" the contents
of the directories to get a general feel for the changes.
This sort of patch inspection is not an efficient way to determine what has been done to the
kernel.
The reason it is inefficient is because there are many optional patches that are
The reason it is inefficient is because there are many optional patches that are
selected based on the kernel type and the feature description.
Additionally, patches could exist in directories that are not included in the search.
</para>
<para>
A more efficient way to determine what has changed in the kernel is to use
Git and inspect or search the kernel tree.
This method gives you a full view of not only the source code modifications,
Git and inspect or search the kernel tree.
This method gives you a full view of not only the source code modifications,
but also provides the reasons for the changes.
</para>
@@ -276,11 +277,11 @@
<para>
Following are a few examples that show how to use Git to examine changes.
Because the Yocto Project Git repository does not break existing Git
functionality and because there exists many permutations of these types of
functionality and because there exists many permutations of these types of
commands, there are many more methods to discover changes.
<note>
Unless you provide a commit range
(&lt;kernel-type&gt;..&lt;bsp&gt;-&lt;kernel-type&gt;), <filename>kernel.org</filename> history
Unless you provide a commit range
(&lt;kernel-type&gt;..&lt;bsp&gt;-&lt;kernel-type&gt;), <filename>kernel.org</filename> history
is blended with Yocto Project changes.
</note>
<literallayout class='monospaced'>
@@ -300,27 +301,27 @@
# determine the change history of a particular file
&gt; git whatchanged &lt;path to file&gt;
# determine the commits which touch each line in a file
&gt; git blame &lt;path to file&gt;
</literallayout>
</para>
</section>
<section id='show-a-particular-feature-or-branch-change'>
<title>Show a Particular Feature or Branch Change</title>
<para>
Developers use tags in the Yocto Project kernel tree to divide changes for significant
features or branches.
Once you know a particular tag, you can use Git commands
Developers use tags in the Yocto Project kernel tree to divide changes for significant
features or branches.
Once you know a particular tag, you can use Git commands
to show changes associated with the tag and find the branches that contain
the feature.
the feature.
<note>
Because BSP branch, <filename>kernel.org</filename>, and feature tags are all
Because BSP branch, <filename>kernel.org</filename>, and feature tags are all
present, there could be many tags.
</note>
The <filename>git show &lt;tag&gt;</filename> command shows changes that are tagged by
The <filename>git show &lt;tag&gt;</filename> command shows changes that are tagged by
a feature.
Here is an example that shows changes tagged by the <filename>systemtap</filename>
feature:
@@ -338,7 +339,7 @@
<para>
You can use many other comparisons to isolate BSP and kernel changes.
For example, you can compare against <filename>kernel.org</filename> tags
For example, you can compare against <filename>kernel.org</filename> tags
such as the <filename>v3.4</filename> tag.
</para>
</section>
@@ -349,29 +350,29 @@
<para>
Another common operation is to build a BSP supplied by the Yocto Project, make some
changes, rebuild, and then test.
changes, rebuild, and then test.
Those local changes often need to be exported, shared or otherwise maintained.
</para>
<para>
Since the Yocto Project kernel source tree is backed by Git, this activity is
much easier as compared to with previous releases.
Because Git tracks file modifications, additions and deletions, it is easy
much easier as compared to with previous releases.
Because Git tracks file modifications, additions and deletions, it is easy
to modify the code and later realize that you need to save the changes.
It is also easy to determine what has changed.
It is also easy to determine what has changed.
This method also provides many tools to commit, undo and export those modifications.
</para>
<para>
This section and its sub-sections, describe general application of Git's
<filename>push</filename> and <filename>pull</filename> commands, which are used to
get your changes upstream or source your code from an upstream repository.
The Yocto Project provides scripts that help you work in a collaborative development
environment.
This section and its sub-sections, describe general application of Git's
<filename>push</filename> and <filename>pull</filename> commands, which are used to
get your changes upstream or source your code from an upstream repository.
The Yocto Project provides scripts that help you work in a collaborative development
environment.
For information on these scripts, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#pushing-a-change-upstream'>Using Scripts to Push a Change
Upstream and Request a Pull</ulink>" and
"<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-patch'>Using Email to Submit a Patch</ulink>"
"<ulink url='&YOCTO_DOCS_DEV_URL;#pushing-a-change-upstream'>Using Scripts to Push a Change
Upstream and Request a Pull</ulink>" and
"<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-patch'>Using Email to Submit a Patch</ulink>"
sections in the Yocto Project Development Manual.
</para>
@@ -379,7 +380,7 @@
There are many ways to save kernel modifications.
The technique employed
depends on the destination for the patches:
<itemizedlist>
<listitem><para>Bulk storage</para></listitem>
<listitem><para>Internal sharing either through patches or by using Git</para></listitem>
@@ -390,7 +391,7 @@
</para>
<para>
Because of the following list of issues, the destination of the patches also influences
Because of the following list of issues, the destination of the patches also influences
the method for gathering them:
<itemizedlist>
@@ -404,24 +405,24 @@
<title>Bulk Export</title>
<para>
This section describes how you can "bulk" export changes that have not
been separated or divided.
This situation works well when you are simply storing patches outside of the kernel
source repository, either permanently or temporarily, and you are not committing
This section describes how you can "bulk" export changes that have not
been separated or divided.
This situation works well when you are simply storing patches outside of the kernel
source repository, either permanently or temporarily, and you are not committing
incremental changes during development.
<note>
This technique is not appropriate for full integration of upstream submission
because changes are not properly divided and do not provide an avenue for per-change
commit messages.
Therefore, this example assumes that changes have not been committed incrementally
commit messages.
Therefore, this example assumes that changes have not been committed incrementally
during development and that you simply must gather and export them.
</note>
<literallayout class='monospaced'>
# bulk export of ALL modifications without separation or division
# of the changes
# of the changes
$ git add .
$ git commit -s -a -m &lt;msg&gt;
$ git commit -s -a -m &lt;msg&gt;
or
$ git commit -s -a # and interact with $EDITOR
</literallayout>
@@ -446,8 +447,8 @@
<para>
This section describes how to save modifications when you are making incremental
commits or practicing planned sharing.
The examples in this section assume that you have incrementally committed
changes to the tree during development and now need to export them.
The examples in this section assume that you have incrementally committed
changes to the tree during development and now need to export them.
The sections that follow
describe how you can export your changes internally through either patches or by
using Git commands.
@@ -455,7 +456,7 @@
<para>
During development, the following commands are of interest.
For full Git documentation, refer to the Git documentation at
For full Git documentation, refer to the Git documentation at
<ulink url='http://github.com'></ulink>.
<literallayout class='monospaced'>
@@ -475,15 +476,15 @@
</para>
<para>
Distributed development with Git is possible when you use a universally
Distributed development with Git is possible when you use a universally
agreed-upon unique commit identifier (set by the creator of the commit) that maps to a
specific change set with a specific parent.
specific change set with a specific parent.
This identifier is created for you when
you create a commit, and is re-created when you amend, alter or re-apply
a commit.
a commit.
As an individual in isolation, this is of no interest.
However, if you
intend to share your tree with normal Git <filename>push</filename> and
intend to share your tree with normal Git <filename>push</filename> and
<filename>pull</filename> operations for
distributed development, you should consider the ramifications of changing a
commit that you have already shared with others.
@@ -491,7 +492,7 @@
<para>
Assuming that the changes have not been pushed upstream, or pulled into
another repository, you can update both the commit content and commit messages
another repository, you can update both the commit content and commit messages
associated with development by using the following commands:
<literallayout class='monospaced'>
@@ -501,7 +502,7 @@
</literallayout>
</para>
<para>
<para>
Again, assuming that the changes have not been pushed upstream, and that
no pending works-in-progress exist (use <filename>git status</filename> to check), then
you can revert (undo) commits by using the following commands:
@@ -520,12 +521,12 @@
<para>
You can create branches, "cherry-pick" changes, or perform any number of Git
operations until the commits are in good order for pushing upstream
or for pull requests.
After a <filename>push</filename> or <filename>pull</filename> command,
or for pull requests.
After a <filename>push</filename> or <filename>pull</filename> command,
commits are normally considered
"permanent" and you should not modify them.
If the commits need to be changed, you can incrementally do so with new commits.
These practices follow standard Git workflow and the <filename>kernel.org</filename> best
These practices follow standard Git workflow and the <filename>kernel.org</filename> best
practices, which is recommended.
<note>
It is recommended to tag or branch before adding changes to a Yocto Project
@@ -534,26 +535,26 @@
reference point to facilitate locating and exporting local changes.
</note>
</para>
<section id='export-internally-via-patches'>
<title>Exporting Changes Internally by Using Patches</title>
<para>
This section describes how you can extract committed changes from a working directory
by exporting them as patches.
Once the changes have been extracted, you can use the patches for upstream submission,
Once the changes have been extracted, you can use the patches for upstream submission,
place them in a Yocto Project template for automatic kernel patching,
or apply them in many other common uses.
</para>
<para>
This example shows how to create a directory with sequentially numbered patches.
Once the directory is created, you can apply it to a repository using the
<filename>git am</filename> command to reproduce the original commit and all
Once the directory is created, you can apply it to a repository using the
<filename>git am</filename> command to reproduce the original commit and all
the related information such as author, date, commit log, and so forth.
<note>
The new commit identifiers (ID) will be generated upon re-application.
This action reflects that the commit is now applied to an underlying commit
The new commit identifiers (ID) will be generated upon re-application.
This action reflects that the commit is now applied to an underlying commit
with a different ID.
</note>
<literallayout class='monospaced'>
@@ -580,19 +581,19 @@
$ git format-patch -o &lt;save dir&gt; &lt;commit id&gt;
$ git format-patch -o &lt;save dir&gt; &lt;rev-list&gt;
</literallayout>
</para>
</section>
</para>
</section>
<section id='export-internally-via-git'>
<title>Exporting Changes Internally by Using Git</title>
<para>
This section describes how you can export changes from a working directory
This section describes how you can export changes from a working directory
by pushing the changes into a master repository or by making a pull request.
Once you have pushed the changes to the master repository, you can then
Once you have pushed the changes to the master repository, you can then
pull those same changes into a new kernel build at a later time.
</para>
<para>
Use this command form to push the changes:
<literallayout class='monospaced'>
@@ -603,7 +604,7 @@
<para>
For example, the following command pushes the changes from your local branch
<filename>yocto/standard/common-pc/base</filename> to the remote branch with the same name
<filename>yocto/standard/common-pc/base</filename> to the remote branch with the same name
in the master repository <filename>//git.mycompany.com/pub/git/kernel-3.4</filename>.
<literallayout class='monospaced'>
$ git push ssh://git.mycompany.com/pub/git/kernel-3.4 \
@@ -612,7 +613,7 @@
</para>
<para>
A pull request entails using the <filename>git request-pull</filename> command to compose
A pull request entails using the <filename>git request-pull</filename> command to compose
an email to the
maintainer requesting that a branch be pulled into the master repository, see
<ulink url='http://github.com/guides/pull-requests'></ulink> for an example.
@@ -621,7 +622,7 @@
changes, but are not covered in this document.
</note>
</para>
</section>
</section>
</section>
<section id='export-for-external-upstream-submission'>
@@ -635,12 +636,12 @@
This method allows easy review and integration of the changes.
<note>
Before sending patches for review be sure you understand the
community standards for submitting and documenting changes and follow their best practices.
community standards for submitting and documenting changes and follow their best practices.
For example, kernel patches should follow standards such as:
<itemizedlist>
<listitem><para>
<ulink url='http://linux.yyz.us/patch-format.html'></ulink></para></listitem>
<listitem><para>Documentation/SubmittingPatches (in any linux
<listitem><para>Documentation/SubmittingPatches (in any linux
kernel source tree)</para></listitem>
</itemizedlist>
</note>
@@ -650,30 +651,30 @@
The messages used to commit changes are a large part of these standards.
Consequently, be sure that the headers for each commit have the required information.
For information on how to follow the Yocto Project commit message standards, see the
"<ulink url='&YOCTO_DOCS_DEV_URL;#how-to-submit-a-change'>How to Submit a
"<ulink url='&YOCTO_DOCS_DEV_URL;#how-to-submit-a-change'>How to Submit a
Change</ulink>" section in the Yocto Project Development Manual.
</para>
<para>
If the initial commits were not properly documented or do not meet those standards,
you can re-base by using the <filename>git rebase -i</filename> command to
you can re-base by using the <filename>git rebase -i</filename> command to
manipulate the commits and
get them into the required format.
get them into the required format.
Other techniques such as branching and cherry-picking commits are also viable options.
</para>
<para>
Once you complete the commits, you can generate the email that sends the patches
to the maintainer(s) or lists that review and integrate changes.
The command <filename>git send-email</filename> is commonly used to ensure
that patches are properly
Once you complete the commits, you can generate the email that sends the patches
to the maintainer(s) or lists that review and integrate changes.
The command <filename>git send-email</filename> is commonly used to ensure
that patches are properly
formatted for easy application and avoid mailer-induced patch damage.
</para>
<para>
The following is an example of dumping patches for external submission:
<literallayout class='monospaced'>
# dump the last 4 commits
# dump the last 4 commits
$ git format-patch --thread -n -o ~/rr/ HEAD^^^^
$ git send-email --compose --subject '[RFC 0/N] &lt;patch series summary&gt;' \
--to foo@yoctoproject.org --to bar@yoctoproject.org \
@@ -689,17 +690,17 @@
<para>
When you want to export changes for import into another
Source Code Manager (SCM), you can use any of the previously discussed
Source Code Manager (SCM), you can use any of the previously discussed
techniques.
However, if the patches are manually applied to a secondary tree and then
that tree is checked into the SCM, you can lose change information such as
However, if the patches are manually applied to a secondary tree and then
that tree is checked into the SCM, you can lose change information such as
commit logs.
This process is not recommended.
</para>
<para>
Many SCMs can directly import Git commits, or can translate Git patches so that
information is not lost.
information is not lost.
Those facilities are SCM-dependent and you should use them whenever possible.
</para>
</section>
@@ -709,15 +710,15 @@
<title>Working with the Yocto Project Kernel in Another SCM</title>
<para>
This section describes kernel development in an SCM other than Git,
This section describes kernel development in an SCM other than Git,
which is not the same as exporting changes to another SCM described earlier.
For this scenario, you use the OpenEmbedded build system to
For this scenario, you use the OpenEmbedded build system to
develop the kernel in a different SCM.
The following must be true for you to accomplish this:
<itemizedlist>
<listitem><para>The delivered Yocto Project kernel must be exported into the second
SCM.</para></listitem>
<listitem><para>Development must be exported from that secondary SCM into a
<listitem><para>Development must be exported from that secondary SCM into a
format that can be used by the OpenEmbedded build system.</para></listitem>
</itemizedlist>
</para>
@@ -727,7 +728,7 @@
<para>
Depending on the SCM, it might be possible to export the entire Yocto Project
kernel Git repository, branches and all, into a new environment.
kernel Git repository, branches and all, into a new environment.
This method is preferred because it has the most flexibility and potential to maintain
the meta data associated with each commit.
</para>
@@ -749,11 +750,11 @@
</para>
<para>
You could now relocate the CVS repository and use it in a centralized manner.
You could now relocate the CVS repository and use it in a centralized manner.
</para>
<para>
The following commands illustrate how you can condense and merge two BSPs into a
The following commands illustrate how you can condense and merge two BSPs into a
second SCM:
<literallayout class='monospaced'>
$ git checkout yocto/standard/common-pc/base
@@ -767,7 +768,7 @@
<section id='importing-changes-for-build'>
<title>Importing Changes for the Build</title>
<para>
Once development has reached a suitable point in the second development
environment, you need to export the changes as patches.
@@ -781,12 +782,12 @@
<title>Creating a BSP Based on an Existing Similar BSP</title>
<para>
This section overviews the process of creating a BSP based on an
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
The information is introductory in nature and does not provide step-by-step examples.
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,42 +795,43 @@
<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
already supported and exists in the Yocto Project.
Starting with something as close as possible to your board makes developing
your BSP easier.
You can find all the BSPs that are supported and ship with the Yocto Project
on the Yocto Project's Download page at
Try to map your board features as closely to the features of a BSP that is
already supported and exists in the Yocto Project.
Starting with something as close as possible to your board makes developing
your BSP easier.
You can find all the BSPs that are supported and ship with the Yocto Project
on the Yocto Project's Download page at
<ulink url='&YOCTO_HOME_URL;/download'></ulink>.</para></listitem>
<listitem><para><emphasis>Be sure you have the Base BSP:</emphasis>
You need to either have a local Git repository of the base BSP set up or
You need to either have a local Git repository of the base BSP set up or
have downloaded and extracted the files from a release BSP tarball.
Either method gives you access to the BSP source files.</para></listitem>
<listitem><para><emphasis>Make a copy of the existing BSP, thus isolating your new
<listitem><para><emphasis>Make a copy of the existing BSP, thus isolating your new
BSP work:</emphasis>
Copying the existing BSP file structure gives you a new area in which to work.</para></listitem>
<listitem><para><emphasis>Make configuration and recipe changes to your new BSP:</emphasis>
Configuration changes involve the files in the BSP's <filename>conf</filename>
directory.
Changes include creating a machine-specific configuration file and editing the
<filename>layer.conf</filename> file.
directory.
Changes include creating a machine-specific configuration file and editing the
<filename>layer.conf</filename> file.
The configuration changes identify the kernel you will be using.
Recipe changes include removing, modifying, or adding new recipe files that
Recipe changes include removing, modifying, or adding new recipe files that
instruct the build process on what features to include in the image.</para></listitem>
<listitem><para><emphasis>Prepare for the build:</emphasis>
Before you actually initiate the build, you need to set up the build environment
by sourcing the environment initialization script.
After setting up the environment, you need to make some build configuration
by sourcing the environment initialization script.
After setting up the environment, you need to make some build configuration
changes to the <filename>local.conf</filename> and <filename>bblayers.conf</filename>
files.</para></listitem>
<listitem><para><emphasis>Build the image:</emphasis>
The OpenEmbedded build system uses BitBake to create the image.
You need to decide on the type of image you are going to build (e.g. minimal, base,
The OpenEmbedded build system uses BitBake to create the image.
You need to decide on the type of image you are going to build (e.g. minimal, base,
core, sato, and so forth) and then start the build using the <filename>bitbake</filename>
command.</para></listitem>
</orderedlist>
@@ -849,8 +851,8 @@
</para>
<para>
You can use the above Git command to report modified, removed, or added files.
You should commit those changes to the tree regardless of whether they will be saved,
You can use the above Git command to report modified, removed, or added files.
You should commit those changes to the tree regardless of whether they will be saved,
exported, or used.
Once you commit the changes you need to rebuild the kernel.
</para>

View File

@@ -2,7 +2,7 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<book id='kernel-manual' lang='en'
<book id='kernel-manual' lang='en'
xmlns:xi="http://www.w3.org/2003/XInclude"
xmlns="http://docbook.org/ns/docbook"
>
@@ -10,13 +10,13 @@
<mediaobject>
<imageobject>
<imagedata fileref='figures/kernel-title.png'
format='SVG'
<imagedata fileref='figures/kernel-title.png'
format='SVG'
align='left' scalefit='1' width='100%'/>
</imageobject>
</imageobject>
</mediaobject>
<title></title>
<title></title>
<authorgroup>
<author>
@@ -56,9 +56,14 @@
</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>
<revision>
<revnumber>1.4</revnumber>
<date>Sometime in 2013</date>
<revremark>Released with the Yocto Project 1.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -68,7 +73,7 @@
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this document under
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note>
@@ -94,6 +99,6 @@
-->
</book>
<!--
vim: expandtab tw=80 ts=4
<!--
vim: expandtab tw=80 ts=4
-->

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Some files were not shown because too many files have changed in this diff Show More