Compare commits

...

895 Commits
1.8_M3 ... fido

Author SHA1 Message Date
Daniel Lublin
8763191981 bitbake: lib/bs4: Fix imports from html5lib >= 0.9999999/1.0b8
As of html5lib 0.9999999/1.0b8 (released on July 14, 2016), some modules
have moved from _base to base. Handle this, while staying compatible
with earlier versions.

(Bitbake rev: edd90cd858da5da564e9849ebc0849a8a8173d4f)

Signed-off-by: Daniel Lublin <daniel@lublin.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-28 12:56:38 +01:00
Scott Rifenbark
ea6d21066a bitbake: bitbake-user-manual: Fixed porno hack for hello world example
Someone hacked the http://hambedded site or it was moved and some
links to that site in the BB manual had been hijacked to point to
an entry portal for a pornography site.  Replaced the link with an
archived version that restores the integrity of the links.

(Bitbake rev: e42c645955e972e75f979a33f26cc33ddd61315a)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-17 22:32:46 +00:00
Roy Li
c53ddb2006 systemd: re-enable mount propagation for udevd
With MountFlags=slave, those mounts then become private to the systemd-udevd
namespace and are no longer accessible from outside the namespace, which is
not expected

[YOCTO #8613]

(From OE-Core rev: 73f43d857fe0102033f25491007b6dbe3d5fa8ee)

(From OE-Core rev: f9c35dfc6601901664dbef2cba3a9b96bef96e64)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f2092e67ea)
Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-05 17:21:36 +00:00
Richard Purdie
c9f0a99050 build-appliance-image: Update to fido head revision
(From OE-Core rev: 511ea0fcc9c238ad8e3b3089ec2bcf82bb1ecc77)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-12 13:14:51 +01:00
Joshua Lock
e6b06016bc openssl: prevent ABI break from earlier fido releases
The backported upgrade to 1.0.2h included an updated GNU LD
version-script which results in an ABI change. In order to try and
respect ABI for existing binaries built against fido this commit
partially reverts the version-script to maintain the existing ABI
and instead only add the new symbols required by 1.0.2h.

Suggested-by: Martin Jansa <martin.jansa@gmail.com>
(From OE-Core rev: 480db6be99f9a53d8657b31b846f0079ee1a124f)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-12 13:14:42 +01:00
Ross Burton
740a2d817a conf/local.conf.sample: comment out ASSUME_PROVIDED=libsdl-native
Ubuntu 15.10 and Debian testing can't build qemu-native against the host libsdl.
Now that libsdl-native is buildable, comment out the ASSUME_PROVIDED which meant
it wouldn't be used.

[ YOCTO #8553 ]

(From meta-yocto master rev: 759accbfca46de058ce402938713189dab22a70c)

(From meta-yocto rev: aa4ad74c23b283f545a0f9f1ee57635fbe1a1dc6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-12 10:59:11 +01:00
Richard Purdie
5aed3ebfc1 build-appliance-image: Update to fido head revision
(From OE-Core rev: e7c46ce3e59cb4fd770e76ae006c0166d0dd5265)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-11 18:00:19 +01:00
Robert Yang
3cea047b6c openssl: 1.0.2d -> 1.0.2h (mainly for CVEs)
* CVEs:
  - CVE-2016-0705
  - CVE-2016-0798
  - CVE-2016-0797
  - CVE-2016-0799
  - CVE-2016-0702
  - CVE-2016-0703
  - CVE-2016-0704
  - CVE-2016-2105
  - CVE-2016-2106
  - CVE-2016-2109
  - CVE-2016-2176

* The LICENSE's checksum is changed because of date changes (2011 ->
  2016), the contents are the same.

* Remove backport patches
  - 0001-Add-test-for-CVE-2015-3194.patch
  - CVE-2015-3193-bn-asm-x86_64-mont5.pl-fix-carry-propagating-bug-CVE.patch
  - CVE-2015-3194-1-Add-PSS-parameter-check.patch
  - CVE-2015-3195-Fix-leak-with-ASN.1-combine.patch
  - CVE-2015-3197.patch
  - CVE-2016-0701_1.patch
  - CVE-2016-0701_2.patch
  - CVE-2016-0800.patch
  - CVE-2016-0800_2.patch
  - CVE-2016-0800_3.patch

* Update crypto_use_bigint_in_x86-64_perl.patch

* Add version-script.patch and update block_diginotar.patch (From master branch)

* Update openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch
  (From Armin)

(From OE-Core master rev: bca156013af0a98cb18d8156626b9acc8f9883e3)

(From OE-Core rev: 6ed7c8a9f82bc173ae0cc8b494af5a2c838f08fc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-11 18:00:11 +01:00
Paul Eggleton
8463c06290 bitbake: tests/fetch: ensure fetch tests preserve current dir
The fetcher calls os.chdir() in a number of places, which can affect
other tests (since the directory it changes into gets deleted) - let's
just put the current directory back to where it was when we're done.

(This fixes bb.tests.Path.test_unsafe_delete_path failing if it was run
as part of a full bitbake-selftest run, where the fetcher tests get to
run before it.)

(Bitbake rev: fdb6c123593fd2255b9b09e6bdf7306d64a82892)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 11:10:58 +01:00
Richard Purdie
4d03d1880f bitbake: bb/tests/fetch: Update cups url
Update the upstream url used for testing cups versions after upstream website
changes.

(Bitbake rev: 27ae1b39c400cf7edbd6902ff050a39147d64217)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 11:10:58 +01:00
Joshua Lock
9b9b8285be gtk+_2.24.25: backport a fix for building with newer host perl
This backports a patch from gtk+ upstream to prevent an issue when
building on Fedora 23 hosts.

(From OE-Core rev: fd27f8620ae4d95dfe07b27eee4256b0a128348a)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
3a4d269d39 tzdata: update to 2016d
Changes affecting future time stamps

America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
(Thanks to Alexander Krivenyshev for the heads-up.)

Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
(Thanks to Alexander Krivenyshev and Matt Johnson.)

New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
at 02:00.  (Thanks to Stepan Golosunov.)

Changes affecting past time stamps

New zone Europe/Kirov, split off from Europe/Volgograd.  It covers
Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
the same change.  (Thanks to Stepan Golosunov.)

Russia and nearby locations had daylight-saving transitions on
1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
1992-03-28 at 23:00 and 1992-09-26 at 23:00.  (Thanks to Stepan
Golosunov.)

Many corrections to historical time in Kazakhstan from 1991
through 2005.  (Thanks to Stepan Golosunov.)  Replace Kazakhstan's
invented time zone abbreviations with numeric abbreviations.

(From OE-Core rev: 80936e6c259923e19331678ca2f8aa40b79da5c2)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>

(From OE-Core master rev: 10194ca3d8c2f4d8648a685c5c239a33d944b6fe)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
e09c0fae90 tzcode: update to 2016d
they keep the versions in-sync. changes are all in data.

Changes affecting future time stamps

America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
(Thanks to Alexander Krivenyshev for the heads-up.)

Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
(Thanks to Alexander Krivenyshev and Matt Johnson.)

New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
at 02:00.  (Thanks to Stepan Golosunov.)

Changes affecting past time stamps

New zone Europe/Kirov, split off from Europe/Volgograd.  It covers
Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
the same change.  (Thanks to Stepan Golosunov.)

Russia and nearby locations had daylight-saving transitions on
1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
1992-03-28 at 23:00 and 1992-09-26 at 23:00.  (Thanks to Stepan
Golosunov.)

Many corrections to historical time in Kazakhstan from 1991
through 2005.  (Thanks to Stepan Golosunov.)  Replace Kazakhstan's
invented time zone abbreviations with numeric abbreviations.

(From OE-Core rev: a17a81991a10d6c61def5eb81687f57fc7ad87b0)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>

(From OE-Core master rev: db8223e4dd2e513a656aedfae217d94e053c2366)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
3167b4de2a tzcode: update to 2016c
(From OE-Core rev: 2dd4085180b5fca144b0e0b5ef149e291e796bf0)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: 41adb87c2f1aa20e51f1af3542d65c920eb94be6)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
dc77e99b27 tzdata: update to 2016c
The 2016c release of the tz code and data is available. Its most urgent change is for Asia/Baku, where the update takes effect this weekend.

This release reflects the following changes, which were either circulated on the tz mailing list or are relatively minor technical or administrative changes:

Changes affecting future time stamps

Azerbaijan no longer observes DST.  (Thanks to Steffen Thorsen.)

Chile reverts from permanent to seasonal DST.  (Thanks to Juan
Correa for the heads-up, and to Tim Parenti for corrections.)
Guess that future transitions are August's and May's second
Saturdays at 24:00 mainland time.  Also, call the period from
2014-09-07 through 2016-05-14 daylight saving time instead of
standard time, as that seems more appropriate now.

Changes affecting past time stamps

Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
+02/+03 on 1989-03-26, not 1991-03-31.  Europe/Volgograd changed
from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
(Thanks to Stepan Golosunov.)

Changes to commentary
Several updates and URLs for historical and proposed Russian changes.
(Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)

(From OE-Core rev: 770f1769df2930fdc57a3a7427b18e9b6ebe9dda)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: 66031bcf8cec2e8e7a6803f2c6cfc2c2ba071ffe)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
45e2a649ee tzcode: update to 2016b
change SRC_URI http seems more reliable

Changes to code

     tzselect's diagnostics and checking, and checktab.awk's checking,
     have been improved.  (Thanks to J William Piggott.)

     tzcode now builds under MinGW.  (Thanks to Ian Abbott and Esben Haabendal.)

     tzselect now tests Julian-date TZ settings more accurately.
     (Thanks to J William Piggott.)

Changes to commentary

     Comments in zone tables have been improved.  (Thanks to J William Piggott.)

     tzselect again limits its menu comments so that menus fit on a
     24x80 alphanumeric display.

     A new web page tz-how-to.html.  (Thanks to Bill Seymour.)

     In the Theory file, the description of possible time zone abbreviations in
     tzdata has been cleaned up, as the old description was unclear and
     inconsistent.  (Thanks to Alain Mouette for reporting the problem.)

(From OE-Core rev: 8598455b372931e88d4936f0ec0313540ec602a0)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: 0c4816c1f723951179988a274f236f28fe4db20f)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Armin Kuster
459a661ff5 tzdata: update to 2016b
updated SRC_URI to http as it seems more stable.

Changes affecting future time stamps

     New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
     Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
     2016-03-27 at 02:00 local time.  They need distinct zones since their
     post-1970 histories disagree.  New zone Asia/Barnaul for Altai Krai and
     Altai Republic, Russia, which will switch from +06 to +07 on the same date
     and local time.  Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27
     at 02:00.  (Thanks to Alexander Krivenyshev for the heads-up, and to
     Matt Johnson and Stepan Golosunov for followup.)

     As a trial of a new system that needs less information to be made up,
     the new zones use numeric time zone abbreviations like "+04"
     instead of invented abbreviations like "ASTT".

     Haiti will not observe DST in 2016.  (Thanks to Jean Antoine via
     Steffen Thorsen.)

     Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
     (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
     Saturday at 01:00, not March's last Friday at 24:00.

Changes affecting past time stamps

     Europe/Chisinau observed DST during 1990, and switched from +04 to
     +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
     (Thanks to Stepan Golosunov.)

     1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
     KUYT/KUYST.  (Thanks to Stepan Golosunov.)

(From OE-Core rev: 55eb60c513ac0125e7fdb697d171e4c6ab8883f8)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: d3ab7005f0c899da9f9f132b22861bd5d4f952ba)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Sona Sarmadi
a8ff4c8f42 bind: CVE-2016-1285 CVE-2016-1286
CVE-2016-1285 bind: malformed packet sent to rndc can trigger assertion failure
CVE-2016-1286 bind: malformed signature records for DNAME records can
trigger assertion failure

[YOCTO #9400]

External References:
https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-1285
https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-1286
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1285
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1286

References to the Upstream commits and Security Advisories:

CVE-2016-1285: https://kb.isc.org/article/AA-01352
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=patch;
h=31e4657cf246e41d4c5c890315cb6cf89a0db25a

CVE-2016-1286_1: https://kb.isc.org/article/AA-01353
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=patch;
h=76c3c9fe9f3f1353b47214b8f98b3d7f53e10bc7

CVE-2016-1286_2: https://kb.isc.org/article/AA-01353
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=patch;
h=ce3cd91caee698cb144e1350c6c78292c6be6339

(From OE-Core rev: e289df4daa4b90fb95ae3602c244cba9d56a8c2f)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Brad Mouring
0c49cef4a6 busybox_git: Fix SRCREV
The SRCREV in the busybox git recipe did not point to a commit ID
on the master branch. Point the variable to something reachable from
the master branch (which fixes this recipe's fetch()).

Suggested-by: Khem Raj <raj.khem@gmail.com>
(From OE-Core rev: b0720e996dde537d04a9129e7ffdc883836c3cf8)

Signed-off-by: Brad Mouring <brad.mouring@ni.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:34 +01:00
Brad Mouring
f5a7dd40ff busybox: Backport patch to fix zcip false-conflict
Busybox upstream fixed the issue where an incorrect comparison of
addresses led to bogus renegotiation of a new ll ip in 1.24. Backport
this change to 1.23.1.

(From OE-Core rev: 37f074eed40ec0e100066eeef16ff8af555e3301)

Signed-off-by: Brad Mouring <brad.mouring@ni.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Richard Purdie
1992a76b89 populate_sdk_base: Ensure PKGDATA_DIR exists
The code assumes that PKG_DATADIR exists and will fail if an image has not been
generated which creates it. This occurs when something like buildtools-tarball
is built which doesn't have target packages, only nativesdk ones.

Since this shouldn't be fatal, workaround this by creating the missing
directory.

(From OE-Core master rev: 319c5d55bb0c7e429766f46dd42a15e16a43c4dd)

(From OE-Core rev: d9ea863ff844ee1b84d4699b0d3af7245f3703c5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Richard Purdie
5d677d7dba scripts/oe-pkgdata-util: Fix variable name in error handling
Fix:
    logger.error('Unable to find pkgdata directory %s' % pkgdata_dir)
NameError: global name 'pkgdata_dir' is not defined

(From OE-Core master rev: a1202ed17e11400f08064c9065fdfa996554d4ad)

(From OE-Core rev: af95fa33067542fe6f253d57b6dda575ceea5527)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Ross Burton
dd90a73c51 xorg-lib: allow native building without x11 DISTRO_FEATURES
The Xorg libraries use REQUIRED_DISTRO_FEATURES to stop building on
distributions without the x11 feature but this stops people building native
tooling that uses libX11, such as libsdl-native.

(From OE-Core master rev: 161bb3409edee21827cf594cc011fe88185f1496)

(From OE-Core rev: 16b2e5a5af9fadbfe85a9f66be2896d1c7c3b72d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

libxcb change removed as it's not valid in fido
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Ross Burton
4a9e57795e base: check for existing prefix when expanding names in PACKAGECONFIG
When the DEPENDS are added as part of the PACKAGECONFIG logic the list of
packages are expanded so that any required nativesdk-/-native/multilib prefixes
and suffixes are added.

However the special handling of virtual/foo names doesn't check that the prefix
already exists, which breaks under nativesdk as in that situation there's an
explicit nativesdk- prefix *and* MLPREFIX is set to nativesdk-.  This results in
the same prefix being applied twice, and virtual packages such as virtual/libx11
ending up as virtual/nativesdk-nativesdk-libx11.

(From OE-Core master rev: 9e7d207e207bf0319b09d403d87d37f24e3dfbee)

(From OE-Core rev: af32a5d84e9aa300095ffb7d4626708e2f85e7a2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Ross Burton
ad7ea213b2 libsdl: expand PACKAGECONFIG and enable native builds
Use PACKAGECONFIG instead of using logic in DEPENDS and EXTRA_OECONF, adding new
options for PulseAudio, tslib, DirectFB, OpenGL and X11.  Pass
--disable-x11-shared so that it links to the X libraries instead of using
dlopen().

Disable tslib by default as the kernel event input subsystem is generally used.

SDL's OpenGL support requires X11 so check for both x11 and opengl, and merge
the dependencies.

Finally enable native builds, with a minimal PACKAGECONFIG that will build from
oe-core for native and nativesdk.

(From OE-Core master rev: 3d6c31c3a4ff34376e17005a981bb55fc6f7a38f)

(From OE-Core rev: c1b39f145b9e9f65875ec7b46030327741267031)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Robert Yang
2851c970ca libsdl: depends on libglu when both x11 and opengl
The libglu requires both opengl (depends on virtual/libgl) and x11
(needs libGL.so which is provided by mesa when x11 in DISTRO_FEATURES),
so let libsdl depends on libglu when both x11 and opengl in
DISTRO_FEATURES.

(From OE-Core master rev: b33e927096292f22f1bd9b2b0f633a6d645fc1eb)

(From OE-Core rev: 45a6ae4cf6b2684ee7e58b8a85f44eb0031fa2b4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Richard Purdie
fd394338ed testimage: Handle ipk/deb packaging format tests correctly
The default test list only works for rpm packaging. This fixes it for
deb and ipk too.

(From OE-Core master rev: 210c8926405fcf695ec00f5768f29ba198320d6a)

(From OE-Core rev: 961a9de0e918526bc8c880ea1d35db16b55f500a)

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>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Mariano Lopez
dad3b97a9a dhcp: CVE-2015-8605
ISC DHCP allows remote attackers to cause a denial of
service (application crash) via an invalid length field
in a UDP IPv4 packet.

(From OE-Core rev: 43f2cfdf63fb70e3c2da0224221dae63b05477df)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-09 08:11:33 +01:00
Richard Purdie
900d7d6b59 build-appliance-image: Update to fido head revision
(From OE-Core rev: 1ebf604cae8d9bd3d2c10d06cd126e79e13732ee)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-13 10:52:43 +00:00
Richard Purdie
3d61b942f7 poky.conf: Bump version for 1.8.2 fido release
(From meta-yocto rev: 16d067de9a9682e93b30726b74078a1c4366a015)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-13 10:52:11 +00:00
Richard Purdie
a4f91cb18b build-appliance-image: Update to fido head revision
(From OE-Core rev: aba91bb6e2b748f05051bf824531e4f283eb5f09)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-12 15:15:52 +00:00
Scott Rifenbark
bf9e5d6ef6 documentation: Final bits for the 1.8.2 manual set
Changes include:

 * Updating all the Manual revision history tables for 1.8.2
 * Updating the poky.ent file with new variable values for 1.8.2
 * Updating the mega-manual.sed file so good links are generated
   for the mega-manual

(From yocto-docs rev: d77321f4bef95c48d1df8b671418ebb4fa68bd66)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-11 23:05:50 +00:00
ngutzmann
be0c978fa1 nettle: The variable named p in the patch file was incorrectly named.
The variable in question should have been called ecc->p. The patch has been
updated so that the compilation of the nettle recipe would complete
successfully. The backport originated from this commit

c71d2c9d20

(From OE-Core rev: 7f4d3b90840a14d660a56d23e1fe79f4fb633d59)

Signed-off-by: ngutzmann <nathangutzmann@gmail.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-11 10:56:02 +00:00
Armin Kuster
dbb46510cc openssl: Security fix CVE-2016-0800
CVE-2016-0800 SSL/TLS: Cross-protocol attack on TLS using SSLv2 (DROWN)

https://www.openssl.org/news/secadv/20160301.txt

(From OE-Core rev: 6c06c42594539bec4c360c8cc28ebee8a338e6b4)

Signed-off-by: Armin Kuster <akuster@mvista.com>

Not required for master, an update to 1.0.2g has been submitted.
Backport from jethro.
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Hongxu Jia
7d663e9c47 wpa-supplicant: Fix CVE-2015-8041
Backport patch from http://w1.fi/security/2015-5/
and rebase for wpa-supplicant 2.4

(From OE-Core rev: 12520d7f729fe3d07c2f94b813994718edb2d987)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>

Not needed in master since the upgrade to 2.5
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
f98b8b767d git: Security fixes CVE-2015-7545
CVE-2015-7545 git: arbitrary code execution via crafted URLs

(From OE-Core rev: 0c4bdd61acbc1fa1b9bfb167d8eaf90c8bccc25c)

Signed-off-by: Armin Kuster <akuster@mvista.com>

Already in Jethro, not needed in master due to shipping a version of git
which is already fixes (> 2.6.1)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
3aa8ba185b nettle: Security fix CVE-2015-8804
(From OE-Core master rev: 7474c7dbf98c1a068bfd9b14627b604da5d79b67)

minor tweak to get x86_64/ecc-384-modp.asm to apply

(From OE-Core rev: d1903e264ab62d34daeb652c89c6fb67e7c9b42d)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
2250d4025b nettle: Security fix CVE-2015-8803 and CVE-2015-8805
(From OE-Core master rev: f62eb452244c3124cc88ef01c14116dac43f377a)

hand applied changes for ecc-256.c

(From OE-Core rev: cb03397ac97bfa99df6b72c80e1e03214e059e6e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
12cdd6d2b3 bind: Security fix CVE-2015-8461
CVE-2015-8461 bind: race condition when handling socket errors can lead to an assertion failure in resolver.c\

(From OE-Core master rev: 1656eaa722952861ec73362776bd0c4826aec3da)

Hand applied Changelog changes.

(From OE-Core rev: 104d050d420ee4aa14b772850742699b15d127d6)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Li Zhou
d4b6c1657b rpcbind: Security Advisory - rpcbind - CVE-2015-7236
rpcbind: Fix memory corruption in PMAP_CALLIT code

Use-after-free vulnerability in xprt_set_caller in rpcb_svc_com.c in
rpcbind 0.2.1 and earlier allows remote attackers to cause a denial of
service (daemon crash) via crafted packets, involving a PMAP_CALLIT
code.

The patch comes from
<http://www.openwall.com/lists/oss-security/2015/09/18/7>, and it hasn't
been in rpcbind upstream yet.

(From OE-Core master rev: cc4f62f3627f3804907e8ff9c68d9321979df32b)

(From OE-Core rev: 224bcc2ead676600bcd9e290ed23d9b2ed2f481e)

(From OE-Core rev: 16cf2f5386bc438dc20c4ae40de267618e9dc500)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
854c2e724d curl: Secuirty fix CVE-2016-0755
CVE-2016-0755 curl: NTLM credentials not-checked for proxy connection re-use

(From OE-Core master rev: 8322814c7f657f572d5c986652e708d6bd774378)

hand applied changed to url.c

(From OE-Core rev: e479ec9e6cbd34f3a7a56a170aaabcc4229f1959)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
8ca73f8fa4 curl: Security fix CVE-2016-0754
CVE-2016-0754 curl: remote file name path traversal in curl tool for Windows

(From OE-Core master rev: b2c9b48dea2fd968c307a809ff95f2e686435222)

minor tweak to tool_operate.c to get it to apply

(From OE-Core rev: b8df558ece47e51653e1fc0fb0637ec2cdf2907b)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
d25973e203 libgcrypt: Security fix CVE-2015-7511
CVE-2015-7511 libgcrypt: side-channel attack on ECDH with Weierstrass curves

affects libgcrypt < 1.6.5

adjust SRC_URI + for this version.

Patch 1 is a dependancy patch. simple macro name change.
Patch 2 is the cve fix.

(From OE-Core master rev: c691ce99bd2d249d6fdc4ad58300719488fea12c)

(From OE-Core rev: 88ba5ea3f3a421ac91d670e450f4b0645a53d733)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
e1a2fb6e85 libpng: Security fix CVE-2015-8472
libpng: Buffer overflow vulnerabilities in png_get_PLTE/png_set_PLTE functions

this patch fixes an incomplete patch in CVE-2015-8126

adjusted dir to match this version.

(From OE-Core master rev: f4a805702df691cbd2b80aa5f75d6adfb0f145eb)

(From OE-Core rev: bed289a9ac39fb9b613e3075d5a062b24c59c956)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:40 +00:00
Armin Kuster
fbe015523f libpng: Security fix CVE-2015-8126
libpng: Buffer overflow vulnerabilities in png_get_PLTE/png_set_PLTE functions

Adjusted dir location to match the version.

(From OE-Core master rev: d0a8313a03711ff881ad89b6cfc545f66a0bc018)

(From OE-Core rev: 20a1f80f554c2dc9da414c5846fb5bafd73e2cac)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
2f9a715583 gdk-pixbuf: Security fix CVE-2015-7674
CVE-2015-7674 Heap overflow with a gif file in gdk-pixbuf < 2.32.1

(From OE-Core master rev: f2b16d0f9c3ad67fdf63e9e41f42a6d54f1043e4)

(From OE-Core rev: 50602eebe1150819c320b6b611dcd792573eb55a)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
d192c62891 librsvg: Security fix CVE-2015-7558
CVE-2015-7558 librsvg2: Stack exhaustion causing DoS

including two supporting patches.

(From OE-Core master rev: 4945643bab1ee6b844115cc747e5c67d874d5fe6)

(From OE-Core rev: 4e21caee47a0ca3e66e84a15d104d3b532731263)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
34c865c7ba tiff: Security fix CVE-2015-8784
CVE-2015-8784 libtiff: out-of-bound write in NeXTDecode()

(From OE-Core master rev: 3e89477c8ad980fabd13694fa72a0be2e354bbe2)
minor tweak to get tif_next.c changes to apply.

(From OE-Core rev: 645255274769bfaeb737f66a6222a9a929823160)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
d9a3e4a5cf tiff: Security fix CVE-2015-8781
CVE-2015-8781 libtiff: out-of-bounds writes for invalid images

(From OE-Core master rev: 29c80024bdb67477dae47d8fb903feda2efe75d4)

minor tweek to get Changelog changes to apply

(From OE-Core rev: fa7fac56be40fdb519d426e9465436415e3f5527)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
83af960b7d foomatic-filters: Security fixes CVE-2015-8327
CVE-2015-8327 cups-filters: foomatic-rip did not consider the back tick as an illegal shell escape character

this time with the recipe changes.

(From OE-Core master rev: 62d6876033476592a8ca35f4e563c996120a687b)

(From OE-Core rev: 9ca5534b1d8ce71eb150964e11ce79ba79ced7e4)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
9a6a7150d9 foomatic-filters: Security fix CVE-2015-8560
CVE-2015-8560 cups-filters: foomatic-rip did not consider semicolon as illegal shell escape character

(From OE-Core master rev: 307056ce062bf4063f6effeb4c891c82c949c053)

(From OE-Core rev: 4f92365ebfb382509d152dfe6220e225193645f1)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
37905e7663 qemu: Security fix CVE-2016-2198
CVE-2016-2198 Qemu: usb: ehci null pointer dereference in ehci_caps_write

(From OE-Core master rev: 646a8cfa5398a22062541ba9c98539180ba85d58)

(From OE-Core rev: 082031bdd4b5c5d4acea816c95d94a731b7855c2)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-03 11:11:39 +00:00
Armin Kuster
06d9c89463 libbsd: Security fix CVE-2016-2090
CVE-2016-2090 Heap buffer overflow in fgetwln function of libbsd

affects libbsd <= 0.8.1 (and therefore not needed in master)

(From OE-Core rev: ab29efb8e85020a3621079c7fde217c1bfaa5289)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 11:03:10 +00:00
Joshua Lock
d7be819eed glibc: Security fix CVE-2015-7547
CVE-2015-7547: getaddrinfo() stack-based buffer overflow

(Based on OE-Core rev: cf754c5c806307d6eb522d4272b3cd7485f82420)

(From OE-Core rev: ed6299ab0970d836d6719795531458078ba4cbf6)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 11:03:10 +00:00
Markus Lehtonen
e6fca31dc0 kernel.bbclass: do not mv/link sources when externalsrc enabled
If externalsrc is enabled the 'do_unpack' task is run if the recipe has
some local source files. In the case of kernel recipe this caused the
(externalsrc) source tree to be moved/symlinked. This patch prevents the
behaviour, making sure the source tree is not moved around when
externalsrc is enabled. Instead of moving the source tree,
STAGING_KERNEL_DIR will be a symlink to it.

[YOCTO #6658]

(From OE-Core master rev: 8f6c564661a3801012eb2d9a98cdc99c91712367)

(From OE-Core rev: ca55a01908126c45120fc18e68e78f8f49ecf0ce)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 15:16:55 +00:00
Armin Kuster
b213ada9a7 libpcre: Security fixes and package update.
this is related to [Yocto # 9008]

8.38:
The following security fixes are included:
CVE-2015-3210 pcre: heap buffer overflow in pcre_compile2()  compile_regex()
CVE-2015-3217 pcre: stack overflow in match()
CVE-2015-5073 CVE-2015-8388 pcre: Buffer overflow caused by certain patterns with an unmatched closing parenthesis
CVE-2015-8380 pcre: Heap-based buffer overflow in pcre_exec
CVE-2015-8381 pcre: Heap Overflow in compile_regex()
CVE-2015-8383 pcre: Buffer overflow caused by repeated conditional group
CVE-2015-8384 pcre: Buffer overflow caused by recursive back reference by name within certain group
CVE-2015-8385 pcre: Buffer overflow caused by forward reference by name to certain group
CVE-2015-8386 pcre: Buffer overflow caused by lookbehind assertion
CVE-2015-8387 pcre: Integer overflow in subroutine calls
CVE-2015-8389 pcre: Infinite recursion in JIT compiler when processing certain patterns
CVE-2015-8390 pcre: Reading from uninitialized memory when processing certain patterns
CVE-2015-8392 pcre: Buffer overflow caused by certain patterns with duplicated named groups
CVE-2015-8393 pcre: Information leak when running pcgrep -q on crafted binary
CVE-2015-8394 pcre: Integer overflow caused by missing check for certain conditions
CVE-2015-8395 pcre: Buffer overflow caused by certain references
CVE-2016-1283 pcre: Heap buffer overflow in pcre_compile2 causes DoS

8.37:
The following security fixes are included:
CVE-2014-8964 pcre: incorrect handling of zero-repeat assertion conditions
CVE-2015-2325 pcre: heap buffer overflow in compile_branch()
CVE-2015-2326 pcre: heap buffer overflow in pcre_compile2()

LICENSE file changed do to Copyright date updates.

(From OE-Core rev: 3bbd53035fb62793f1e44b24b18eb275bd860ed1)

Signed-off-by: Armin Kuster <akuster@mvista.com>

Jethro and master don't require this patch as they have newer libpcre which
contains these fixes.

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 15:16:55 +00:00
Martin Jansa
2f1fc8c899 tzdata: remove 2015d version
* this is left-over from upgrade to 2016a

* it's safer to remove so that .bbappends in other layers really apply to version
  used in build (currently we have bbappend for 2015d and build will use 2016a
  without any warning

* the same problem was reported with 2015f upgrade:
  http://lists.openembedded.org/pipermail/openembedded-core/2015-August/109708.html

(From OE-Core rev: 6b0f0ed6b9ffc3e81b04cf442645130bb41b7ee9)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>

Not required by other branches as this is removing a leftover file in Fido
only.

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 15:16:54 +00:00
Mariano Lopez
c94eb07d53 rpmresolve.c: Fix unfreed pointers that keep DB opened
There are some unfreed rpmmi pointers in printDepList()
function; this happens when the package have null as
the requirement.

This patch fixes these unfreed pointers and add small
changes to keep consistency with some variables.

[YOCTO #8028]

(From OE-Core master rev: da7aa183f94adc1d0fff5bb81e827c584f9938ec)

(From OE-Core rev: 8821b0443b4b39b3bd4f41800a6fc809197fda82)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 15:16:54 +00:00
Armin Kuster
528bdf528d dpkg: Security fix CVE-2015-0860
CVE-2015-0860 dpkg: stack overflows and out of bounds read

(From OE-Core rev: 5aaec01acc9e5a19374a566307a425d43c887f4b)

(From OE-Core rev: 4dea3e7b9a0041e7359981e68c561e7de8ad3ae5)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:06 +00:00
Armin Kuster
db99f58eea bind: Security fix CVE-2015-8704
CVE-2015-8704 bind: specific APL data could trigger an INSIST in apl_42.c

(From OE-Core rev: 600c1d2beb64e23123e478051537b917f5d4a8a7)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:06 +00:00
Armin Kuster
092903a2ef libxml2: Security fix CVE-2015-8710
CVE-2015-8710 libxml2: out-of-bounds memory access when parsing an unclosed HTML comment

(From OE-Core rev: 03d481070ebc6f9af799aec5d038871f9c73901c)

(From OE-Core rev: d5db25213613cb862255047c0e995fd5489d9765)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:06 +00:00
Armin Kuster
c2f4fe8d0c libxml2: Security fix CVE-2015-8241
CVE-2015-8241 libxml2: Buffer overread with XML parser in xmlNextChar

(From OE-Core rev: f3c19a39cdec435f26a7f46a3432231ba4daa19c)

(From OE-Core rev: 428878a67fd723908af74c4881e933969f2928a7)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Paul Eggleton
ce70f38442 tzdata: reinstate changes reverted in 2014c upgrade
OE-Core commit 57af3fb9662106f0a65a1b4edf83e2398be0a8f1 upgraded tzdata
but also reverted a couple of changes to SUMMARY and LIC_FILES_CHKSUM.
Reinstate these (with an update to the README md5 value since that has
changed slightly, without any change to the licensing statements
within).

(From OE-Core rev: cea4f6b86129f84a99700207777929bf7e811ed6)

(From OE-Core rev: 37069c7511603f9fe33bcc48e38ac58ab89138f9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
f359ebd78d tzdata: update to 2016a
Changed LIC_CHKSUM_FILES to a new LICENSE  file.
Add BSD-3-clause to licenses

Changes affecting future time stamps

America/Cayman will not observe daylight saving this year after all.
Revert our guess that it would.  (Thanks to Matt Johnson.)

Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
(Thanks to Alexander Krivenyshev.)

Asia/Tehran now has DST predictions for the year 2038 and later,
to be March 21 00:00 to September 21 00:00.  This is likely better
than predicting no DST, albeit off by a day every now and then.

Changes affecting past and future time stamps

America/Metlakatla switched from PST all year to AKST/AKDT on
2015-11-01 at 02:00.  (Thanks to Steffen Thorsen.)

America/Santa_Isabel has been removed, and replaced with a
backward compatibility link to America/Tijuana.  Its contents were
apparently based on a misreading of Mexican legislation.

Changes affecting past time stamps
Asia/Karachi's two transition times in 2002 were off by a minute.
(Thanks to Matt Johnson.)

(From OE-Core rev: 790315dbd2dcb5b2024948ef412f32d2788cb6b5)

(From OE-Core rev: 6ebd2689f72b725c1ca493eae77d5a41386ee901)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
(cherry picked from commit 39e231cfabda8d75906c935d2a01f37df6121b84)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
5ddc177fdf tzcode: update to 2016a
Change LIC_CHKSUM_FILES to License. Some files are BSD clause 3

Changes affecting build procedure

An installer can now combine leap seconds with use of the backzone file,
e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
The old 'make posix_packrat' rule is now marked as obsolescent.
(Thanks to Ian Abbott for an initial implementation.)

Changes affecting documentation and commentary

A new file LICENSE makes it easier to see that the code and data
are mostly public-domain.  (Thanks to James Knight.) The three
non-public-domain files now use the current (3-clause) BSD license
instead of older versions of that license.

tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
on editing tz source files (with a mention of Sublime zoneinfo,
thanks to Gilmore Davidson).

The Theory and asia files now mention the 2015 book "The Global
Transformation of Time, 1870-1950", and cite a couple of reviews.

The America/Chicago entry now documents the informal use of US
central time in Fort Pierre, South Dakota.  (Thanks to Rick
McDermid, Matt Johnson, and Steve Jones.)

(From OE-Core rev: 1ee9072e16d96f95d07ec5a1f63888ce4730d60e)

(From OE-Core rev: 7d8a32361c45ab99c88bc65612327aa49cf3bd39)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
(cherry picked from commit b7f292b84eea202fb13730c11452ac1957e41cf0)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
3c686ae014 qemu: Security fix CVE-2015-7295
CVE-2015-7295 Qemu: net: virtio-net possible remote DoS

(From OE-Core rev: 74771f8c41aaede0ddfb86983c6841bd1f1c1f0f)

(From OE-Core rev: 3a7c84952d40f95b0f34bc35eef4490ecc8da07e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
27aeaab726 qemu: Security fix CVE-2016-1568
CVE-2016-1568 Qemu: ide: ahci use-after-free vulnerability in aio port commands

(From OE-Core rev: 166c19df8be28da255cc68032e2d11afc59d4197)

(From OE-Core rev: c2361dd9bb663b00dd194cb7fdb0e07d7e1ab5e1)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
94c26caff1 qemu: Security fix CVE-2015-8345
CVE-2015-8345 Qemu: net: eepro100: infinite loop in processing command block list

(From OE-Core rev: 99ffcd66895e4ba064542a1797057e45ec4d3220)

(From OE-Core rev: e51fc319b859f44be61822d93e0b72647a02f7c6)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
05f4812d15 qemu: Security fix CVE-2015-7512
CVE-2015-7512 Qemu: net: pcnet: buffer overflow in non-loopback mod

(From OE-Core rev: e6e9be51f77c9531f49cebe0ca6b495c23cf022d)

(From OE-Core rev: 90d2a8eb0853f506a457e9935f4354c71d2fc9c9)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:05 +00:00
Armin Kuster
caa104fd2a qemu: Security fix CVE-2015-7504
CVE-2015-7504 Qemu: net: pcnet: heap overflow vulnerability in loopback mode

(From OE-Core rev: b01b569d7d7e651a35fa38750462f13aeb64a2f3)

(From OE-Core rev: 10752d6beb5520ec0fc83a7d0173e10144b11685)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
73941fbc6a qemu: Security fix CVE-2015-8504
CVE-2015-8504 Qemu: ui: vnc: avoid floating point exception

(From OE-Core rev: c622bdd7133d31d7fbefe87fb38187f0aea4b592)

(From OE-Core rev: 38f102a9271896a49aa32aacf2c2be3a14f51493)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Wenzong Fan
4d3ce52194 subversion: fix CVE-2015-3187
The svn_repos_trace_node_locations function in Apache Subversion before
1.7.21 and 1.8.x before 1.8.14, when path-based authorization is used,
allows remote authenticated users to obtain sensitive path information
by reading the history of a node that has been moved from a hidden path.

Patch is from:
http://subversion.apache.org/security/CVE-2015-3187-advisory.txt

(From OE-Core master rev: 6da25614edcad30fdb4bea8ff47b81ff81cdaed2)

(From OE-Core rev: e1e277bf51c6f00268358f6bf8623261b1b9bc22)

(From OE-Core rev: b45dcbadc1a51188ac6dead855e14a181a7bccd9)

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Wenzong Fan
f0ecaf46bb subversion: fix CVE-2015-3184
mod_authz_svn in Apache Subversion 1.7.x before 1.7.21 and 1.8.x before
1.8.14, when using Apache httpd 2.4.x, does not properly restrict
anonymous access, which allows remote anonymous users to read hidden
files via the path name.

Patch is from:
http://subversion.apache.org/security/CVE-2015-3184-advisory.txt

(From OE-Core master rev: 29eb921ed074d86fa8d5b205a313eb3177473a63)

(From OE-Core rev: 7af7a3e692a6cd0d92768024efe32bfa7d83bc8f)

(From OE-Core rev: e4a1caecc5ae6b8488ec8ed7d303296af99146c0)

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
165fa6ce62 openssl: Security fix CVE-2016-0701
CVE-2016-0701 OpenSSL: DH small subgroups

(From OE-Core rev: c5868a7cd0a28c5800dfa4be1c9d98d3de08cd12)

(From OE-Core rev: 5e73d0e88c28ca1e948f5c463b9d9d1001251a42)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
1098a7bc0c openssl: Security fix CVE-2015-3197
CVE-2015-3197 OpenSSL: SSLv2 doesn't block disabled ciphers

(From OE-Core rev: b387d9b8dff8e2c572ca14f9628ab8298347fd4f)

(From OE-Core rev: c037cbdac6a0e871a60077703432c08be6d29677)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
e6d734904d glibc: CVE-2015-8776
it was found that out-of-range time values passed to the strftime function may
cause it to crash, leading to a denial of service, or potentially disclosure
information.

(From OE-Core rev: b9bc001ee834e4f8f756a2eaf2671aac3324b0ee)

(From OE-Core rev: 3527ba3be7cfdfd813f5ca495bc74db559a648cd)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
b03994fe3b glibc: CVE-2015-9761
A stack overflow vulnerability was found in nan* functions that could cause
applications which process long strings with the nan function to crash or,
potentially, execute arbitrary code.

(From OE-Core rev: fd3da8178c8c06b549dbc19ecec40e98ab934d49)

(From OE-Core rev: 6cb0465247195ec25ef1073e79997001380aa807)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:04 +00:00
Armin Kuster
ec05eebf8d glibc: CVE-2015-8779
A stack overflow vulnerability in the catopen function was found, causing
applications which pass long strings to the catopen function to crash or,
potentially execute arbitrary code.

(From OE-Core rev: af20e323932caba8883c91dac610e1ba2b3d4ab5)

(From OE-Core rev: 2e1c8cab3bc7b70e2a05dca20cb5bcec4335f04d)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:03 +00:00
Armin Kuster
7ff74d177c glibc: CVE-2015-8777
The process_envvars function in elf/rtld.c in the GNU C Library (aka glibc or
libc6) before 2.23 allows local users to bypass a pointer-guarding protection
mechanism via a zero value of the LD_POINTER_GUARD environment variable.

(From OE-Core rev: 22570ba08d7c6157aec58764c73b1134405b0252)

(From OE-Core rev: 9cc998978bd67bc5569cc1478f4ddee40020b929)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-07 17:23:03 +00:00
Armin Kuster
9845a542a7 openssh: CVE-2016-077x
this address two CVE's.
CVE-2016-0777 and CVE-2016-0778

(From OE-Core rev: 1c05115a906499989d2159683195ed6d2cda75ba)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:30 +00:00
Hongxu Jia
368da33ee7 logrotate: do not move binary logrotate to /usr/bin
In oe-core commit a46d3646a3e1781be4423b508ea63996b3cfca8a
...
Author: Fahad Usman <fahad_usman@mentor.com>
Date:   Tue Aug 26 13:16:48 2014 +0500

    logrotate: obey our flags

    Needed to quiet GNU_HASH warnings, and some minor fixes.
...
it explicitly move logrotate to /usr/bin without any reason,
which is against the original Linux location /usr/sbin.

So partly revert the above commit which let logrotate be
kept in the original place /usr/sbin.

(From OE-Core rev: 88015d6d0a887969ae82b0888bf32659a6d225d3)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:30 +00:00
Armin Kuster
48d9e00913 libxml2: security fix CVE-2015-5312
(From OE-Core rev: 15d05f186fbe78774c933cf93f116af1a2a8e51a)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:30 +00:00
Armin Kuster
436e204445 libxml2: security fix CVE-2015-8242
(From OE-Core rev: acbd71fe7d0571b78bbecb7464d99823411a7b22)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
389549c0bb libxml2: security fix CVE-2015-7500
includes a depend fix security issue CVE-2015-7500

(From OE-Core rev: 7d54f2f85dfcc3a56239abafd5eaefb9d7d25081)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
88e28c86c5 libxml2: security fix CVE-2015-7499
includes:
CVE-2015-7499-1
CVE-2015-7499-2

(From OE-Core rev: 3048fe24e4c5f83ad0971062a88592bcb6bf52bc)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
6abe713244 libxml2: security fix CVE-2015-7497
(From OE-Core rev: 5b72983d1a6d5ad5e9a21d2673d57d1da2333ac6)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
66740c3314 libxml2: security fix CVE-2015-7498
(From OE-Core rev: b3d6a714180199a5e0099e3d40b37c9bfa106eb1)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
2390475894 libxml2: security fix CVE-2015-8035
(From OE-Core rev: 495eaf5039596ac0fab7684cfc867569710eb0f4)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
663943a802 libxml2: security fix CVE-2015-7942
includes:
CVE-2015-7942
CVE-2015-7942-2

(From OE-Core rev: 4ca806d70cf65a66daab85898bcf5d682bef43d3)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
7aaf773d32 libxml2: security fix CVE-2015-8317
(From OE-Core rev: 34379b38919d535cd787bde4493fff61bd17f37a)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:29 +00:00
Armin Kuster
9d44210c74 libxml2: security fix CVE-2015-7941
includes:
CVE-2015-7941-1
CVE-2015-7941-2

(From OE-Core rev: e06312c71209b2e1d19c7df1434e409ad96b58be)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Joshua Lock
d3ad918a71 libxml2: remove files for easier maintenance
Drop a couple of CVE fixes for easy cherry-picking from jethro.
The same fixes will be pack-ported from jethro in a following
patch.

(From OE-Core rev: 02fb45bada58f03c5571baf700934154e9fc57c2)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Armin Kuster
f9e5cc9e16 openssl: fix for CVE-2015-3195
(From OE-Core rev: 55d09d4e2dad9d1f80e50348d44177e47e6e33e1)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Armin Kuster
0ed23c1a0a openssl: fix for CVE-2015-3194
(From OE-Core rev: edff5fc629c8f70191bd33c731084e8217780a38)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Armin Kuster
5c12661f8c openssl: fix for CVE-2015-3193
(From OE-Core rev: ee47f6ca78d15ec56556d5c078bf20315af457b8)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Martin Jansa
c7e2c072c2 texinfo: don't create dependency on INHERIT variable
* we don't want the do_package signature depending on INHERIT variable
* e.g. just adding the own-mirrors causes texinfo to rebuild:
  # bitbake-diffsigs BUILD/sstate-diff/*/*/texinfo/*do_package.sig*
  basehash changed from 015df2fd8e396cc1e15622dbac843301 to 9f1d06c4f238c70a99ccb6d8da348b6a
  Variable INHERIT value changed from
  ' rm_work blacklist blacklist report-error ${PACKAGE_CLASSES} ${USER_CLASSES} ${INHERIT_DISTRO} ${INHERIT_BLACKLIST} sanity'
  to
  ' rm_work own-mirrors blacklist blacklist report-error ${PACKAGE_CLASSES} ${USER_CLASSES} ${INHERIT_DISTRO} ${INHERIT_BLACKLIST} sanity'

(From OE-Core rev: e6cae8ace890fc4322830731cb95bcc2680f4cfc)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-20 17:08:28 +00:00
Belal, Awais
c1162207c9 grub2: Fix CVE-2015-8370
http://git.savannah.gnu.org/cgit/grub.git/commit/?id=451d80e52d851432e109771bb8febafca7a5f1f2

(From OE-Core rev: 3f2701c102e4e5b95fc79a8d967f9c48f8232fc6)

Signed-off-by: Awais Belal <awais_belal@mentor.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:35 +00:00
Thomas PERROT
a690c381ab openssl: fix SRC_URI
Corrects the URI of the openssl's recipe from fido. The sources were moved
to a new subdirectory.

(From OE-Core rev: 685e861f085736a4b0bae09bab86c3d456ec84ae)

Signed-off-by: Thomas Perrot <thomas.perrot@tupi.fr>
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:35 +00:00
Sona Sarmadi
58f6a400d1 bind: CVE-2015-8000
Fixes a denial of service in BIND.

An error in the parsing of incoming responses allows some
records with an incorrect class to be accepted by BIND
instead of being rejected as malformed. This can trigger
a REQUIRE assertion failure when those records are subsequently
cached.

[YOCTO #8838]

References:
http://www.openwall.com/lists/oss-security/2015/12/15/14
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8000
https://bugzilla.redhat.com/attachment.cgi?id=1105581

(From OE-Core rev: 5e1c3942a02564904ee2b2e24004b9679d649b4e)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Stefan Müller-Klieser
152e4c11e6 gcc-4.9: backport from gcc trunk r212178
When compiling meta-toolchain-qt5 on cortexa8, the compiler throws an
internal compiler error:

...
qttools-opensource-src-5.3.2/src/linguist/shared/po.cpp:
In function 'bool loadPO(Translator&, QIODevice&, ConversionData&)':
qttools-opensource-src-5.3.2/src/linguist/shared/po.cpp:717:1:
internal compiler error: in add_stores, at var-tracking.c:6000
...

Tracking this down led to https://bugs.linaro.org/show_bug.cgi?id=534
It seems the bug is well know and fixed upstream. So backporting from
trunk seems to be the right solution. This fixes the compiler problem
on cortexa8 and does not seem to be very invasive. The original commit
can be found at:

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212178 138bc75d-0d04-0410-961f-82ee72b054a4

(From OE-Core master rev: 6751ef78694783fb86e55c77afefae750ab1b610)

(From OE-Core rev: 91a001fc74dd13ea9e5249aa624ad360ce807349)

Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Martin Jansa
2924348da7 feature-arm-thumb.inc: Fix ARMPKGSFX_THUMB value
* my previous thumb related commit:
  commit 3e760031f91fb87c3e2f62b77a117eb41164f259
  Author: Martin Jansa <martin.jansa@gmail.com>
  Date:   Wed Feb 18 15:40:35 2015 +0100

    feature-arm-thumb.inc: respect ARM_INSTRUCTION_SET when adding thumb
    suffix

  unfortunately removed conditional on "thumb" in TUNE_FEATURES, when
  setting ARMPKGSFX_THUMB

* in case we have MACHINE without "thumb" in TUNE_FEATURES and distro
  setting ARM_INSTRUCTION_SET to "thumb" we end with:
  ARM_INSTRUCTION_SET="thumb"
  ARM_THUMB_OPT="thumb"
  ARM_M_OPT="thumb"

  # TUNE_CCARGS correctly not adding -mthumb
  TUNE_CCARGS=" -march=armv7-a  -mthumb-interwork -mfloat-abi=softfp -mfpu=neon"

  # but ARMPKGSFX_THUMB and TUNE_PKGARCH including "t2":
  ARMPKGSFX_THUMB="t2"
  TUNE_PKGARCH="armv7at2-vfp-neon"

  # causing following error:
  Error, the PACKAGE_ARCHS variable does not contain TUNE_PKGARCH (armv7at2-vfp-neon).

(From OE-Core master rev: 951200673af27538beaef647a33308b4f15d1fb0)

(From OE-Core rev: 17b3112a3d6fc4c777429f8b5965206889c55cc3)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Mike Crowe
36ea7bd65f allarch: Force TARGET_*FLAGS variable values
TARGET_CPPFLAGS, TARGET_CFLAGS, TARGET_CPPFLAGS and TARGET_LDFLAGS may
differ between MACHINEs. Since they are exported they affect task hashes
even if unused which leads to multiple variants of allarch packages
existing in sstate and bouncing in the sysroot when switching between
MACHINEs.

allarch packages shouldn't be using these variables anyway, so let's
ensure they have a fixed value in order to avoid this problem.

(Compare with 05a70ac30b37cab0952f1b9df501993a9dec70da and
14f4d016fef9d660da1e7e91aec4a0e807de59ab.)

(From OE-Core master rev: d08fda21bfb7d264c238af0232a22cdd751f5150)

(From OE-Core rev: 017b1992c7b9055f3a16e9c2e14535fe81dde6c8)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Richard Purdie
619b1c6b7d layer.conf: Add missing dependency for allarch package initramfs-framework
Similiarly to the other previous changes, add a missing allarch package dependency
for initramfs-framework on udev.

(From OE-Core master rev: 00524d0c4449eb358dcf6c5a049a8f5371ddadee)

(From OE-Core rev: c195dfac6fd248f65f00b9d5419ab132dbc1e6c9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Richard Purdie
61f5562730 layer.conf: Add several allarch dependency exclusions
These are dependencies that our allarch packages have in OE-Core that cause
those allarch packages to rebuild every time MACHINE changes.

With these changes, OE-Core allarch packages all have a common sstate
signatures and no longer rebuild.

(From OE-Core rev: 63bff90fa4fb4a95e8c79f9f8e5dd90ae1dfc69d)

(From OE-Core master rev: 0b5e868d160faca041cda42b670066facd4db531)

(From OE-Core rev: 4e69cfb612520f3413be3e2a075d943a9e7c8df1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Martin Jansa
7cbff59de8 linux-dtb.inc: drop unused DTB_NAME variable from do_install
* this is causing do_install to depend on KERNEL_IMAGE_BASE_NAME which
  in some cases contains something like BUILD_NUMBER from CI, that
  caused do_install to be reexecuted every single time, which is very
  sad to be caused by unused variable.
* jethro and newer don't need this change, because it's also fixed in
  commit 86b3f29f93e3f87903668ea317c6bd97be4cdf62
  Author: Marek Vasut <marex@denx.de>
  Date:   Thu May 14 14:31:11 2015 +0200
  Subject: kernel: Build DTBs early

(From OE-Core rev: d17abc45f1e1ba0a08c6e7411eda52a5140faea7)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Bhuvanchandra DV
cfd74b00e5 linux-firmware: rtl8192cx: Add latest available firmware
Add latest available firmware binaries for RTL8192CX chipsets.
These new firmwares have been released in 2012, have been used
by the mainline kernel as preferred firmware since 3.13 and
even backported to stable branches.

(From OE-Core master rev: 2dc67b53d1b7c056bbbff2f90ad16ed214b57609)

(From OE-Core rev: 89c6d043aa76c0e1eac694b92cdd95c6b02c9762)

Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Armin Kuster
01b93fb33d libxml2: fix CVE-2015-7942 and CVE-2015-8035
CVE-2015-7942 libxml2: heap-based buffer overflow in xmlParseConditionalSections()
CVE-2015-8035 libxml2: DoS when parsing specially crafted XML document if XZ support is enabled

[YOCTO #8641]

(From OE-Core master rev: 27de51f4ad21d9b896e7d48041e7cdf20c564a38)

(From OE-Core rev: fdaf0f8f8b034f19639f66e1d30088bb9abfc68d)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-15 13:14:34 +00:00
Elliot Smith
6e3eefb997 bitbake: toaster: Rework mimetype guessing to fix artifact downloads
Artifact download links were broken because the function to
get the mimetype for the artifact was incorrectly using the
underlying mimetype library. The function was also attached
to the build environment controller, which was unnecessary, as
we only support local controllers anyway.

Remove the mimetype getter on the build environment and
use the one in the view code instead. This prevents the download error
from occurring.

(Backport of dd957fe0f2 and
dd957fe0f2 from master to Yocto 1.8)

[YOCTO #8472]

(Bitbake rev: b09966906ef054834f0b465f0c5a2a937b4c4a4c)

Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-18 13:52:00 +00:00
brian avery
aff2257e0b toasterconf: remove master as a branch option from fido release
Toaster isn't designed to be forward compatible. As such,
    a release cannot build releases newer then it.

    Particularly, "fido" cannot build "master", so we remove
    "master" from the list of supported releases in "fido"

    [YOCTO #8154]

(From meta-yocto rev: e12c4cf27ccdf3f93035a8450b5ff62fe4fe9838)

Signed-off-by: brian avery <avery.brian@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:28:14 +00:00
Aníbal Limón
118acdcf67 bash: Disable custom memory allocator
Bash is failing trying to allocate memory [1] using the custom
memory allocator if we disable it the issue is fixed.

The major distributions also disabled by default [2], so we
don't have a good reason to use it.

The underlying issue is due to bash’s malloc using brk() calls
to allocate memory, which fail when address randomization is
enabled in kernel. sbrk() based custom allocators are obsolete.
There may be some performance impact of this however correctness
is more important.

[YOCTO #8452]

[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8452#c0
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8452#c5

(From OE-Core master rev: e42d8eff9eed7d1454b4f331d96dcee6dea232df)

(From OE-Core rev: 9f339f516ab03d598fae0e536b3a420ea4d8ee1a)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:40 +00:00
Paul Eggleton
72a8138908 tzdata: reinstate changes reverted in 2014c upgrade
OE-Core commit 57af3fb9662106f0a65a1b4edf83e2398be0a8f1 upgraded tzdata
but also reverted a couple of changes to SUMMARY and LIC_FILES_CHKSUM.
Reinstate these (with an update to the README md5 value since that has
changed slightly, without any change to the licensing statements
within).

(From OE-Core master rev: cea4f6b86129f84a99700207777929bf7e811ed6)

(From OE-Core rev: ea1169efac715140cebf20fae67eae58b5f1caf2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:38 +00:00
Armin Kuster
e3d6475b07 tzdata: update to 2015g
Resend: typo in version in subject.

Changes affecting future time stamps

Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
(Thanks to Fatih.)

Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
(Thanks to Alexander Krivenyshev.)

Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
(Thanks to Ken Rylander.)

Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
New zone America/Fort_Nelson.  (Thanks to Matt Johnson.)

(From OE-Core master rev: fce47d3bd51ede32a392b53b046a4583ef1847c8)

(From OE-Core rev: a987c482584c3500c42d733f1d78b7662d46a3c1)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:37 +00:00
Armin Kuster
dd2b5c9653 tzcode: update to 2015g
Changes affecting code

localtime no longer mishandles America/Anchorage after 2037.
(Thanks to Bradley White for reporting the bug.)

On hosts with signed 32-bit time_t, localtime no longer mishandles
Pacific/Fiji after 2038-01-16 14:00 UTC.

The localtime module allows the variables 'timezone', 'daylight',
and 'altzone' to be in common storage shared with other modules,
and declares them in case the system <time.h> does not.
(Problems reported by Kees Dekker.)

On platforms with tm_zone, strftime.c now assumes it is not NULL.
This simplifies the code and is consistent with zdump.c.
(Problem reported by Christos Zoulas.)

Changes affecting documentation
The tzfile man page now documents that transition times denote the
starts (not the ends) of the corresponding time periods.
(Ambiguity reported by Bill Seymour.)

(From OE-Core master rev: 7c9082ab1ae6f7810c7cffe137d7d232b03852f8)

(From OE-Core rev: 6c32103a8491fb0a0fa5dec905720a40877c6563)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:36 +00:00
Adrian Calianu
31aa514524 glibc: fix the big endian loader name on AArch64
Apply a patch backported from glibc 2.22 (master) to fix
the loader name on AArch64.

(From OE-Core rev: 513e52670ea52e8143f46777accf441bb5c299fa)

Signed-off-by: Adrian Calianu <adrian.calianu@enea.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:35 +00:00
Martin Jansa
446295e866 fontcache: allow to pass extra parameters and environment to fc-cache
* this can be useful for passing extra parameters, pass
  -v by default to see what's going on in do_rootfs
* we need to use this for extra parameter we implemented
  in fontconfig:
  --ignore-mtime always use cache file regardless of font directory mtime
  because the checksum of fontcache generated in do_rootfs
  doesn't match with /usr/share/fonts directory as seen on
  target device causing fontconfig to re-create the cache
  when fontconfig is used for first time or worse create
  new cache in every user's home directory when /usr/
  filesystem is read only and cache cannot be updated.

  Running FC_DEBUG=16 fc-cache -v on such device shows:
  FcCacheTimeValid dir "/usr/share/fonts" cache checksum 1441207803 dir checksum 1441206149
* my guess is that the checksum is different, because pseudo
  (which is unloaded when running qemuwrapper) or because some
  influence of running the rootfs under qemu.

(From OE-Core rev: 22bb7e11f9c75943efa07997a98304aa01d14699)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:34 +00:00
Ross Burton
2761a2bd8b readline: actually apply readline63-003 (aka CVE-2014-2524)
This file wasn't named as a patch, nor told to apply explicity, so it was just
unpacked to the work directory and not applied.  Rename the file so the patch is
applied correctly.

(thanks to Petter Mabäcker <petter@technux.se> for spotting this)

(From OE-Core master rev: 02be728762c77962f9c3034cd7995ad51afaee95)

(From OE-Core rev: 7f2e2d57c7496547b7970377547482ead2e152cf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:34 +00:00
Andre McCurdy
ddb058ca08 gettext_0.16.1: add -lrt and -lpthread to LDFLAGS for uclibc builds
Fix linker errors due to posix_spawnp etc being in librt for uclibc.

 | sh4-rdk-linux-uclibc-libtool: link: sh4-rdk-linux-uclibc-gcc -ml -m4 --sysroot=/build-foo/tmp/sysroots/foo -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/test-names test-names.o  libuniname.a ../gnulib-lib/.libs/libgettextlib.so /build-foo/tmp/work/sh4-rdk-linux-uclibc/gettext/0.16.1-r6/build/gettext-tools/intl/.libs/libintl.so -lc /build-foo/tmp/sysroots/foo/usr/lib/libiconv.so
 | ../gnulib-lib/.libs/libgettextlib.so: undefined reference to `posix_spawnp'
 | ../gnulib-lib/.libs/libgettextlib.so: undefined reference to `posix_spawn_file_actions_adddup2'
 | ../gnulib-lib/.libs/libgettextlib.so: undefined reference to `posix_spawn_file_actions_addopen'
 | ../gnulib-lib/.libs/libgettextlib.so: undefined reference to `posix_spawn_file_actions_addclose'
 | collect2: error: ld returned 1 exit status

(From OE-Core rev: 28f4d6d6e926be2f5efc098eb599200301f1ab2c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: d46333d)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:33 +00:00
Andre McCurdy
dfe39ea187 gettext_0.16.1: remove obsolete uclibc specific patch
gettext-error_print_progname.patch was originally created for gettext
v0.14.6 and does not apply cleanly to gettext v0.16.1.

Since the original issue addressed by the patch isn't documented and
because gettext v0.16.1 seems to be build OK for uclibc without the
patch, assume the patch is obsolete and no longer required.

(From OE-Core rev: 66e229474271a4ae6df8b5377bb2f9fe8175fb64)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: d95d92a)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:32 +00:00
Andre McCurdy
4525e29979 libiconv_1.11.1: fix LICENSE declaration, LGPL -> LGPLv2.0
(From OE-Core rev: dde08a4ba4a12a81b780b69c6ec395508b0a030f)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: 7d2da0e)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:31 +00:00
Andre McCurdy
dbf6599fbe libiconv_1.11.1: merge build and packaging fixes from libiconv_1.14
054151c libiconv: Fix B != S with uclibc builds
  273c437 libiconv: Remove RPATH from binaries
  fcb8d6f libiconv_1.14.bb: Fix build failure [partial-merge]

(From OE-Core rev: 3f5b2da748bbb0417a63c69393cdd024623074a2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: 898e9d7)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:30 +00:00
Andre McCurdy
442518efac uclibc: backport upstream fix for SH4
Backport upstream fix for building uclibc for SH4 with recent gcc:

  http://git.uclibc.org/uClibc/commit/?id=2c8a7766681b704e710f51c0817534e3f9a952d1

(From OE-Core rev: 6077f09f76b05b002f21e14c62c7c986db5427a9)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

(From OE-Core master rev: aa20c3d)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:30 +00:00
Haris Okanovic
afff53db2a openssh: Backport CVE-2015-5600 fix
only query each keyboard-interactive device once per
authentication request regardless of how many times it is listed

Source:
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/auth2-chall.c?f=h#rev1.43
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/auth2-chall.c.diff?r2=1.43&r1=1.42&f=u

Bug report:
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-5600
https://bugzilla.redhat.com/show_bug.cgi?id=1245969

Testing:
Built in Fido and installed to x86_64 test system.
Verified both 'keyboard-interactive' and 'publickey' logon works with
root and a regular user from an openssh 7.1p1-1 client on Arch.

(From OE-Core rev: 433f66ba6c79cf49e29251af0985baf5c4b79e23)

Signed-off-by: Haris Okanovic <haris.okanovic@ni.com>
Reviewed-by: Rich Tollerton <rich.tollerton@ni.com>
Reviewed-by: Ken Sharp <ken.sharp@ni.com>
Natinst-ReviewBoard-ID: 115602
Natinst-CAR-ID: 541263
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:29 +00:00
Tudor Florea
b8eb509ca5 unzip: CVE-2015-7696, CVE-2015-7697
CVE-2015-7696: Fixes a heap overflow triggered by unzipping a file with password
CVE-2015-7697: Fixes a denial of service with a file that never finishes unzipping

References:
http://www.openwall.com/lists/oss-security/2015/10/11/5
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-7696
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-7697

(From OE-Core rev: 458d877590bcd39c7f05d31cc6e7600ca59de332)

Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:28 +00:00
Armin Kuster
7e9516cb0e libxslt: CVE-2015-7995
This is a is being give a High rating so please consider it for
all 1.1.28 versions.

A type confusion error within the libxslt "xsltStylePreCompute()"
function in preproc.c can lead to a DoS. Confirmed in version 1.1.28,
other versions may also be affected.

(From OE-Core rev: 2ad0b4dd7262c251f991bbf7826580d89bd6e73a)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:27 +00:00
Ting Liu
dc6630b44b oprofile: update --with-kernel option to find perf_event.h
Update --with-kernel=${STAGING_DIR_HOST}/${prefix} to find kernel
headers (linux/*.h) to fix the error:
| checking kernel supports perf_events... unknown -- perf_event.h not found
| ERROR: You requested to build oprofile with '--with-kernel=/buildarea/lyang1/test_f2/tmp/work-shared/qemux86/kernel-source',
| but headers were not accessible at the given location.
| Be sure you have run the following command from within your kernel source tree:
|      make headers_install INSTALL_HDR_PATH=<kernel-hdrs-install-dir>
| Then pass <kernel-hdrs-install-dir> to oprofile's '--with-kernel' configure option.
| configure: error: Unable to build oprofile. Exiting.

This is part of the commit b5b3085d9d which
already applied in poky master branch.

(From OE-Core rev: 91ca81244e683c4f24752c59ec3342cd4fb1315d)

Signed-off-by: Ting Liu <ting.liu@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:26 +00:00
Leonardo Sandoval
e0b0824470 init-install-efi.sh: Avoid /mnt/mtab creation if already present
The base-files recipe installs /mnt/mtab (it is a softlink of /proc/mounts),
so if an image includes the latter, there is no new to created it again inside
the install-efi.sh script, otherwise an error may occur as indicated on the
bug's site.

[YOCTO #7971]

(From OE-Core master rev: 6c6c6528954952e1e323f5a26afd93b99913e6f2)

(From OE-Core rev: 92da534cefb5937c69553dbe599b664dc73292f3)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:12 +00:00
Stefan Christ
f251052c88 systemd: fix networking setup when ipv6 modules are missing
If the ipv6 kernel modules are missing, e.g. /lib/modules/<version>
doesn't match the runnig kernel, networkd doesn't bring up the
interfaces correctly. Backport fix from systemd version v220.

(From OE-Core rev: 3db960ef645606226784cbfd994d476892db07fe)

Signed-off-by: Stefan Christ <s.christ@phytec.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:12 +00:00
Jonathan Liu
7d2e451823 systemd: add PACKAGECONFIG for qrencode
(From OE-Core master rev: 5c0dc3e8f49621827e20f79fb6bc945c3f17315e)

(From OE-Core rev: 2b8579f18f6e0477ac46bca870c1caf2c2469128)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:12 +00:00
Reinette Chatre
05108aa9c2 systemd: fix tmpfiles location when multilib in use
Systemd's configuration files for creation, deletion and cleaning
of volatile and temporary files are installed in /usr/lib even when
multilib is in use (when /usr/lib64 is available). In this check the
systemd.conf file will not be found if libdir is /usr/lib64 so we fix the
path to match this file's installation path to look for it in
${exec_prefix}/lib

(From OE-Core master rev: c1ef36c2b3e3876cc166a9a5e153fc6f23b42b92)

(From OE-Core rev: 771ee44f3b6f15cc07eb4e3990a05130d3cd6bf1)

Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 13:27:12 +00:00
Scott Rifenbark
51246bfae3 documentation: Updates to support a 1.8.1 YP manual release.
Involves setting poky.ent variables, updating the manual
revision tables, and editing the mega-manual.sed file to
have the 1.8.1 string in there.

(From yocto-docs rev: 5f06e00c9bd657059433cd3487e86eccd31e5cd6)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-18 16:44:02 +00:00
Scott Rifenbark
e3425d4b0d toaster-manual: Updated to remove 'master' as the default branch
Made several changes as Toaster will not support using the

'master' branch now.

(From yocto-docs rev: cc7e1273944d72388ba4202cbf7146a909d1cdac)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-18 16:44:02 +00:00
Scott Rifenbark
5752ef3892 ref-manual: Corrected example to modify extrauser root password example
Fixes [YOCTO #7925]

Changed the final example from "useradd" to "usermod".

(From yocto-docs rev: 4360a2ab5734d456648efd72df6b1de4a3980ded)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-18 16:44:01 +00:00
Paul Barker
fa55b8e505 bitbake: toaster: buildinfohelper Skip packages we have no build info about
If there are more packages listed as installed than we know about from
bitbake, and therefore have insufficient information to be able to
create a Toaster Package object then skip it. Also handle the case where
a dependency references such a package.

Also clarify the error logging.

(Bitbake rev: a9e23e0066ea4dc16806ed3d269587ad1c895353)

Signed-off-by: Paul Barker <paul.barker@commagility.com>
Cc: Michael Wood <michael.g.wood@intel.com>
Cc: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-24 12:01:07 +01:00
Scott Rifenbark
6b421cd7fe ref-manual: Fixed typo in 1.6 migration section for BitBake
In Section 5.5.3.2 bb.fetch.encodeurl: Use bb.fetch.encodeurl

changed to

bb.encodeurl: Use bb.fetch.encodeurl

Reported-by: Olivier Dugas <dugaso@sonatest.com>
(From yocto-docs rev: bb8e0c173d4c1945ab538a33c7c868f0f72fd362)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:39 +01:00
Scott Rifenbark
7b586ea6ff poky.ent: Added "findutils" and "which" packages to Fedora essentials.
(From yocto-docs rev: 3ba75c36f420acda63c12dcff6a2686dd2702466)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:39 +01:00
Scott Rifenbark
cbec5e933e ref-manual: Fix to QA error message.
Fixed wording in section 7.78 to use "nativesdk-myrecipe.bb".

Fixed message to say "non-dev/-dbg/nativesdk- package contains symlink..."

Reported-by: Rene Fichter <rene@fichter.se>
(From yocto-docs rev: 429fd10005c4e63c611eb8192a71f063310f8933)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:39 +01:00
Scott Rifenbark
ecec6c56b5 ref-manual: Fixed grammar issue in the oelint.bbclass section.
(From yocto-docs rev: 346b865c0c2f8696f32ee26f383a078367b74119)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
1aec522aad ref-manual: Updated UNKNOW_CONFIGURE_WHITELIST variable
Fixes [YOCTO #7755]

Applied some review edits to the wording from Ross Burton.

(From yocto-docs rev: da0642350520975416d1c91ac98b57a6bde26439)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
8124686aa2 kernel-dev: Added kernel-devsrc information for building on target
I added a clarifying paragraph at the start of the section that talks
about building on the target hardware.  Included kernel-devsrc and
rationale for why a user would even do this (it is not normal).

(From yocto-docs rev: 95ae213b80cb45b5e9b7b161b2968dca6315e1da)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
8a19731e4d poky.ent: Updated the YOCTO_RELEASE_NOTES variable
Once again... having to try and match what is done by the release
team.  I think going forward we will use this form for
YOCTO_RELEASE_NOTES

(From yocto-docs rev: 7745eb618d7ab6e01e98d2158599047486649e4a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
6c97739acb ref-manual: Updated the UNKNOWN_CONFIGURE_WHITELIST variable.
Added information to note when it is used (insane.bbclass) and only
if the recipe inherits the autotools.bbclass.

Fixes [YOCTO #7755]

(From yocto-docs rev: 1a30a52c90a77990e9fd178837102b7f1978d7e8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
0120391b04 kernel-dev: Added new requirement for working with yocto-linux-custom.bb
Fixes [YOCTO #6611]

Added a new step to the "Working With Your Own Sources" section
so that the user is aware of needing to provide a defconfig file
or configuration fragments to the SRC_URI variable when working
with the yocto-linux-custom.bb recipe.

(From yocto-docs rev: 7a24ea3ce2f732baebbdb4fb42d458901ff056d1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
21469e0ef6 ref-manual: Updated ARCHIVER_MODE and archiver.bbclass
Added information in about the various varflags the user can
use to define the type of archive.

(From yocto-docs rev: b3dbe2410e67c3b9988d11c8f9e105c4d01ce22e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
a142b2265a ref-manual: Fixed "TBD" section cross-reference in KBUILD_DEFCONFIG
Fixes [YOCTO #7474]

There was a TBD section here that needed filling out.

(From yocto-docs rev: f82a5ea99f8b3d6dfc7fc38148b5e6e5e4721b05)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:38 +01:00
Scott Rifenbark
bbd4bfc061 kernel-dev: Added new "in-tree" defconfig file section.
I added the new section "Using an "In-Tree" defconfig File"
section.  This section addresses the ability to not use the
default location for defconfig files, which is usually in the
metadata layer.  The section describes how to use the
KBUILD_DEFCONFIG variable.

Fixes [YOCTO #7474]

(From yocto-docs rev: f514c8b96ef991f5893c73ae06392eb306c12a5e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
7cf64ab594 dev-manual: Added new section on "defconfig" files.
The "Configuring the Kernel" section did not address "defconfig"
files.  In my opinion, this is a hole in the docs for this section.
I added a new section titled "Creating a defconfig File" that is a
sub-section of the "Configuring the Kernel" section.

Additionally, I added a brief sentence in the introductory paragraph
to include the fact that this new information exists.

Finally, I included the bitbake command that ensures that the
proper configuration steps are minimally run before a user attempts
to use bitbake to get into menuconfig.

Fixes [#YOCTO 7474]

(From yocto-docs rev: 3e982a4f19402a941583a9a8708eeb6dbaf8fad5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
e00d07ce45 kernel-dev: Added detail to start of generating config file
Fixes [YOCTO #7474]

The "Generating Configuration Files" section has a procedure that
starts with a step to complete a build at least through the
kernel configuration task.  This is needed but we could use a
bit of explanation here.  I added some rationale behind why you
should do this.

(From yocto-docs rev: dc6579de0740703796e7e6473ad86f70d0ca5aa2)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
7388b9c8d8 documentation: Updated customization layers to point to XSL mirrors
The customization layers were pointing to Sourceforge site for the
XSl files needed to build the manuals.  Throuhgout time, this site
has failed me enough to warrent trying to get these XSL files from
some other source.  Rather than ship the XSL files with the YP release,
we decided to create some mirrors and point the customization files
there.

(From yocto-docs rev: 280bcafb4ce3471c364612aa85f7280f700f855d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
10228eed0f ref-manual: Removed PRINC entry from the glossary
This variable has been deprecated a while and Paul Eggleton suggested
we finally remove it from the glossary.  I removed it and also
took away the two links from where the variable was referenced
in a couple spots in the migration section.

(From yocto-docs rev: 141b873f6c3111c791fdc71f937b667171f82d2e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
56b13544d7 toaster-manual: Added detail for the URL to access Web Interface
(From yocto-docs rev: cf7899959a18ac04c732ae80aee2ecd7c3fea851)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
ebec9603e7 ref-manual: Added new variable description UNKNOWN_CONFIGURE_WHITELIST
Fixes [YOCTO #7755]

Added a new description for this variable.  Based it on information
given to me by Paul Eggleton.

(From yocto-docs rev: 112b86020942939a00a742d5aa421a23f2651a97)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
ddefb0a380 ref-manual: Updated EXTRA_IMAGE_FEATURES variable
Added better wording to show that you use spaces to separate
multiple features.

(From yocto-docs rev: 5bbfda659be29b0014d25391680c1f9e4f3866d1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:37 +01:00
Scott Rifenbark
f23f27d47e dev-manual: Updates to kernel configuration in the "Kernel Modification Workflow" section
This section needed some more information.  It referenced the yocto-kernel
script and menuconfig.  I added references to the appropriate areas of
YP documentation for these.  I also changed wordings to that it is
apparent that .config is created by menuconfig when changes are saved.

(From yocto-docs rev: aa01fd8d5917fac6c14f69aaa0a26200b3e67968)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
45c4f14dcb dev-manual: Added a link to reference defconfig files.
(From yocto-docs rev: d6240dda3f056cdacd039f2867a4da48c0ad0f02)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
329be1e06d dev-manual: Minor edits to "Configuring the Kernel" section.
(From yocto-docs rev: f840fa86b8fd970be20a11e362b7399635e78a93)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
68460ed58c ref-manual: Added new glossary description for KBUILD_DEFCONFIG.
(From yocto-docs rev: 6039b3a5b1ff68104760fa8780507a5d5d3e2d8f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
8ab8646e28 adt-manual: Updated the "Getting the Images" section for eclipse-debug
The way to include tcf-agent now in an image that you are going to
remotely deploy and debug using the Eclipse IDE is to simply include
the eclipse-debug image feature as part of the image.  I updated the
section around getting images to reflect this simple method.

Reported-by: Adam Lee <adam@gumstix.com>
(From yocto-docs rev: 2da55c34972f4e6a57c37a9011c2c4769a0e3814)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
be0ea1022d ref-manual: Added and updated variables to support calling functions
Fixed [YOCTO #7632]

Looked for, updated, and added (if necessary) the following
variables:

 * ROOTFS_PREPROCESS_COMMAND
 * ROOTFS_POSTPROCESS_COMMAND
 * SDK_POSTPROCESS_COMMAND
 * POPULATE_SDK_POST_TARGET_COMMAND
 * POPULATE_SDK_POST_HOST_COMMAND,
 * IMAGE_POSTPROCESS_COMMAND
 * IMAGE_PREPROCESS_COMMAND
 * ROOTFS_POSTUNINSTALL_COMMAND
 * ROOTFS_POSTINSTALL_COMMAND

Each of these variables no longer accepts arbitrary shell commands but
rather functions.  The wordings now support that behavior.

Also, updated the migration section for going to 1.6 release to note
this change.

(From yocto-docs rev: d52256cbf08a4d8968d68423138546fb33abbad6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
fa9b57e6f5 ref-manual: Added 'ptest' to the list of Distro Features
Reported-by: Paul Eggleton <paul.eggleton@intel.com>
(From yocto-docs rev: e63773beac002bf39b2b371c50d3329de01e8586)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
e91684be80 ref-manual: Updates to the "Speeding Up the Build" section
I applied a little more information to this section to help
round out the variable explanations.  Part of the change involved
adding PARALLEL_MAKEINST to the list of scaled variables.
I had left that variable off.  Also added a new trade-off.

(From yocto-docs rev: 2b6377030677b1318cb9d6e038885d7874f0e609)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:36 +01:00
Scott Rifenbark
d5236b6535 ref-manual, dev-manual: Added info about make race work-around
I updated both the PARALLEL_MAKE and PARALLEL_MAKEINST variables
by expanding the note to indicate how to prohibit parallel make
threads.  Also, added a cross-referencing link to the
"Debugging Parallel Make Races" section.

I added a short note to the start of the "Debugging Parallel Make
Races" section noting that if they can't properly fix the condition,
they can always do a work-around to set the PARALLEL_MAKE or
PARALLEL_MAKEINST variables to null.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
1025e7fa16 ref-manual: Formatting fixes and tag fix.
(From yocto-docs rev: 60999b4f7c38e0d659730dbe3defe95fa9684619)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
fdba15a1e7 ref-manual: Updates to BB_NUMBER_THREADS and PARALLEL_MAKE
I added some more detail to these two variables.  The system sets
them according to the perceived number of cores.  These default
setting are cool for single socket systems.  However, if you
have some big system with a lot of physical CPUs, you might want
to cap off the values at 20.  This is according to Darren Hart.

I also put in some cross-references to the "Speeding Up the Build"
section.

(From yocto-docs rev: 69b931f019f7bec687a642d7fccd1172a9be1746)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
e934ab58f4 ref-manual: Added descriptions for four new variables
Fixes [YOCTO #7665]

Added descriptions in the glossary for the following variables:

 * SDK_HOST_MANIFEST
 * SDK_TARGET_MANIFEST
 * SDK_VERSION
 * TOOLCHAIN_OUTPUTNAME

(From yocto-docs rev: 709421023ff6545da30fcb3486027ff984d4241e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
2220cca84e adt-manual: Emphasis on populate_sdk as bitbake method for building toolchain
I updated the "Optionally Building a Toolchain Installer" section
to emphasize using 'bitbake <image> -c populate_sdk' as the method
for building outa toolchain.  Before the change, equal emphasis was
put on for this preferred method and the 'bitbake meta-toolchain'
method.

(From yocto-docs rev: 46156957c38edf33cf3c98957733f6eb4323fa0b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
76d164d5ad dev-manual: Updated requirements for writing a new test.
Fixes [YOCTO #7524]

The "Writing New Tests" section needed more clarification in the first
paragraph.  One requirement is that minimally, an empty __iniit_.py
file must exist in the runtime directory.

(From yocto-docs rev: 8f003a9fe7c31bad7ed705a003a44761ba8b3c4f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:35 +01:00
Scott Rifenbark
4d9919646a ref-manual: Added new variable description for ARCHIVER_MODE
Also, added a cross-reference link from the archiver.bbclass section
to the new description.

(From yocto-docs rev: 1a7c86064f2dbb7453026bf8b8166566b33b3287)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-21 23:11:34 +01:00
Richard Purdie
b74ea963ce build-appliance-image: Update to fido head revision
(From OE-Core rev: f0873b83d693af4a103999160d67fcf25c7eedc1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29 14:59:45 +01:00
Richard Purdie
963a0c2f76 poky.conf: Bump version for 1.8.1 fido release
(From meta-yocto rev: debe2f66bad75f052bc74681d27951345418310f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29 14:59:24 +01:00
Ross Burton
f963541dc0 sstate: run recipe-provided hooks outside of ${B}
To avoid races between the sstate tasks/hooks using ${B} as the cwd, and other
tasks such as cmake_do_configure which deletes and re-creates ${B}, ensure that
all sstate hooks are run in the right directory, and run the prefunc/postfunc in WORKDIR.

(From OE-Core rev: 07a7e1a0bee5b8757951e67c9353c786a6ac8500)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29 14:42:25 +01:00
Robert Yang
57eb677f0e autotools.bbclass: mkdir ${B} -> mkdir -p ${B}
${B} is the default cwd of tasks, so there might be race issues such as:
| mkdir: cannot create directory `${B}': File exists
[snip]
NOTE: recipe perf-1.0-r9: task do_configure: Failed

(From OE-Core rev: 4c02a30f084408d0a6a5149937ef74520f8346dc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-19 11:11:12 +01:00
Robert Yang
5fecc456e5 perf: mkdir ${B} -> mkdir -p ${B}
${B} is the default cwd of tasks, so there might be race issues such as:
| mkdir: cannot create directory `/path/to/work/qemux86-poky-linux/perf/1.0-r9/perf-1.0/': File exists
[snip]
NOTE: recipe perf-1.0-r9: task do_configure: Failed

(From OE-Core rev: eb3d1dac724144637a86e8124b7b6b91bbeab822)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-19 11:11:11 +01:00
Li Zhou
4ce2a556ca libunwind: Security Advisory - libunwind - CVE-2015-3239
libunwind: Invalid dwarf opcodes can cause references beyond the end of
the array

Off-by-one error in the dwarf_to_unw_regnum function in include/dwarf_i.h
 in libunwind 1.1 allows local users to have unspecified impact via
invalid dwarf opcodes.

(From OE-Core master rev: 9c4e7f5c009b076b0bc638a02fcf3d96c362e7eb)

(From OE-Core rev: 38de3cd2fcc5e2c79dcf1c864c84f8e712111e5d)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:27 +01:00
Martin Jansa
174b15c2c0 rootfs.py: show intercept script output in log.do_rootfs
* without this the output wasn't shown anywhere even when the bb.warn
  says:
  "See log for details!"

(From OE-Core master rev: a3c322b42c7a14584a80e04519c34689ec813210)

(From OE-Core rev: 33b9dc43afbf9d201863d4327cd8689582b19070)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:26 +01:00
Martin Jansa
bb931159ea postinst_intercept: allow to pass variables with spaces
* trying to pass foo="a b" through postinst_intercept ends
  with the actual script header to containing:
  b
  foo=a
  which fails because "b" command doesn't exist.

(From OE-Core master rev: c66d7d85b7225be8c838449324d506565dd0081d)

(From OE-Core rev: e1cb77476934ea0f80993df049c3708bfa33dba3)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:26 +01:00
Martin Jansa
346188f176 rootfs.py: Allow to override postinst-intercepts location
* useful when we need to overlay/extend intercept scripts from oe-core

(From OE-Core master rev: 7d08d2d5c0ae686e3bb8732ea82f30fd189b1cd8)

(From OE-Core rev: 0f528bda0bac76e190b03764c603f199a6079fc6)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:26 +01:00
Sona Sarmadi
3b9a1144a5 libtasn1: CVE-2015-3622
_asn1_extract_der_octet: prevent past of boundary access

References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3622
http://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=patch;
h=f979435823a02f842c41d49cd41cc81f25b5d677

(From OE-Core rev: 553bc30b96cd9ef9c5bc621debcf7c23c66d7e42)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:25 +01:00
George McCollister
687327d494 wic: fix path parsing, use last occurrence
If the path contains 'scripts' more than once the first occurrence will be
incorrectly used. Use rfind instead of find to find the last occurrence.

(From OE-Core rev: 35ecb0b8557aae85f377c9d99f1a72cbb76fb6d8)

Signed-off-by: George McCollister <george.mccollister@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:25 +01:00
Armin Kuster
c18dff0871 openssh: CVE-2015-6563 CVE-2015-6564 CVE-2015-6565
three security fixes.

CVE-2015-6563 (Low) openssh: Privilege separation weakness related to PAM support
CVE-2015-6564 (medium)  openssh: Use-after-free bug related to PAM support
CVE-2015-6565 (High)  openssh: Incorrectly set TTYs to be world-writable

(From OE-Core rev: 259df232b513367a0a18b17e3e377260a770288f)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:24 +01:00
Armin Kuster
ab7f4c1a6d bind: CVE-2015-1349 CVE-2015-4620 CVE-2015-5722
three security fixes.

(From OE-Core rev: 16e80afe187c173e00b734c757a05157855ed504)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:24 +01:00
Richard Purdie
78b2eaa516 runqemu: Handle device names like tapX@NONE
ip list can return devices in the form tapX@NONE. If it does so,
ensure we handle that case correctly. Newer distros appear to do
this in some cases.

[YOCTO #8129]

(From OE-Core master rev: 6459dde380febce24d2c355d441d9cb3b14409b9)

(From OE-Core rev: a6709ac54bb9ac79692c3c6faadaace11b8f33f4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:24 +01:00
Saul Wold
1245acce18 oprofileui: Use inherit gettext
oprofileui uses gettext during the configuration task so should be inherit
gettext. This issue appears when an older version of gettext is used do to
pinning to the older non-gplv3 version.

[YOCTO #7795]

(From OE-Core rev: 7a161f8685c551892218a9a7877c10bdcd170c0e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:23 +01:00
Sona Sarmadi
6516ecd075 gnutls: CVE-2015-3308
Fixes use-after-free flaw in CRL distribution points parsing

Reference:
d6972be332
053ae65403

http://www.openwall.com/lists/oss-security/2015/04/15/6

(From OE-Core rev: 4db630c0cd7988c923eb3f48153a6cedafd6a139)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:23 +01:00
Alejandro Hernandez
d6dcddbb3d qemurunner: Improves checking for server and target IPs on qemus parameters
Fixes OS hanging infinitely waiting for qemus process to release bitbake.lock

(From OE-Core master rev: d168bf34c553dbe5de7511e158cd83869d7a88bc)

(From OE-Core rev: b19f599fe8d06d9381ae774f3289fa8c054ad1cc)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:22 +01:00
Paul Eggleton
1c65b4bdd8 oeqa/utils/qemurunner: fix logging
OE-Core commit 519e381278d40bdac79add340e4c0460a9f97e17 unfortunately
broke logging in two different ways:

1) it prevented logging to the task log from working within bitbake
   -c testimage. This is due to the logger object being set up too early
   which interferes with BitBake's own logging. If we prefix the name
   with "BitBake." everything works (and we don't need to set the
   logging level).

2) Additionally because it called the log functions on the logging
   module and not the logger object it set up, this caused the
   oe-selftest logging to start printing everything from that point
   forward.

Fix these two issues and return us to the desired behaviour for
do_testimage.

(From OE-Core master rev: 429b1971be06d5146bb1c14f4697966cddab3b33)

(From OE-Core rev: 095b6ccbf86b1830da2dcf5af09a4ebbcdfca921)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:22 +01:00
Ross Burton
e4f0b095e8 oeqa/QemuRunner: don't use bb for logging
Instead of using bb.note() etc for logging use logging.Logger directly, allowing
the use of QemuRunner outside of bitbake.

Also clean up the logging/errors by moving create_socket() out of
__init__()/restart() and into start().

(From OE-Core master rev: 519e381278d40bdac79add340e4c0460a9f97e17)

(From OE-Core rev: 97478640e1449e861b880dd3bedc6af1b0bbacdc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 19:22:22 +01:00
Armin Kuster
b50596d8f6 tzdata: update to 2015d
Changes affecting future time stamps

Egypt will not observe DST in 2015 and will consider canceling it
permanently.  For now, assume no DST indefinitely.
(Thanks to Ahmed Nazmy and Tim Parenti.)

Changes affecting past time stamps
America/Whitehorse switched from UTC-9 to UTC-8 on 1967-05-28, not
1966-07-01.  Also, Yukon's time zone history is documented better.
(Thanks to Brian Inglis and Dennis Ferguson.)

Change affecting past and future time zone abbreviations
The abbreviations for Hawaii-Aleutian standard and daylight times
have been changed from HAST/HADT to HST/HDT, as per US Government
Printing Office style.  This affects only America/Adak since 1983,
as America/Honolulu was already using the new style.

(From OE-Core rev: b9f366ab4e0a9cad69b631f402b9afa02d40f667)

(From OE-Core rev: 5a1839ecc9a2191252019ddd5c253098006f5bc3)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:41:34 +01:00
Armin Kuster
814bdc8a55 tzcode: update to 2015d
Changes affecting code

    zic has some minor performance improvements.

(From OE-Core rev: 3ab7e247b0662a1791169f16424abec426885f80)

(From OE-Core rev: cdc4fa9e3301cb478d89cf0c1d690e17313b7096)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:41:34 +01:00
Richard Purdie
fa87963b35 bitbake: bitbake: cooker: properly fix bitbake.lock handling
If the PR server or indeed any other child process takes some time to
exit (which it sometimes does when saving its database), it can end up
holding bitbake.lock after the UI exits, which led to errors if you ran
bitbake commands successively - we saw this when running the PR server
oe-selftest tests in OE-Core. The recent attempt to fix this wasn't
quite right and ended up breaking memory resident bitbake. This time we
close the lock file when cooker shuts down (inside the UI process)
instead of unlocking it, and this is done in the cooker code rather than
the actual UI code so it doesn't matter which UI is in use. Additionally
we report that we're waiting for the lock to be released, using lsof or
fuser if available to list the processes with the lock open.

The 'magic' in the locking is due to all spawned subprocesses of bitbake
holding an open file descriptor to the bitbake.lock. It is automatically
unlocked when all those fds close the file (as all the processes terminate).
We close the UI copy of the lock explicitly, then close the server process
copy, any remaining open copy is therefore some proess exiting.

(The reproducer for the problem is to set PRSERV_HOST = "localhost:0"
and add a call to time.sleep(20) after self.server_close() in
lib/prserv/serv.py, then run "bitbake -p; bitbake -p" ).

Cleanup work done by Paul Eggleton <paul.eggleton@linux.intel.com>.

This reverts bitbake commit 69ecd15aece54753154950c55d7af42f85ad8606 and
e97a9f1528d77503b5c93e48e3de9933fbb9f3cd.

(Bitbake rev: a29780bd43f74b7326fe788dbd65177b86806fcf)

(Bitbake rev: ed30f4ee1cef8db9ea422c5e54b2375c4f3b1d6f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Conflicts:
	bitbake/lib/bb/tinfoil.py
2015-09-01 21:37:20 +01:00
Richard Purdie
d7cad22f48 bitbake: runqueue: Add message to explain the problem if diffsigs multiple tasks don't exist
(Bitbake rev: 8292c64e6edae1bf6f554140e8f603cedbd01047)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:37:19 +01:00
Ross Burton
7ccc4e25a3 gnome: move introspection options to gnomebase
The gnome class is really a convenience class to include other classes, so move
the introspection arguments into gnomebase.bbclass.

(From OE-Core rev: b43a1b244a5ceab52713759dc53b00b162d9d43f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:47 +01:00
Khem Raj
b64fcadb20 systemd: Remove exporting special CPP
This is no more needed.
it was done long ago while systemd lived in meta-openembedded
http://lists.openembedded.org/pipermail/openembedded-commits/2012-August/141061.html
The accompanying patch has been applied to systemd already so we were
not needing to set CPP for sometime now.

as a nice side effect it helps compiling systemd with clang

(From OE-Core rev: b816e3f520bf71c9b681ccea30c8eefd62fb20a2)

(From OE-Core master rev: e95365400ae1ffb6b650723cfb2c6a67913c740c)

(From OE-Core rev: 981d99d1307b7c36e964ba9b9929b7329169d72b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:47 +01:00
Sona Sarmadi
7e8bd02a57 icu: CVE-2014-8146-CVE-2014-8147
CVE-2014-8146 icu: heap overflow via incorrect isolateCount
CVE-2014-8147 icu: integer truncation in the resolveImplicitLevels function

References:
[1] https://github.com/pedrib/PoC/raw/master/generic/i-c-u-fail.7z
[2] https://www.kb.cert.org/vuls/id/602540
[3] http://bugs.icu-project.org/trac/changeset/37080
[4] http://bugs.icu-project.org/trac/changeset/37162

(From OE-Core rev: a461a1a9141fb6a3f79bf9773a837daace2e9996)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:46 +01:00
Alexandru DAMIAN
bdba0dd12d toasterconf: remove master as a branch option from fido release
Toaster isn't designed to be forward compatible. As such,
a release cannot build releases newer then it.

Particularly, "fido" cannot build "master", so we remove
"master" from the list of supported releases in "fido"

[YOCTO #8154]

(From OE-Core rev: bda086118abfb168183dc285357ecbb6dccff5e3)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: brian avery <avery.brian@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:46 +01:00
Khem Raj
4fc8836379 glibc: Consider adding -Wno-error in cases when not using -O2
glibc has recently turned on Werror globally which is good but then not
all option combos are well tested so there still remains cleanup needed
when not using -O2, so lets just disable Werror in such cases, until
fixed upstream

Change-Id: I2d491c360a15b0752c97ff77ee0faaeede6e8d2a
(From OE-Core master rev: 52a90e8e592ddd228939e15d7fd0d69f3c1e816f)

(From OE-Core rev: 6f358676c33854cd6b02f41232875cf779cde1b8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:45 +01:00
Li Zhou
0b1ea952ad gdk-pixbuf: Security Advisory - gdk-pixbuf - CVE-2015-4491
pixops: Be more careful about integer overflow

Integer overflow in the make_filter_table function in pixops/pixops.c
in gdk-pixbuf before 2.31.5, as used in Mozilla Firefox before 40.0 and
Firefox ESR 38.x before 38.2 on Linux, Google Chrome on Linux, and other
products, allows remote attackers to execute arbitrary code or cause a
denial of service (heap-based buffer overflow and application crash) via
crafted bitmap dimensions that are mishandled during scaling.

(From OE-Core master rev: e27f367d08becce9486f2890cb7382f3c8448246)

(From OE-Core rev: 8e6da2d34ed6e3352e235c1723d6b4f425bd5932)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:45 +01:00
Ross Burton
541876e3e5 systemd: update SRC_URI
Upstream has moved git hosts, so update the SRC_URI appropriately.

[ YOCTO #8181 ]

(From OE-Core master rev: c6166b7ff7ebcab424af975b1e5378813c684560)

(From OE-Core rev: b459e8831dfcb8f4317e115b534567c656efee04)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:44 +01:00
Ross Burton
f08e550a89 systemd-compat-units: set S correctly
This recipe doesn't unpack any source, so set S to ${WORKDIR}.

(From OE-Core master rev: 188a08884d0c1b57d5c8c23f93463399526b19a2)

(From OE-Core rev: 5908df2668c46495f3d9626a7d0e6ce8bb1a2f1f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:44 +01:00
Umut Tezduyar Lindskog
be837d96fa systemd: update the status of configurable root patch
(From OE-Core master rev: a79afafd422a9b8e74c0eaac6296e6d1802bb994)

(From OE-Core rev: 7cfaac7e7f49303a00247d4ac221b6fe13eed7b9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:44 +01:00
Chen Qi
cde69ef352 systemd: add PACKAGECONFIG for valgrind
Execute `bitbake valgrind && bitbake systemd -c cleansstate && bitbake
systemd -c configure && bitbake valgrind -c cleansstate && bitbake systemd
-c compile', and we would get the following error.

   src/libsystemd/sd-bus/bus-control.c: fatal error: valgrind/memcheck.h: No such file or directory.

Add PACKAGECONFIG option to sovle this problem.

(From OE-Core master rev: e35ee4e016fbd659c88444ab7ee8e86008984f2c)

(From OE-Core rev: 5a9cf55789f030ce940b8d1c78a75147b4a2b486)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:43 +01:00
Ross Burton
29495d0e8d systemd: recommend the vconsole setup units
systemd's early boot wants to run the vconsole setup units.  They were split out
so that systems without visible consoles don't need the overhead of packaging
kbd etc, but we should pull them in by default.

(From OE-Core master rev: a2e7a94f8d777d1cd9a07e1543b88a0cf1f9cd67)

(From OE-Core rev: dc0a58e396213e3f1131e0f9be4f81bf29f135b2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:43 +01:00
Kai Kang
704b4bf52c systemd: add PACKAGECONFIG selinux
Add PACKAGECONFIG 'selinux' for systemd. debug-shell.service starts
different shell according whether selinux is enabled.

(From OE-Core master rev: 3d1aa27191fe4c21428eaf4ae036acb1496b7df7)

(From OE-Core rev: a7afb11176a997b65e532c5b4fa2e706a3a27a58)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:42 +01:00
Joshua Lock
38fd01f417 bind: backport patch for CVE-2015-5477
(From OE-Core rev: ba84c727b9c8c743e7ac87e6c84456f679118af8)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:42 +01:00
Beth Flanagan
1f404c9bd8 base.bbclass: Note when including pn with INCOMPATIBLE_LICENSES
We need to be able to tell people if we WHITELIST a recipe
that contains an incompatible licese.

Example: If we set WHITELIST_GPL-3.0 ?= "foo", foo will end
up on an image even if GPL-3.0 is incompatible. This is the
correct behaviour but there is nothing telling people that it
is even happening.

(From OE-Core master rev: c9da529943b2f563b7b0aeb43576c13dd3b6f932)

(From OE-Core rev: 1b449dd0ee88274d01f2ec1f2a22955b824ff8ef)

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:42 +01:00
Kai Kang
e232ad758a qemu: fix CVE-2015-3209
Backport patch to fix CVE-2015-3209.

http://git.qemu.org/?p=qemu.git;a=commit;h=9f7c594

(From OE-Core master rev: ea85f36ad438353f5a8e64292dd27f457f1f665c)

(From OE-Core rev: d8d68c4a630dc9d802e159f0ffe768e52bea5401)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:41 +01:00
Kai Kang
328d35b53d qemu: backport patches to fix CVE issues
Backport patches to fix CVE-2015-4103, CVE-2015-4104, CVE-2015-4105 and
CVE-2015-4106. These patches are from debian, but they are originally
from:

http://git.qemu.org/?p=qemu.git;a=shortlog;h=c25bbf1

(From OE-Core master rev: 496b3ffba6755bb76709c88cf81399c9d23f830a)

(From OE-Core rev: 29746e78ca000f4464c8e0a1da55c77e02c651e4)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Refresh the following patches to apply cleanly to our qemu-2.2.0:
07-xen-pt-split-out-calculation-of-throughable-mask-CVE-2015-4106.patch
10-xen-pt-add-a-few-PCI-config-space-field-descriptions-CVE-2015-4106.patch

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:41 +01:00
Joshua Lock
2adb210c8c wpa-supplicant: backport a patch to fix CVE-2015-1863
This fix was included in the master branch with the upgrade
to 2.4, backport it to fido as the vulnerability was already
present in 2.3.

(From OE-Core rev: 12fc04731d26597bfb9d9f1713c96b11c8186c43)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:40 +01:00
Fan Xin
982baf1130 wpa-supplicant: Fix CVE-2015-4141, CVE-2015-4143, CVE-2015-4144, CVE-2015-4145, CVE-2015-4146
wpa-supplicant: backport patch to fix CVE-2015-4141,
 CVE-2015-4143, CVE-2015-4144, CVE-2015-4145, CVE-2015-4146

Backport patch to fix CVE-2015-4141, CVE-2015-4143, CVE-2015-4144, CVE-2015-4145, CVE-2015-4146.
This patch is originally from:

For CVE-2015-4141:
http://w1.fi/security/2015-2/0001-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch

For CVE-2015-4143:
http://w1.fi/security/2015-4/0001-EAP-pwd-peer-Fix-payload-length-validation-for-Commi.patch
http://w1.fi/security/2015-4/0002-EAP-pwd-server-Fix-payload-length-validation-for-Com.patch

For CVE-2015-4144 and CVE-2015-4145:
http://w1.fi/security/2015-4/0003-EAP-pwd-peer-Fix-Total-Length-parsing-for-fragment-r.patch
http://w1.fi/security/2015-4/0004-EAP-pwd-server-Fix-Total-Length-parsing-for-fragment.patch

For CVE-2015-4146:
http://w1.fi/security/2015-4/0005-EAP-pwd-peer-Fix-asymmetric-fragmentation-behavior.patch

(From OE-Core master rev: ce16e95de05db24e4e4132660d793cc7b1d890b9)

(From OE-Core rev: b236c0882d62d8aa722117a54c1ff9edec7f5a6d)

Signed-off-by: Fan Xin <fan.xin at jp.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:40 +01:00
Yuqing Zhu
38f48913ad gstreamer1.0-plugins-base: Need more buffers in output queue for better performance
(From OE-Core master rev: 4b35871f0883ded624c6d5dd9bbf3365934c0e93)

(From OE-Core rev: 9b3ae2e90f405d3c157d5c3d645b2be6b6216042)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:39 +01:00
Yuqing Zhu
aecebf120b gstreamer1.0-plugins-base: Set need_segment after sink pad receive GST_EVENT_SEGMENT
Subparse works in push mode, chain funciton will be called once
up stream element finished the seeking and flushing.

If set need_segment flag in src pad event handler, the segment
event will be pushed earlier, result in the subtitle text will
be send out to down stream from the beginning.

(From OE-Core master rev: 48742378cd91297db439ee83576f3663befaa8f9)

(From OE-Core rev: 0ecbbc39353d92a66d32ea13075aaec76b590fa0)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:38 +01:00
Yuqing Zhu
dd86cb34e6 gstreamer1.0-plugins-base: Enhance SSA text lines parsing
Some parser will pass in the original ssa text line which starts with "Dialog:"
and there's are maybe multiple Dialog lines in one input buffer.

(From OE-Core master rev: f47e6185a2e88081f98704357e873a04d2e39c40)

(From OE-Core rev: c2e8974e6c9e3e1eb386375a3839b81c23626d43)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:37 +01:00
Yuqing Zhu
36978ade7f gstreamer1.0-plugins-base: Don't set async of custom text-sink to false
Setting async to false will lead A/V sync problem when seeking.
The preroll need to use GAP event instead of setting async to false.

(From OE-Core master rev: c3ed0c2162dcdbb1aced57aed33e2791b81db558)

(From OE-Core rev: 10c4993d4da66ed2eb857b396c24a3771a0bd0d6)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:37 +01:00
Yuqing Zhu
407975a71e gstreamer1.0-plugins-base: Make memory copy when video buffer's memory is read only
Detect the memory flag and use gst_buffer_copy_region with GST_BUFFER_COPY_DEEP
parameter to perform deep memory copy.

(From OE-Core master rev: 817e542096cf2d415b1725ee98a4d3bbf0ed9415)

(From OE-Core rev: 5202a84a67be69259c42bfb109aec1e957783945)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:37 +01:00
Yuqing Zhu
86625d2a59 gstreamer1.0-plugins-base: Do not change EOS event to GAP event
-Sending EOS event instead of GAP event as GAP event has error if A/V have the different duration.

-Stop sending second track EOS event when returing failure after sending the first track EOS.
 Fixed by ignoring the return error.

(From OE-Core master rev: 36dfa24b2a4318b7abe6ab54b64e6c011b8e1e0f)

(From OE-Core rev: 6a8d2055421cb6c82203654eabd67e87ae99fee6)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:36 +01:00
Yuqing Zhu
0c925855f7 gstreamer1.0-plugins-base: Keep sticky events around when doing a soft reset
The current code will first discard all frames, and then tries to copy
all sticky events from the (now discarded) frames. So change the order.

(From OE-Core master rev: 32e88fd0632619c5d3eb95a58a0cceb6f5f6d0d0)

(From OE-Core rev: 17be09863be3804ba58006c8cf622cd0653fed1e)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:36 +01:00
Yuqing Zhu
bdf4d19dc3 gstreamer1.0-plugins-base: Fix output buffer can't writable after frame_map() issue
-Add GST_VIDEO_FRAME_MAP_FLAG_NO_REF
 This makes sure that the buffer is not reffed another time when
 storing it in the GstVideoFrame, keeping it writable if it was writable.

-Use new GST_VIDEO_FRAME_MAP_FLAG_NO_REF to replace the old one because it's kind of ugly.

-Don't ref buffers twice when mapping

(From OE-Core master rev: a618f60675dbcc6568d6b9bdee015456cef78a77)

(From OE-Core rev: b75f09af7c4bfa023299c4f82bd6c3f781b93354)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:35 +01:00
Yuqing Zhu
29ef78c85a gstreamer1.0-plugins-base: Update video alignment after video alignment
Video buffer pool will update video alignment to respect stride alignment
requirement. But haven't update it to video alignment in configure.
Which will cause user get wrong video alignment.

(From OE-Core master rev: d0b5780125926eb33cc82f17c679e16e64312478)

(From OE-Core rev: e2eeca08011abedcba0be8c72dd68557066d4776)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:35 +01:00
Yuqing Zhu
78fa7de4f2 gstreamer1.0-plugins-base: Handle audio/video decoder error
When there is input data and no output data to the end of the stream, it will
send GST_ELEMENT_ERROR and quit from playing.
The patch comments the GST_ELEMENT_ERROR() and just add GST_ERROR_OBJECT()
information instead.

(From OE-Core master rev: 0690a52bf48543351cdc85d2b3c8068d54b51768)

(From OE-Core rev: 0549cb132cbe457dc66f5e8f3df4f61450cb180a)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:34 +01:00
Yuqing Zhu
ad872f2757 gstreamer1.0-plugins-base: Bug fix for id3demux issue
Use g_utf16_to_utf8() instead of g_convert to fix the issue that
id3 tags utf16 charaters cannot be extreacted in id3demux when try
to get the id3v2 tag such as TIT2, TALB etc.

(From OE-Core master rev: 9f8c49862ee67f7f618f102f29f067ec2d712136)

(From OE-Core rev: f8a2ecb6995fdafef175fc084df6ab2d06335764)

Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:34 +01:00
Joshua Lock
baab91ee8c lib/oe/package_manager: fix opkg feed generation
The insert_feed_uris() method of OpkgPM was creating an initial
entry in the feeds list which pointed to the root of the ipk
directory, however the on-device package manager can't consume
this feed resulting in runtime errors - therefore we remove the
code to generate that initial feed uri.

(From OE-Core master rev: 18e5dcfc610a255e490e4425f11213b8e14c6e00)

(From OE-Core rev: 886a31054808f40b563b7ff5f402f3f0d115759a)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:33 +01:00
Joshua Lock
f22f5b2e52 cairo: make xlib and libxcb dependencies explicit
(From OE-Core master rev: 963ee40b6653741af9a22af7a01ad31bd6ca97a9)

(From OE-Core rev: e4cb0bf63b74c3b5c29850452248c8f4ad09bda7)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 21:19:33 +01:00
Aníbal Limón
cd2c9acdbd license_class: Fix choose_lic_set into incompatible license
Use canonical_license when doing evaluation of license expresion
since INCOMPATIBLE_LICENSE are already canonized.

[YOCTO #8080]

(From OE-Core rev: 64a4faf66f6d28acf575307079c1843a70efb71c)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-20 11:26:44 +01:00
Reinette Chatre
08f9fbbc97 perf: fix build breakage on kernels after 4.1
A recent commit fixed perf build failures with a change that duplicates
a fix that can be found in kernels after 4.1. Unfortunately there is a
conflict between these two fixes and we see perf build failures when
building perf in kernels that contain the fix already. The problem is
that the fix from the recipe modifies the location of .config-detected
to $(OUTPUT).config-detected. In a 4.2 kernel the location will be
changed to $(OUTPUT)$(OUTPUT).config-detected.

We change the recipe to require a space in the pattern to only change
kernel sources that do not already place file in $(OUTPUT).

The recent commit that introduced the build failure is:

   commit ea9016b60b
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Sat Jul 25 14:37:58 2015 +0100

        perf: Fix config file conflict with 4.1 kernels

        If you setup mutlitlibs and then:

        bitbake perf libb32-perf
        bitbake perf libb32-perf -c cleansstate
        bitbake perf libb32-perf

        you will see races where the two builds get confused about which directory
        they should be using and they corrupt each other.

        The issue is that .config-detected is created in ${S}, not $(OUTPUT).
        We can fix this by moving the file to $(OUTPUT).

        [YCOTO #8043]

        (From OE-Core rev: 00608cffffb586e8d2a2075117e710113c471448)

        (From OE-Core rev: 57df1ebd910e42af47a0039830a60f41a3bd29b6)

        Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

The commit in the kernel source that fixes the problem from kernel side is:
    commit 642273795fa81da11290ffa90bce6ff242f2a7bb
    Author: Aaro Koskinen <aaro.koskinen@nokia.com>
    Date:   Wed Jul 1 14:54:42 2015 +0300

        perf tools: Create config.detected into OUTPUT directory

        Create config.detected into OUTPUT directory instead of source
        directory.

        This fixes parallel builds that share the same source directory.

        Signed-off-by: Aaro Koskinen <aaro.koskinen@nokia.com>
        Acked-by: Jiri Olsa <jolsa@kernel.org>
        Cc: Paul Mackerras <paulus@samba.org>
        Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
        Link: http://lkml.kernel.org/r/1435751683-18500-1-git-send-email-aaro.koskinen@nokia.com
        Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

(From OE-Core rev: 6546771a502a09c63e33679be8784818be0ef93b)

Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-12 15:43:36 -07:00
Martin Jansa
5954c4e593 mesa: respect MESA_EGL_NO_X11_HEADERS even with x11 in PACKAGECONFIG
* commit a5ebdb6ad8e4f94ac819275d55575230e057e4ae
  Author: Valentin Popa <valentin.popa@intel.com>
  Date:   Tue Feb 18 13:32:16 2014 +0200
  Subject: mesa: upgrade to 9.2.5

  introduced this do_install_append, but doesn't explain why it doesn't
  respect MESA_EGL_NO_X11_HEADERS flag anymore.

  Not respecting MESA_EGL_NO_X11_HEADERS breaks any build which is using
  qtdeclarative+egl in distribution which has x11 in mesa PACKAGECONFIG
  (e.g. my bitbake world builds).

  The problem is that qtdeclarative is using "None" symbol in
  QSGTexture::Filtering enum, it's possible to rename it in qtdeclarative,
  but it's quite invasive and changes qtdeclarative public APIs, see:
  31aa85787a
  so it was rejected by upstream and I don't want to maintain it in
  meta-qt5 - changing public API in OE build is even worse than if upstream
  does it.

* This change returns MESA_EGL_NO_X11_HEADERS flag so it's relatively
  easy to resolve this conflict in such setups by preventing Xlib.h
  inclusion.

(From OE-Core rev: e5bf7aeac6f6855040e462d0b7cea8c4ea64805a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Tobias Olausson <tobias.olausson@pelagicore.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
Tobias Olausson
9d9cc9dfbc Revert "mesa: fix do_install_append"
The commit changed an #ifdef to #if defined(), but the source
code for 10.4 branch of mesa still uses #ifdef.

This reverts OE-Core commit 12e467f436fbc22f274558c753f0ac9756ce1071.

(From OE-Core rev: 3eaaa488c811b6a8f7b855f9f2a666d106dbe433)

Signed-off-by: Tobias Olausson <tobias.olausson@pelagicore.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
Kevin Hao
4b824d5bed u-boot: fix extern inline build errors for gcc 5
The gcc 5 change its default standard from gnu89 to gnu11. These two
standards do have different semantics for inline functions. And the
gcc 5 will emit the following errors on the "extern inline" functions:
    arch/powerpc/cpu/mpc8xxx/fsl_lbc.o: In function `ld_le16':
    ./arch/powerpc/include/asm/byteorder.h:12: multiple definition of `ld_le16'
    arch/powerpc/cpu/mpc8xxx/fdt.o:./arch/powerpc/include/asm/byteorder.h:12: first defined here

Fix these build errors by using "-fgnu89-inline" to enforce the gnu89
inline semantics as suggested in [1].

[1] https://gcc.gnu.org/gcc-5/porting_to.html

(From OE-Core rev: a1c83bb5556837d31d934b9af130cdbac19d5e97)

(From OE-Core rev: c07aaa7214ac7e0244ee1b5987dbd2dda5aab286)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
André Draszik
3ff9e84883 opkg-utils: use ${bindir} instead of hardcoding /usr/bin
(From OE-Core rev: 48e04a93c357fb494470d2f175e644a6f43a7d63)

(From OE-Core rev: 65ea72434fe227374147041b4b5fff19d8a18efb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
André Draszik
01a50376df run-postinsts: use ${localstatedir} instead of hardcoding /var/lib
(From OE-Core rev: 48d735a8938ec7c49754a57019182ebcd9a2d8b6)

(From OE-Core rev: dcfe46aab5ceae780dda52c5bfae38b8918c4614)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
André Draszik
7e9d0f0c7d initscripts: urandom: respect ${localstatedir} instead of hardcoding /var
(From OE-Core rev: 5f3f4196988675e9be5aea8eac56687641b90c10)

(From OE-Core rev: ab9bae919489c22d1969fbb33a5dbc8e1c432847)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
André Draszik
65dfd5efd5 opkg: read config file from ${sysconfdir} instead of /etc
Opkg's configure script doesn't use the value from --sysconfdir to determine
the location of the conf file, it uses the value from --with-opkgetcdir

(From OE-Core rev: d32f7f86b5d2b48222bdaada2697cd5e23cfe1c9)

(From OE-Core rev: dcda6e1e7b95f13dc4a9bb136e6a31c46c76ea9e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
André Draszik
fac23dfd45 rsync: use ${sysconfdir} instead of hardcoding /etc
(From OE-Core rev: 3bf20e3a67099f54a20c6534fea5db169c63dbec)

(From OE-Core rev: 7f76d444286cf39c58308dde2fb9eed0fee78895)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:45 -07:00
Zhixiong Chi
66941f0c08 dhcp: fix installed not shipped warning for lib32
Modify the dhcp.inc with using the variable ${PN} instead of direct
packagename, so that the content will not be override after expanding
while we build the lib32-dhcp package with FILES_${PN}-xxxx_append.

(From OE-Core rev: c758dcc3109a5b491d13373073214bf526943497)

(From OE-Core rev: 7436d12c9b40502a5e1ec670d76cc9ab755cbaba)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Alejandro Hernandez
13e7544ae9 opkg: solve inconsistency of using different lists directories
Default behavior of opkg was to use ${OPKGLIBDIR}/opkg/lists;
but in our recipe we modify it to ${OPKGLIBDIR}/opkg/${OPKGLIBDIR}/opkg/,
when appending package-management to IMAGE_FEATURES these lists are
populated during build time (using the default directory),
but since our config was different these populated lists were never used at runtime,
this patch solves this inconsistency by using default behavior for both build time and runtime.

[YOCTO #6966]

(From OE-Core rev: a71b29ffc514892ca394fc8de275294b910586f0)

(From OE-Core rev: f49fc4fc5c5f150dad9807d92239ada885bca5fd)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Roy Li
e2ca16c6d3 alsa-utils: assume the alsa storing is success if machine has no sound card
(From OE-Core rev: eb14c2ea542cf1209a7b743c27a64f82dc907991)

(From OE-Core rev: 9ebfc72eb5674d2f36479ee7ee394a3a6e4fd95b)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Li Zhou
f9a8370345 tzdata: Add marking for config files in recipe
The tzdata recipe does not mark the /etc/timezone file and
/etc/localtime link as configuration files. An on target update would
then overwite the user modified versions of those files.
Add those files in CONFFILES_${PN}.

(From OE-Core rev: 1eefbf6bdf5e720767673a754e95c62f2ffcc82f)

(From OE-Core rev: 75c8f094ddd652e6f91c8f879537c10ec08b7043)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Ed Bartosh
6dd71217a8 wic: Make sure file exists before removing it
Bunch of os.remove calls were added to the partition.py lately.
They're causing wic to fail with OSError: [Errno 2] No such file or directory
if file doesn't exist.

Added check for file existence to all recently added calls of
os.remove. That should fix this regression.

(From OE-Core rev: 75162b05b5ad9aac307f7911caecb2b8a017acbf)

(From OE-Core rev: 41f08393643ceb2607cad44d2c485b3dc9da7ec9)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Alexandre Belloni
417c86b42b wic: remove intermediate partitions
Remove intermediate partitions that may have been created by a previous
wic invocation. Those partitions are causing issues on some systems. In
particular vfat partition creation is hanging on mcopy execution on
Fedora.

(From OE-Core rev: 8d2587d87601a7ff0fad840dabc07d66363b2810)

(From OE-Core rev: 8bea23a89968db3d44b9fae2ceb242dfd89a4880)

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Richard Purdie
ea9016b60b perf: Fix config file conflict with 4.1 kernels
If you setup mutlitlibs and then:

bitbake perf libb32-perf
bitbake perf libb32-perf -c cleansstate
bitbake perf libb32-perf

you will see races where the two builds get confused about which directory
they should be using and they corrupt each other.

The issue is that .config-detected is created in ${S}, not $(OUTPUT).
We can fix this by moving the file to $(OUTPUT).

[YCOTO #8043]

(From OE-Core rev: 00608cffffb586e8d2a2075117e710113c471448)

(From OE-Core rev: 57df1ebd910e42af47a0039830a60f41a3bd29b6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Bruce Ashfield
3b732f01c9 perf: fix build (and feature tests) for 4.1-rcX
The way that perf detects features has changed/moved via commit e6c76d620
[perf build: Move feature checks code under tools/build].

This code movement resulted in the definition of CC being dropped, and
in turn the passing of --sysroot not part of the build.

This results in feature tests failing with errors such as:

  In file included from test-pthread-attr-setaffinity-np.c:1:0:
  sysroots/x86_64-linux/usr/lib/x86_64-poky-linux/gcc/x86_64-poky-linux/4.9.2/include/stdint.h:9:26:
  fatal error: stdint.h: No such file or directory
  # include_next <stdint.h>
                          ^
  compilation terminated.

While the fix is going upstream, we can modify the perf recipe to add
the definition of CC into the Makefile, and we'll continue to work on
patched and unpatched kernels.

Upstream-status: Pending

(From OE-Core rev: 46f842039422aa35f62b03f11b648c02980ea1b1)

(From OE-Core rev: bff717cb51bfe4a5fb080ebfb6a5e9e0423855f3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:44 -07:00
Kai Kang
f81b891959 volatile-binds: correct path of command umount
It calls /sbin/umount to stop service var-volatile-lib. But umount is
installed into directory /bin. Correct it.

(From OE-Core rev: 55851c6f389cb027496c96f6e0609c8892032e4d)

(From OE-Core rev: a56df1b057b6d77861ac73db6252472ca7e35d08)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Martin Jansa
411a70dea3 connman-conf: fix SRC_URI_append
* add leading space so that it works even with some .bbappend adding
  additional files to SRC_URI without trailing space

(From OE-Core rev: 0f282f1d4946ac6e81959c66172c115405632a26)

(From OE-Core rev: a8dd5d64c2ff2fe8bb4d39260ed82f6bf0d0277f)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Roy Li
4e224f3922 bootchart2: add runtime dependency
Bootchartd needs the command lsb_release and pidof to run, pidof maybe
provided by sysvinit or procpus;
To native bootchart2, only pybootchartgui is used, and which is not needed
both pidof and lsb_release

(From OE-Core rev: d0d641bf8cbf96d7c30dfcbdf2572d2709b56858)

(From OE-Core rev: a8f64210776ee2399d25c6249b4deb715938c4f9)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Chen Qi
2f2b0e8428 nfs-utils: fix to start nfs-server correctly in systemd
Add /etc/modules-load.d/nfsd.conf so that the system loads nfsd at start-up.

Add proc-fs-nfsd.mount systemd unit file because it's needed for nfs server
to start correctly.

After this change, in a systemd based image, we can use `systemctl start
nfs-server' to start the nfs server and things would work correctly.

(From OE-Core rev: 3d4380bb36eb108dc75fee7215b615f7800b0990)

(From OE-Core rev: 27633405aa3509c207d986b434d430f2cd380541)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Joshua Lock
c9f56848e0 systemd: fix immediate unmount of mountpoints not in fstab
Systemd 219 immediately unmounts any mounts which don't exist
in fstab. See FDo bug #89383:
https://bugs.freedesktop.org/show_bug.cgi?id=89383

Patch from Fedora:
http://pkgs.fedoraproject.org/cgit/systemd.git/commit/?h=f22&id=9bbe0e92dc59d5a42258c729b105a7d9901eb35e

(From OE-Core rev: a708514a58fd609b7f8c1a4bd4ab35902681f59b)

(From OE-Core rev: 0cd5a0d5445ff95a8ef4abe24fef705957935e81)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Thomas Perrot
d46acb9296 volatile-binds: Set S to prevent QA warning
Also need to correct the path to COPYING.MIT.

(From OE-Core rev: 4c46a6813772d8d35dd1432dbc59f9ff4b3bd074)

(From OE-Core rev: 82661c1cbc619956bb71fc2ee0f10b4048435414)

(From OE-Core rev: 8a861d4cf062591cf565ec42f3a356f2d0354fa0)

Signed-off-by: Thomas Perrot <thomas.perrot@tupi.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Thomas Perrot
ef7eb171a4 systemd-serialgetty: Set S to prevent QA warning
(From OE-Core rev: c3c240138a38799b611fcc695a51e0c188aa1327)

(From OE-Core rev: 344ed7576603a8202c08a6d28477ef43774a62a8)

(From OE-Core rev: 12d210928c12671dcc98d388f957455e6590c086)

Signed-off-by: Thomas Perrot <thomas.perrot@tupi.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Joshua Lock
65a51fe6bf wpa-supplicant: Apply fix CVE-2015-4142
The cherry-pick from the master branch added the patch file but didn't apply
it in the recipe.

(From OE-Core rev: 375674fa5f2534198036be60972d39e1e6793d3a)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-09 16:37:43 -07:00
Richard Purdie
08d3259041 dpkg: Fix for Fedora22 and new versions of tar
They managed to 'break' tar. Again. Sorry, they fixed a regression
which broke dpkg-deb.

The addition of:
http://git.savannah.gnu.org/cgit/tar.git/commit/?id=163e96a0e619a900eab6de827c7c5749ecc9d3f2
("Bugfix: entries read from the -T file did not get proper matching_flag.")
means that the no-recursion option gets lost. This leads to many files getting included
multiple times, along with files which shouldn't be there.

The commit message is horrendous. The patch actually makes the option positional
(as documnted since 2003) and therefore doesn't affect the input from the -T option.

Moving the --no-reursion option to earlier in the command avoids the bug.

The bug was not present in tar 1.28 however it has been backported in at least
Fedora 22 and heading into Fedora 21.

Redhat reports of issue:
https://bugzilla.redhat.com/show_bug.cgi?id=1230762 [tar]
https://bugzilla.redhat.com/show_bug.cgi?id=1241508 [dpkg]

Discussion of bug in upstream tar:
http://www.mail-archive.com/bug-tar@gnu.org/msg04799.html

[YOCTO #7988]

(From OE-Core rev: 6be698b7270f73f40d38713ecf13f12aec0ced61)

(From OE-Core rev: 1c916ddebc3009d3817359144b02745c3ecbd5c4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-27 12:25:42 +01:00
Jan Wetter
83aa565d93 openssl: upgrade to 1.0.2d
This upgrade fixes CVE-2015-1793
Removed openssl-fix-link.patch. The linking issue has been fixed in openssl.

(From OE-Core master rev: 631632addbc81b06b7accfca8f8a9871d6b09111)

(From OE-Core rev: 7b151426fb8a69cfdd25b7f1de2b506cbcffcac6)

Signed-off-by: Jan Wetter <jan.wetter@mikrom.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-15 15:25:40 +01:00
Roy Li
0b506a72f4 openssl: upgrade to 1.0.2c
upgrade to fix the CVE: CVE-2015-1788..CVE-2015-1792 and CVE-2014-8176
remove a backport patch
update the c_rehash-compat.patch

(From OE-Core master rev: 5a70e45b8c6cb0fa7ea4fe1b326ad604508d00cb)

(From OE-Core rev: 7bc77f508a6ba6a409568be818a1795770261dc6)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-15 15:25:40 +01:00
Roy Li
ee88b51cf2 unzip: drop 12-cve-2014-9636-test-compr-eb.patch
12-cve-2014-9636-test-compr-eb.patch is same as unzip-6.0_overflow3.diff,
is to fix CVE-2014-9636

(From OE-Core rev: 43cc77f6dd1615ec6797a159647a1ad677c1df23)

(From OE-Core rev: 0a849983d066cd1beee64cef94b2c8421275b45c)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:17 +01:00
Roy Li
3773a7d16c unzip: fix four CVE defects
Port four patches from unzip_6.0-8+deb7u2.debian.tar.gz to fix:
     cve-2014-8139
     cve-2014-8140
     cve-2014-8141
     cve-2014-9636

(From OE-Core rev: 2bf9165f5db5edd946a064dc5e877f97817dbae0)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:17 +01:00
Richard Purdie
e4453c98bd oeqa/bbtests: Fix to ensure DL_DIR is set
write_config overwrites the config rather than appends to it, so
ensure we write both variables in one go.

(From OE-Core rev: c94ba6160d5965d4d2071154b43112eb87f4c898)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:17 +01:00
Richard Purdie
23c8b861d1 oeqa/bbtests: Fix race over DL_DIR and SSTATE_DIR
Running "-c cleanall" on shared DL_DIR and SSTATE_DIR is antisocial.
It leads to hard to debug races where we wonder why files disappear
and reappear from those directories.

Fix this by using a specific set of directories for these tests. This
avoids a long standing bug on the autobuilder where aspell and man
sources would disappear.

[YOCTO #6276]

(From OE-Core rev: 6b089c4a79dc3aae00c8a6e7ab0f6ba4b4b5f138)

(From OE-Core rev: f1447c256e027553442cf507e217323f7868000c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:17 +01:00
Mariano Lopez
a77d2cc81c report-error.bbclass: Added file syncronization.
errorreport_handler would fail if several errors are
triggered at the same time because of two proccess
writting to the same file. This patch add the required
syncronization to handle concurrent process.

[YP #7899]

(From OE-Core rev: c7bff5e7fdd2cbf6f22bfe9a74ceb6e19ef3b5d8)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:17 +01:00
Saul Wold
43969db1c7 rootfs.py: Add check for kernel modules before running depmod
Add a check for kernel modules so we don't un-necessarily run the depmods, this
will also handle the case with linux-dummy does not place the kernel-abiversion
since it also does not have kernel modules.

[YOCTO #7884]

(From OE-Core rev: 2b87991be82f4bcf76f8cc3a79bcefc225bae8ba)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
fan.xin
8f8327d99b wpa-supplicant: Fix CVE-2015-4142
wpa-supplicant: backport patch to fix CVE-2015-4142

Backport patch to fix CVE-2015-4142. This patch is originally from:

http://w1.fi/security/2015-3/0001-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch

(From OE-Core rev: 61f2a6a18dcda22d7b0e236f9150674bff2764a7)

(From OE-Core rev: 844eecf6fdb6c1a835e5c85ba5496ac9182f503b)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Paul Eggleton
08607f7864 oe-selftest: devtool: fix test_devtool_update_recipe_git
Make this test work after recent changes to the mtd-utils recipe, and
hopefully make it robust against any future changes.

(From OE-Core rev: 5be62624a6537659f9f6229c82762da45909f902)

(From OE-Core rev: fd4b4390af0bcbfdaee0d4ddbc6766d7775c52d0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Khem Raj
2468978cb4 mtd-utils: update to latest and fix static inlining
use static storage class instead of extern for inline functions
and remove duplicate definitions as a result

Change-Id: I72e8c5f19dff656c18f719d1e9e2ca697c9a856f
(From OE-Core rev: 1a9d92b9891c06ede91af05d516a429e1f81777d)

(From OE-Core rev: efada40a7a785446f9c46aa8a7d0e1c7407376e9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Khem Raj
5bda039a8e u-boot-mkimage: Backport fix from upstream to fix build with gcc-5
Change-Id: I5322f1ff8653009b45ddee1a2d3a0d96584d3327
(From OE-Core rev: 54fc9c0d1cc5cafa44e4b392ef087900e4102464)

(From OE-Core rev: 4de87a731b71a1764ec53ff2782c184a69638fc0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Andreas Oberritter
8fd70a3d70 gdb: Add missing runtime dependency for python option
With python enabled, gdb refuses to start without core
python modules:

| Could not find platform independent libraries <prefix>
| Could not find platform dependent libraries <exec_prefix>
| Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
| ImportError: No module named site

It also complains if python-codecs is missing.

(From OE-Core rev: 646adb4d90030970f6e2136f65b51b3c8b0c9d5c)

(From OE-Core rev: c1c2c9c7f20b289928c94beb7adfe03f03c4b64e)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Kang Kai
0e2c483f7d gst-plugins-bad: fix CVE-2015-0797
Backport patch from debian to fix CVE-2015-0797.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=784220
https://sources.debian.net/data/main/g/gst-plugins-bad0.10/0.10.23-7.1+deb7u2/debian/patches/buffer-overflow-mp4.patch

Backported to oe-core fido from meta-oe/meta-multimedia:

http://git.openembedded.org/meta-openembedded/commit/?id=6cb3b63559bf33946f1c5d43626413d9a651e83f

(From OE-Core rev: 7aa1090d22459bff1159f8193b60166a079d5bd6)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:16 +01:00
Andre McCurdy
010a940ba1 gnutls: use pkg-config to locate zlib
AC_LIB_HAVE_LINKFLAGS can sometimes find host libs and is therefore not
robust when cross-compiling. Remove it for zlib and use PKG_CHECK_MODULES
instead.

(From OE-Core rev: 78a0e916882a747c267808c08ab8bc615198b5a8)

(From OE-Core rev: aaeacca50808e12eb81a373972c802d3f01c01af)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Richard Purdie
5977435538 lib/devtool/standard: Fix patch cleanup
If patches fail to apply with git, quilt it used as a fallback. If that
happens, the code in this class is meant to handle cleanup of these patch
files. In the case where ${S} is a subdir of the git tree, the code doesn't
correctly set the patches directory.

This change correctly sets the patches directory (which is different to the
location of the git repository).

[YOCTO #7911]

(From OE-Core master rev: de6e0f3af5e858960676ea291036e59105fd806f)

(From OE-Core rev: 03dbc60c165a511894d1ae10ac1d90c1fadcc268)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Saul Wold
5cdbf0ad06 binutils: Add -momit-lock-prefix support
This patch is needed for certain cpus and has been accepted into upstream

(From OE-Core rev: 3371b42a4ac5becb063157f1b258918601211ebf)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Richard Purdie
33973cd841 lib/oe/patch: Fix git patch application for source in subdirectory
Similarly to:
http://git.yoctoproject.org/cgit.cgi/poky/commit/meta/lib/oe/patch.py?id=f205ccaf48ac36f4b26efc4aeb2e9d2939b28646
we need to fix patch application for source which is in a subdirectory.

Passing "." as the git directory or work-dir appears to work (or is ignored)
in some versions of git but does not work in others, probably quite correctly.

Since we have reporoot from the above patch, pass this in directly.

This bug caused this sanity test failure on some machines:

FAIL: test_devtool_modify_git (oeqa.selftest.devtool.DevtoolTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 390, in test_devtool_modify_git
    self.assertEqual(result.output.strip(), "", 'Created git repo is not clean')
AssertionError: '?? util/mkelfImage/patches/' != '' : Created git repo is not clean

since git apply would fail, it would then fall back to quilt
and the git tree would be left unclean.

[YOCTO #7911]

(From OE-Core rev: 91d76e632336d6af96f24bcf92be25f41a216856)

(From OE-Core rev: e35e40c95a067376634d7b019f4c1d3db724ceae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Richard Purdie
cfb195ae80 oeqa/parselogs: Whitelist qemumips64 runtime error
Similarly to qemumips, ignore these errors upon bootup so that
we have a good QA baseline for new errors.

(From OE-Core rev: bb404d1727e6744e52d01d3c52bef3266bd3d1ac)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Richard Purdie
55eee7ae3c testimage: Don't test xorg/vnc on qemuarm64
The qemuarm64 machine doesn't have graphics so don't test xorg/vnc
as they won't work.

[YOCTO #7103]

(From OE-Core rev: 89f085fcabbacf524bfa84328e41fd95492f1ffa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:15 +01:00
Richard Purdie
0ece3d8ab5 oeqa/parselogs: Whitelist qemuarm64 runtime errors
The qemuarm64 machine doesn't have graphics so whitelist the
X server failures to start.

(From OE-Core rev: 716d4a3525d19a15f5506c4ceff80fa5b4f55342)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:14 +01:00
Leonardo Sandoval
1137495bbd terminal.py: Allow devshell/menuconfig on recent gnome-terminal
Recent versions of gnome-terminal does not support non-UTF8 charset:
https://bugzilla.gnome.org/show_bug.cgi?id=732127 as a result, devshell and
menuconfig tasks silently hang  (error found on trace log of 'strace -f -v
-s 8192 -e write=2 bitbake -c devshell quilt-native': "Non UTF-8 locale
(ANSI_X3.4-1968) is not supported!"). As a workaround, clearing the LC_ALL
environment variable so it uses the locale. Once fixed on the gnome-terminal
project, this should be removed.

Tested on gnome-terminal versions:

       GNOME Terminal 3.4.1.1
       GNOME Terminal 3.14.2 (Default on Ubuntu 15.04)

[YOCTO #7791]

(From OE-Core rev: e0807cdfaa8bcb7cbf08386c3696883a7df26f46)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 13:07:14 +01:00
Richard Purdie
58b038b778 bitbake: cooker: Fire BuildCompleted before finishing the command
Some handlers hook on BuildComplete so it avoids certain event races
to finish the command after the BuildComplete event is sent out.

This means the UI is available to handle events until the command
completes.

What appears to be a race on one of the sanity tests for event handlers
triggered this change although the failure is hard to reproduce.

[YOCTO #7921]

(Bitbake rev: ac66fac162e68b568f986fe1917772e61c982f8e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-29 09:49:12 +01:00
Richard Purdie
f6430d42b4 subversion: Fix subversion-native on Fedora22
Similarly to:
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=9b19d6548a345009a6de79a6820c07a72054d961

we also need to fix the subversion-native case with gcc5 by using
the same fix to the BUILD_CPPFLAGS.

(From OE-Core rev: a5e7a1e597e7bbe3bbc547f43a89d00a8a9a9924)

(From OE-Core rev: 7d445547df528aa9e5bfb85568a7270e27f633ef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:45:42 +01:00
Khem Raj
b24aeb7b42 subversion: Add -P to CPPFLAGS
see https://gcc.gnu.org/gcc-5/porting_to.html

we need to stop the preprocessor from generating the #line directives
or we run into issues like

| checking for apr_int64_t Python/C API format string...
| configure: error: failed to recognize APR_INT64_T_FMT on this platform
| Configure failed. The contents of all config.log files follows to aid
debugging
| ERROR: oe_runconf failed

Rightly subversion should be fixed but lets leave that to subversion
folks

Change-Id: I02a89798ff949f79967ab0a73adcddaa4218662d
(From OE-Core rev: 7793b1c425077ed6ed11a9bc2a8b1b96612b1c96)

(From OE-Core rev: a240d28492f05c22198dd4b20c11c0d510f0c897)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:45:42 +01:00
Chen Qi
1cd4b260b5 bitbake: bitbake-diffsigs: consider the situation where sigdata and siginfo files having the same hash values
For now, `bitbake-diffsigs -t <recipe> <task>' doesn't work. It always outputs
nothing.

The problem is that bitbake-diffsigs are comparing sigdata and siginfo files
that have the same hash value. This is not what we want. These two files are
actually duplicates considering the purpose of bitbake-diffsigs. So we need
to remove one of them so that bitbake-diffsigs could actually compare the
correct signature files.

(Bitbake rev: e14873d6847fae8abd3baf4bdc804d52d3b0c4f5)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Marcin Smoczyński
5ce20aeb02 bitbake: fetch/git: Fix uri in git checkstatus
Pass proper repository url without arguments after a semicolon.

Executing checkuri on a rule with git repository in SRC_URI does
not report errors when working offline because wrong repository
url is passed to the ls-remote command. For example
"bitbake -c checkuri glibc" command executes:
"git -c core.fsyncobjectfiles=0 ls-remote git://sourceware.org/git/glibc.git;branch=release/2.21/master"
command in a shell subprocess to determine if url is valid.
Shell subprocess executes in fact 2 commands:
"git -c core.fsyncobjectfiles=0 ls-remote git://sourceware.org/git/glibc.git"
and
"branch=release/2.21/master"

First one returns 127 or 128 depending on error but second one
returns 0 because it is just env variable setup. Therefore we're not catching
connection error.

[YOCTO #7558]

(Bitbake rev: cb8224f0c73c06879783665e2de39ecca7f6a350)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Jagadeesh Krishnanjanappa
9c245f1d79 runqemu-internal: set mutual exclusiveness for serial and nographic options
Use "-nographic" option only if "serial" option is not
specified. Otherwise we get below error when
'runqemu <kernel_image> <rootfs_image> serial' is executed,

(snip)
QEMU 2.2.0 monitor - type 'help' for more information
(qemu) qemu-system-aarch64: -serial stdio: cannot use stdio by multiple
character devices
-- CUT --

(From OE-Core rev: 8b0527951ab71c4a4dc4d1238cd9e9e60a6eb5ee)

(From OE-Core rev: c3a44794de957b216aaea19da371657194c86fc3)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Jagadeesh Krishnanjanappa
d3959f672a runqemu-script: define console for qemuarm NFS booting
Add console=ttyAMA0,115200 as one of the boot parameters
for qemuarm, in order to print bootlog messages on the
console.

(From OE-Core rev: 2d2db8f517ea719f097c957559175a07ecee82ad)

(From OE-Core rev: 7113153c50e0d9bb04c6b422be2c75152f3105c9)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Jagadeesh Krishnanjanappa
e9c47914f2 runqemu-internal: add support to boot arm64 qemu target via NFS
Add required boot parameters inorder to boot arm64 qemu
target via NFS

(From OE-Core rev: 0b614317b38b933a4845cd006b0ad734adfa559d)

(From OE-Core rev: 4311b8f59b2a551f2928a4705d4e85901a39995e)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Jagadeesh Krishnanjanappa
fed3899694 runqemu: fix MACHINE being detected as qemuarm for qemuarm64 kernel image
Basically, runqemu script autodetects MACHINE type based on the
kernel image name; if MACHINE name is not specified. Since 'qemuarm'
string is common in both qemuarm amnd qemuarm64 kernel image names, the
MACHINE type is considered as 'qemuarm' even when qemuarm64 kernel
image name is given in command line.

(From OE-Core rev: 388b243668a5c28fb69b760ce9be5adbc85352d8)

(From OE-Core rev: eeae1fb7afd30174616cfec6204b4c97c94879ca)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:19 +01:00
Aníbal Limón
6ae42d8851 classes/license.bbclass: Improve generic license copy validation.
Remove + char in any position for cover cases when license has
the form like GPL-2.0+-with-OpenSSL-exception.

[YOCTO #7584]

(From OE-Core rev: 9cff9d4e8c8ca7d6f41c4df16e484087213ae990)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Alejandro Hernandez
f76f0555b9 python3-ctypes: Fix cross compilation for arm targets
When cross compiling for arm targets ctypes compilation fails because
it uses _sysconfigdata from the HOST, this patches makes it use the
one from TARGET fixing compilation of this module

[YOCTO #7873]

(From OE-Core rev: a676ee838aae1ac05fa6542d1b0791d61ff9f05f)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Jonas Göransson <jonas.goransson@qmatic.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Jussi Kukkonen
affbc3f649 dbus: CVE-2015-0245: prevent forged ActivationFailure
Fix CVE-2015-0245 by preventing non-root and non-systemd processes
from fooling the dbus daemon into thinking systemd service activation
failed.

(From OE-Core rev: 961aaa50ed363a680b08be77a44ac13ce984b2f3)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Mark Hatle
919c7bf5c6 rpm: Fix lua 'print' statement capture
The print statement should capture the output and send it to the script
processing engine, and not display it directly to the screen.

Note, this is only a bug if 'lua' support has been enabled in the RPM
recipe's PACKAGECONFIG.

This patch is from: http://rpm5.org/cvs/patchset?cn=17671

(From OE-Core rev: 6bc0e8207d0e7b1d6f2eac8ed1b75a3fd9fab87b)

(From OE-Core rev: 7d4230b7eb7aa09087a6267dd6e686f713ac6f72)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Leonardo Sandoval
e4f3e5440b rpm: Fix CVE-2013-6435
Backport to fix CVE-2013-6435. Description on [1] and original
patch taken from [2].

[1] https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2013-6435
[2] https://bugzilla.redhat.com/attachment.cgi?id=956207

[YOCTO #7181]

(From OE-Core rev: 6bf846ed5ccd1a4d01b36630708b2b9aa9e69ed5)

(From OE-Core rev: 0e26cd974a97f5a8543cb4153a83d1fa977a3468)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Leonardo Sandoval
274d571316 rpm: Fix CVE-2014-8118
Backport patch to fix CVE-2014-8118. Description is on [1] and
original patch taken from [2].

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1168715
[2] https://bugzilla.redhat.com/attachment.cgi?id=962159

[YOCTO #7181]

(From OE-Core rev: 0a1f924157cb75d0f67cf534762c89dc8656d352)

(From OE-Core rev: e90be120d2751ac95c88abf7ba7bcac2c8fe7d0b)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Roy Li
f3324915ff babeltrace: Fix invalid pointer free with trace collection
This fixed the bug https://bugs.lttng.org/issues/790

(From OE-Core rev: 8152bcadba8581f75822b75e13c2a43dd6464cd3)

(From OE-Core rev: 8a406a67704bc81c104c18581ba11c5e99a7e0ca)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Alejandro Hernandez
e834984ce7 distutils: regenerate pyc files after being modified by sed
py files are edited by sed and therefore *.pyc files are recreated on first boot, but if you have a read-only filesystem this is not possible. This patch creates pyc files directly after the py files are modified.

[YOCTO #7722]

(From OE-Core rev: a0460ac8a2595d4b064b483ca1f282a255ae6411)

(From OE-Core rev: 46e9e59510e19a3ab22bdeb09f3de7bac1030f38)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Thomas Roos <roosesweb@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:18 +01:00
Joshua Lock
aa88803046 distutils-common-base: add to, don't set, FILES_${PN}
If we set FILES_${PN} and a recipe inherits other classes that
modify FILES_${PN} *before* distutils-common-base is included, any
changes to FILES_${PN} made by those classes are lost.

Instead, append the additional directories we want to include in
FILES_${PN}

(From OE-Core rev: f6478e8c73f9cfb79d1f7680b7bf3ff957eb51cb)

(From OE-Core rev: 3e5ecb970eec3ba3199d2fc2a336d310f072594c)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Richard Purdie
903cf70f3a wayland: Fix hardlink corruption issue
The way this code was working, the m4 file is hardlinked to the
copies which would be packaged and could lead to the native m4
file being used in the target packages.

By removing the file first the hardlink is broken and this avoids
corruption (since cp uses open to change the file contents).

(From OE-Core rev: 8f3be1925b9da20526a722149b03f697247ea1bf)

(From OE-Core rev: 2ac51bcace97d16ca678d85e0100611fecfd818c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Yue Tao
8045026d49 libxml2: Security Advisory - libxml2 - CVE-2015-1819
for CVE-2015-1819 Enforce the reader to run in constant memory

(From OE-Core rev: 9e67d8ae592a37d7c92d6566466b09c83e9ec6a7)

(From OE-Core rev: d1288821b709f47f48bbdb6764f1a35bf2589de7)

Signed-off-by: Yue Tao <Yue.Tao@windriver.com>
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Krishnanjanappa, Jagadeesh
60836f602a valgrind: add configure option to build only 32-bit or 64-bit components
Building both 32-bit and 64-bit binaries in valgrind at a time would
lead to following QA issue as below,

(snip)
 ERROR: QA Issue: Architecture did not match (62 to 3) on ${WORKDIR}/valgrind/3.10.1-r0/packages-split/valgrind-dbg/usr/lib64/valgrind/.debug/vgpreload_exp-sgcheck-x86-linux.so
 ERROR: QA Issue: Architecture did not match (62 to 3) on ${WORKDIR}/valgrind/3.10.1-r0/packages-split/valgrind-dbg/usr/lib64/valgrind/.debug/getoff-x86-linux
 ERROR: QA Issue: Architecture did not match (62 to 3) on ${WORKDIR}/valgrind/3.10.1-r0/packages-split/valgrind-dbg/usr/lib64/valgrind/.debug/vgpreload_core-x86-linux.so
 ERROR: QA Issue: Architecture did not match (62 to 3) on ${WORKDIR}/valgrind/3.10.1-r0/packages-split/valgrind-dbg/usr/lib64/valgrind/.debug/vgpreload_memcheck-x86-linux.so
-- CUT --

hence perform only one type of build 32-bit or 64-bit, but not both.

(From OE-Core rev: 53afa26655d0b5f75ef2dd6bccef76281a14655c)

(From OE-Core rev: cc79ca38c6f8af4f47fb1e466a836bc8764cd938)

Signed-off-by: Krishnanjanappa, Jagadeesh <jagadeesh.krishnanjanappa@caviumnetworks.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Khem Raj
179c17970a grub: Backport const qualifier fix for gcc-5
gcc-5 is stricter and complains about const to non-const
conversions, we backport the patch from upstream into 2.00

Change-Id: I17db365fdd253daaa1ab726e2a70ecad0ac7b2ae
(From OE-Core rev: ea3d48471db19a2432e4afd86df8caad51ee5166)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Martin Stolpe
e118d980da ncurses: fix native builds when host has gcc5
GCC"s preprocessor starts to add newlines which are not
handled properly by ncurses build system startin from
version 5.0.

See also: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7870

(From OE-Core rev: 3a5435b371c84ec28b6936b8c8fa6541a592d061)

Signed-off-by: Martin Stolpe <martin.stolpe@gmail.com>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
George McCollister
45d0819daf binutils: fix native builds when host has gcc5
Cherry pick upstream commit to fix -Werror=logical-not-parentheses error
when building with native gcc5.

(From OE-Core rev: b3bd0dba3139a3e79bfcebe137248c7bdcadf04d)

Signed-off-by: George McCollister <george.mccollister@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Kai Kang
4acf353ffd qt4: fix CVE issues
Backport patches to fix qt4 CVE issues:

* CVE-2015-1858
* CVE-2015-1859
* CVE-2015-1860

(From OE-Core rev: e57a090d8f806f55b99649e072b4d2dde6f036ee)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:17 +01:00
Aníbal Limón
4dd8c7e805 license_class: Add explicity avoid of CLOSED license in validations
The CLOSED license isn't a generic license it is a set and can
be any closed source license.

[YOCTO #7752]

(From OE-Core rev: 56c673af4363a9c690eabff8b1fdaa202efb95ce)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Robert Yang
a8d4f5cd2b libpostproc: pass correct libdir
When MACHINE=qemux86-64 and enable multilib:
ERROR: QA Issue: libpostproc: Files/directories were installed but not shipped in any package:
  /usr/lib
  /usr/lib/libpostproc.so.52.3.0
  /usr/lib/libpostproc.so
  /usr/lib/libpostproc.so.52
  /usr/lib/.debug
  /usr/lib/.debug/libpostproc.so.52.3.0
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. [installed-vs-shipped]

Pass the right libdir to configure as otherwise it assumes $prefix/lib
which may be wrong.

(From OE-Core rev: 7cb4ca779a01c3ce935682373fe2a5b02abc91a2)

(From OE-Core rev: 0dc77f11553b5d50cb186f2cc00df28ecea07bb6)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Lei Maohui
3716298102 cracklib:Fix an error in the patch
To fix an error in the patch.Otherwise,the dictionary would be wrong.

(From OE-Core rev: 8670b99b06ce14ed391b4713d7887af90d44a2c8)

(From OE-Core rev: 6dde232fc4943ddb55e8d895610afc39e92526d6)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Robert Yang
ed010c7a38 sysstat: DEPENDS on base-passwd
Fixed:
| install -m 644 -g man man/sa1.8 /path/to/tmp/work/i586-poky-linux/sysstat/11.1.4-r0/image/usr/share/man/man8
| install: invalid group `man'

(From OE-Core rev: 153c3dd4d4c5eab52b953901fb6bc681c349a710)

(From OE-Core rev: ddaedc9fe601469cdd5bf9e87754e8a4aa549081)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Robert Yang
3746f83469 gstreamer1.0-libav: fix build for i586 with gcc
Backport a patch from debian to fix the build for i586 with gcc, the
patch is similar to libav's
workaround-to-build-libav-for-i586-with-gcc.patch.

(From OE-Core rev: 186df51c49987b44bfcf21d133ad9fe80f0790bb)

(From OE-Core rev: 99ce2b9624f35f0e775dc9559b04322ae8e08bfc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Dave Lerner
4a2af0eaa9 valgrind: remove arm tests that don't compile
[Yocto #7453]

Corrects the original commit for the patch that removed ARM ptest CFLAGS
settings. Since the flags could be set by a user, the flags should
be kept in place during compilation.  By keeping the original up-stream
CFLAGS for the tests, then additional tests successfully compile
for all tested ARM tunings.

However, there were still two tests listed below that did not compile
for any beaglebone tuning that is valid for valgrind. With the updated
patch, the set of excluded ARM ptests and their respective build
failures are:
  intdiv - fails for all beaglebone tunings with 2 errors:
  {standard input}:(40 or 41): Error: selected processor does not
       support Thumb mode `udiv r3,r9,r10'
  {standard input}:(72 or 73): Error: selected processor does not
       support Thumb mode `sdiv r3,r9,r10'

  vcvt_fixed_float_VFP - fails for all beaglebone tunings in one of
  two ways:
    with neon tuning (-mfpu=neon) fails with Internal Compiler Error
    without neon tuning fails with 3 errors:
    {standard input}:33: Error: selected FPU does not support
      instruction -- `vcvt.f32.s32 s15,s15,#1'
    {standard input}:58: Error: selected FPU does not support
      instruction -- `vcvt.f32.s32 s15,s15,#32'
    {standard input}:136: Error: selected FPU does not support
      instruction -- `vcvt.f32.u32 s15,s15,#1'

After applying this commit, the valgrind ARM ptests compile without
errors for tunings:
  armv7[t][hf][b][-neon] cortexa8[t][hf][-neon]
where the tuning [option] was successfully compiled, both with
and without the 'option', and in combination with all other options.

(From OE-Core rev: 2fb0edcb47a14e47780d545f60885b36e71fca71)

(From OE-Core rev: 132886498816f6407416196fd5ccf8d1b8c589ab)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Yue Tao
c75869a7f8 libsndfile: Security Advisory - libsndfile - CVE-2014-9496
Backport two commits from libsndfile upstream to fix a segfault and
two potential buffer overflows.

(From OE-Core rev: 9907e20868397a9823cc1e755ee1b697da6be2f3)

(From OE-Core rev: 82b481afc21604603b9c2d6c6b4c428d445cad92)

Signed-off-by: Yue Tao <Yue.Tao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Richard Purdie
d31b9e6326 soc-family.inc: Add a default SOC_FAMILY value
Otherwise, if MACHINEOVERRIDES is expanded before SOC_FAMILY is set
(which may happen as MACHINEOVERRIDES is included in OVERRIDES) we can
see:

ExpansionError: Failure expanding variable MACHINEOVERRIDES, expression was
${@['', '${SOC_FAMILY}:']['${SOC_FAMILY}' != '']}p1022ds
which triggered exception SyntaxError: EOL while scanning string literal (MACHINEOVERRIDES, line 1)

To avoid this, give SOC_FAMILY a default empty value so it doesn't
get read as None.

(From OE-Core rev: dee005b6e1bc353230f9f27a469b2054a644e542)

(From OE-Core rev: 7c763846bca4347d6b9e8cc388ad075f00123235)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:16 +01:00
Richard Purdie
20eab30866 base: Fix license checksum rebuild problems
"MACHINE=qemux86-64 bitbake init-ifupdown; MACHINE=genericx86-64 bitbake init-ifupdown"
shows a rebuild when it would be expected. The reason is a LIC_FILES_CHKSUM which
contains file://${WORKDIR}, an absolute path which doesn't exist in the first build
but does in the second, causing a signature change and a rebuild.

Fix the problem by ignoring any file:// url which resolves since TMPDIR for
license file dependency purposes.

(From OE-Core rev: f27ddf0de23871fc72cfc31f514f0e144aaa2082)

(From OE-Core rev: d88bb3759c36f2a30550529468c8a8c511b1661c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
d7f6451ad1 oe-selftest: devtool: add a proper test to see if tap devices exist
Check up front in test_devtool_deploy_target whether the tap devices
exist and skip if not. If we don't do this we get a significantly less
comprehensible error via pexpect.

(From OE-Core master rev: 2258345e19efff7717fe19a5026ec55f1b6f90b6)

(From OE-Core rev: cdad3ea375590f6fa9330f481b6712681ad00cd2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
520c455b83 devtool: if workspace layer exists, still ensure it's in bblayers.conf
When we run devtool, if the workspace layer already exists but isn't in
bblayers.conf (perhaps because it was previously created but
subsequently removed from bblayers.conf by the user) then we should add
it and notify the user, otherwise devtool operations won't work.

(From OE-Core master rev: 313b622a6c6613092ed18a2158e090521344f6c0)

(From OE-Core rev: 2904c1130ea7cc1abde0609f1ba1394e0f31a6fa)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
b317d79fb7 devtool: fix build env command execution error handling
If we execute an external command, we ought to prepare for the
possibility that it can fail and handle the failure appropriately. We
can especially expect this to happen when running bitbake in this
scenario. Ensure we return the appropriate exit code to the calling
process.

Fixes [YOCTO #7757].

(From OE-Core master rev: 98a716d79bfc5434a5b42d3ca683eab3eea30a41)

(From OE-Core rev: 2791fe9236f7173e6b998cf9b40fe238566ed8ee)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
8c9551a7a3 recipetool: ensure git clone is standalone when extracting
If -x is specified and the specified URI was a git repository, we need
to ensure that the resulting clone is a sandalone and not one that has
pointers into the temporary fetch location or DL_DIR (since the git
fetcher does a local clone with -s). Split out the code from devtool
that already does this for "devtool modify -x" and reuse that.

(From OE-Core master rev: fc47e8652ef32e7399f57c80593df90dc52d8b84)

(From OE-Core rev: d8f151b6a385f81abead65624ba15d42cbd90e11)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
6bc56e634a recipetool: avoid second-level subdir when extracting
When -x was specified, we were getting the normal unpack subdirectory
which we don't really want - if there's only one subdirectory unpacked
then we should effectively copy just it to the extraction path, not as a
subdirectory under it.

(From OE-Core master rev: 0eeecce96a0aa757c2c4c4ac4d82e3bcbf0f982c)

(From OE-Core rev: 3378c932570ba2301cd02103225fcf7629de656f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:15 +01:00
Paul Eggleton
f64d73f8c4 devtool: update-recipe: check if source tree is a git repository
If you've done "devtool add" (or "devtool modify" without -x) then it's
possible that the external source tree is not a git repository, so we
should handle that case here instead of printing a traceback.

(From OE-Core master rev: eb2147aa8facd4ef33a0749e9ae660ec686dad48)

(From OE-Core rev: c5dc3e819c1bb224e3cb667381faa5abf1888362)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Paul Eggleton
f1d3b5f185 devtool: update-recipe: handle unversioned bbappends
Use the proper bbappend file name, don't just assume it will have a
version suffix (because it won't if the original recipe doesn't).

Fixes [YOCTO #7651].

(From OE-Core master rev: 3332d68ef7b2a300ce8dcf5021497d98e5b17baa)

(From OE-Core rev: 3d5ea16a1f53c12d86c4e8df6af864964541cf02)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Paul Eggleton
d1b6e1dfdb devtool: add: use correct bbappend file name with -V option
We weren't adding the version into the bbappend file name when -V was
specified which meant that building or resetting failed.

Also adjust one of the tests so that we're testing devtool add both with
and without this option.

Fixes [YOCTO #7647].

(From OE-Core master rev: bdbeff0cd342e31053d7203d78fc5dda611052b1)

(From OE-Core rev: 0b9e8817fc8ba375a1045a66d04b3fd2b498427b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Paul Eggleton
2bc3328b8b devtool: handle . in recipe name
Names such as glib-2.0 are valid (and used) recipe names, so we need to
support them.

Fixes [YOCTO #7643].

(From OE-Core master rev: b9fd8d4d4dfae72de2e81e9b14de072e12cecdcf)

(From OE-Core rev: 36df1bb9bb3c92d096118b74fdf11a243be3f7d5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Markus Lehtonen
d768a80391 devtool: include bbappends in recipe parsing
In order to get correct metadata, SRCREV for example.

Fixes [YOCTO #7648].

(From OE-Core master rev: 8b1794559dd7fd956716179d628e61cffdce1686)

(From OE-Core rev: becbd5d50a091fe4a980361d9c99efa01f43edcc)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Markus Lehtonen
66dd73d1d1 devtool: modify: implement --no-same-dir
This option can be used to have a separate build directory, in order to
keep the srctree directory clean for packages that do not need to be
built in the source directory.

(From OE-Core master rev: 5cc348c0a3016e4ccc1e80d099e2e197b3b38bd2)

(From OE-Core rev: a7316a4c564901b30af740ece6631a6f68355bb4)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Markus Lehtonen
eabd7359d1 devtool: modify: use B=S if that is the default for the recipe
Makes the build succeed for packages which do not support separate build
directory, e.g. zlib. The same outcome could be achieved with the
--same-dir option, but, it's generally hard to tell if a random package
would need that option. The negative side effect of this patch is that
dev srctree (of some packages that build fine without this modification)
gets dirtied by build artefacts.

(From OE-Core master rev: 6ac5692426956e276ba2119f917b0f30791e6cd6)

(From OE-Core rev: 97078c56e8b8a235e923d964253775e20112a36f)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Acked-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Markus Lehtonen
af86c079dd devtool: call parse_recipe with correct arguments
Give the correct data object ("config data" instead of "recipe data") as
an argument to oe.recipeutils.patch_recipe()

Fixes [YOCTO #7595]

(From OE-Core master rev: 7d2b918019b0afe215a6489dad697afac34f73e9)

(From OE-Core rev: f8427fe565e44e46246146bdaae66a5d83ae8c9d)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:14 +01:00
Roy Li
a8d1d48cba rsync: backport a patch to fix CVE-2014-8242
(From OE-Core rev: 81d06ef0a566793e644686ec604ad7d46546d2b0)

(From OE-Core rev: 2ebf9ad9791e4b38465bfc456aac1d6009078d82)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Andre McCurdy
34afb7cb38 glibc: Fix __memcpy_chk on non-SSE2 CPUs
Backport from upstream glibc:

  https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=132a1328eccd20621b77f7810eebbeec0a1af187

Note that the fix is only required when glibc is built for i686/multiarch,
so is not applicable in the default oe-core x86 configuration (which builds
glibc for i586 and therefore does not include SSE2 optimised memcpy etc).

(From OE-Core rev: e643b9bc4c459ea8b59573cf67f2494388e7a377)

(From OE-Core rev: 38b0095c3a3416725ef5f19ab940e84f45a8a01a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Martin Jansa
606a6d36de squashfs-tools: build and install unsquashfs as well
* it's useful for debugging corrupt squashfs images from mksquashfs

(From OE-Core rev: af3c9bbf2db5a712f63145697d045d2f1ddce271)

(From OE-Core rev: 07961604732405c14a292cc963006f48a4a82bfd)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Saul Wold
cefb6645d7 lttng-modules: Update to stable version 2.6.1
This fixes a build issue with the 3.19.5 kernel where the regmap prototypes
have changed. The patch is rebased do to changes in the new version of the
Makefile.

[YOCTO #7737]

(From OE-Core rev: 787fde133c6b50c5df6ce8f90b2906b7955b41e4)

(From OE-Core rev: 2a355d2efb44a70571586bc5f6e500fa5d73db33)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Robert Yang
1ee92bc5d5 python3: fix build for shared object
Fixed when build on armv7a_vfp_neon:
Python-3.3.3/Modules/_struct.o: relocation R_ARM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC

All the archs should use -fPIC when build shared object for linux.

(From OE-Core rev: 60c1f76f65060cbea458b06f9719a2536f50474e)

(From OE-Core rev: d9c3d3036da6f36d1f494987aa854d0c76968a27)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Kai Kang
34195e3210 grep: fix CVE-2015-1345
Backport patch to fix CVE-2015-1345. The issue was introduced with
v2.18-90-g73893ff, and version 2.5.1a is not affected.

Replace tab with spaces in SRC_URI as well.

(From OE-Core rev: ea97b1dee834594358c342515720559ad5d56f33)

(From OE-Core rev: f5e18f8dbac54231441b8b6260bf608edc377f66)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Kai Kang
c498744945 gpgme: fix CVE-2014-3564
Backport patch to fix CVE-2014-3564.

http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=commit;h=2cbd76f

(From OE-Core rev: 421e21b08a6a32db88aaf46033ca503a99e49b74)

(From OE-Core rev: 204f24855a00f595ddfa040ae149b4184721603f)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Roy Li
bf28314e59 ppp: Security Advisory - CVE-2015-3310
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-3310

Buffer overflow in the rc_mksid function in plugins/radius/util.c in
Paul's PPP Package (ppp) 2.4.6 and earlier, when the PID for pppd is
greater than 65535, allows remote attackers to cause a denial of
service (crash) via a start accounting message to the RADIUS server.

oe-core is using ppp 2.4.7, and this CVE say ppp 2.4.7 was not
effected, but I found this buggy codes are same between 2.4.6 and
2.4.7, and 2.4.7 should have this issue.

(From OE-Core rev: 5b549c6d73e91fdbd0b618a752d618deb1449ef9)

(From OE-Core rev: 5450caccd45a2ee35ee227cdd64e66a304909a0e)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:13 +01:00
Kai Kang
7606fba211 qemu: fix CVE-2015-3456
Backport patch to fix qemuc CVE issue CVE-2015-3456.

Refs:
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-3456
http://git.qemu.org/?p=qemu.git;a=commit;h=e907746266721f305d67bc0718795fedee2e824c

(From OE-Core rev: 1d9e6ef173bea8181fabc6abf0dbb53990b15fd8)

(From OE-Core rev: eec51579ee7a99e3ac2527ecb6ee57b494a7992f)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:12 +01:00
Roy Li
ccaae1890e openssl: drop the padlock_conf.patch
padlock_conf.patch will enable the padlock engine by default,
but this engine does not work on some 32bit machine, and lead
to openssl unable to work

(From OE-Core rev: f7d186abca6ed9b48ae7393b8f244e1bfb46cb41)

(From OE-Core rev: bbc41bc086009726f307edeedbd380c68b1be6a7)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:12 +01:00
Andre McCurdy
b610e29670 gnutls: remove --with-libz-prefix configure option
The default search path in sysroot is sufficient to find zlib, so the
--with-libz-prefix configure option seems to be unnecessary.

For target builds, relying on sysroot also prevents an absolute path
from being hardcoded in the gnutls.pc pkg-config file.

(From OE-Core rev: 7a800bfeb6c8c83ee7cc74739f496982cd71c8e8)

(From OE-Core rev: f46c2ac0fd05f0e10258d8f03bfb2ebd0c2bcbe3)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:12 +01:00
Andre McCurdy
6a52d6d368 toolchain-scripts.bbclass: fix quoting for CCACHE_PATH
Single quotes prevent expansion of $sdkpathnative$bindir.

(From OE-Core rev: 986e5f37f3450077c843777c22df6b2d0f9502c5)

(From OE-Core rev: cd80d52fd213b15670d45f761538424180840f7d)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:12 +01:00
Peter Seebach
ab84c98f9f rootfs.py: Make set -x not break rootfs creation
The rootfs logfile check errors out if it finds an "exit 1" in
a log. But consider the shell idiom:
	if ! $command; then exit 1; fi
and consider a postinstall script with a "set -x" for debugging
purposes (to get log output in /var/log/postinstall.log.)

Solution: Ignore lines prefixed with a +, because those show shell
code even if a specific fragment won't be executed.

(From OE-Core rev: f23f129dba66144abf8fe8450320e01fa4c02f5c)

(From OE-Core rev: a13185ba4a29fca319b4eb4a76fdbdfcfe767322)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:12 +01:00
Jussi Kukkonen
e82008724e sanity.bbclass: import subprocess in correct function
check_sanity() no longer needs the subprocess module but
sanity_handle_abichanges() does use subprocess.call().

(From OE-Core rev: 469b53fb3bb94c7e5e9fb53d07cec2292b13c87d)

(From OE-Core rev: f0bf36c669790f1bcb2f897e61c82b075cb0a83b)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:11 +01:00
Florian Boor
34f38540d8 gtk-engines: Make gtk-engines-dev installable by dropping dependency to not generated gtk-engines package.
(From OE-Core rev: da96efe73c2338fa660a80d043479106f732f1f5)

(From OE-Core rev: 659cc47b142e0f14ace989d10277e4f83d7ffb75)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:10 +01:00
Ed Bartosh
a9ddd71880 rootfs.py: Improve rpm log_check_regex
Current regex can cause false negatives if paths in bitbake log files
contain "ERR" or "Fail". do_rootfs fails with return code 1 in
this case.

Improved regexp is based on error messages produced by rpm.
Those are found by analyzing rpm source code.

[YOCTO #7789]

(From OE-Core rev: 38871dc0295fb2516e1c8b1dc9948c2d2fc4d2cd)

(From OE-Core rev: 4a7f15e1d64a5d4ca4cd9b46a0ee5903e441b4e0)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:09 +01:00
Ross Burton
53f761d05e zlib: clean up base_libdir symlink
libz.so symbolic link created in ${libdir} is
../../${base_libdir}/libz.so.1.2.8.  This doesn't work if base_libdir or libdir
is changed, so use oe.path.relative to construct the correct path at build time.

(From OE-Core rev: ada8972ec40441b06e50d3e9ccbc07241a48e30a)

(From OE-Core rev: 20a60f137a9a1ae2689286241cc3d68a0392803d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
André Draszik
c583473a2b icu-native: fix hard paths in native icu
The icu recipe installs icu-native twice, once in the usual location,
and once for cross builds into the path given by --with-cross-build.

This latter path is not included in the list of paths recognised by
chrpath.bbclass, hence the binaries in there retain the rpath as used
during compilation. This causes the package to not be relocateable
from sstate
[YOCTO #6851]

We use the infrastructure that is in place already, and simply set
PREPROCESS_RELOCATE_DIRS as necessary, and things start to work.

(From OE-Core rev: e7fcaa534511e3f65b630b01cf0c824ee5a5fd4d)

(From OE-Core rev: 922faf8ed42cd2d105e30a8c92836664d6b5bb18)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Roy Li
71676e587f pcmciautils: fix the parallel building issue
The building failure still display after upstream commit 055a5bbfc[
pcmciautils: fix for parallel build], so refix it.

(From OE-Core rev: fb426a1f5a103a1dc096977533dfbec2aefe07ae)

(From OE-Core rev: 14b5556ad3a4d7e817442e004b73601041f31b69)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Haris Okanovic
86bf04ca9b glibc: CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflow
Backport Arjun Shankar's patch for CVE-2015-1781:

A buffer overflow flaw was found in the way glibc's gethostbyname_r() and
other related functions computed the size of a buffer when passed a
misaligned buffer as input. An attacker able to make an application call
any of these functions with a misaligned buffer could use this flaw to
crash the application or, potentially, execute arbitrary code with the
permissions of the user running the application.

https://sourceware.org/bugzilla/show_bug.cgi?id=18287

(From OE-Core rev: c0f0b6e6ef1edc0a9f9e1ceffb1cdbbef2e409c6)

(From OE-Core rev: 54f5e2001249c117cdfc1c26631ba50bc7a155dd)

Signed-off-by: Haris Okanovic <haris.okanovic@ni.com>
Reviewed-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Mario Domenech Goulart
d3f6656683 native.bbclass: avoid unintended substring replacement when setting PROVIDES
The way native_virtclass_handler was implemented leaded to
unintended substring replacements when setting PROVIDES for
native providers, in case the original PROVIDES value contains
providees with common substrings.

Here's a practical case where the old behavior was problematic:
the oracle-jse-jdk-x86-64 recipe provides both virtual/java and
virtual/javac:

Before:

$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native  virtual/java-native virtual/java-nativec"

After:

$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native virtual/java-native virtual/javac-native"

Change-Id: I8186992dae58e37c2a2364586360ff9b7da9198f
(From OE-Core rev: c28291f1fb07fbc80275d9bceefed642c963e204)

(From OE-Core rev: e0814f2306e1404fffafc7695862c6ee542b08fa)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Otavio Salvador
cdc2c8aeaa gstreamer1.0-plugins-bad: Move EGL requirement for Wayland
The EGL is used by the Wayland backend. When building using Software
Rendering and without Wayland support the EGL backend is not available
so we should not require EGL for GLES2 support.

This fixes following build error:

,----
| ...
| checking for bcm_host_init in -lbcm_host... no
| checking for WAYLAND_EGL... no
| configure: error: Could not find the required EGL libraries
| Configure failed. The contents of all config.log files follows to aid debugging
| ERROR: oe_runconf failed
`----

(From OE-Core rev: 9c3a94aea1de3ab98e5693640926bfc86acde2db)

(From OE-Core rev: 2a0a2f276ef631bf7d60ec9821800d9b40a5832b)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Martin Jansa
c495dccf58 boost: properly fix do_boostconfig re-execution
* it was partially fixed in:
  commit 291e20a51544c640d07767d1dc32d762f4370f41
  Author: Venkata ramana gollamudi <ramana.gollamudi@huawei.com>
  Date:   Fri Apr 13 11:42:46 2012 +0000
  Subject: boost: fix re-execution of task

  but with disadvantage that when CXX or *FLAGS variables were changed
  it was continuing to use old values
* just remove the line before appending it with current values to fix
  that

(From OE-Core rev: 8ce9584a78079b3db88eabfa902025a94443378d)

(From OE-Core rev: f055d084ad74a01a431ea87ead6bfdcaca0d7bde)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Bruno Bottazzini
8fc71f4247 systemd: removing workaround odering journal after remote-fs.target
This workaround is not needed in version 219 since the fix is upstreamed with:
919699ec301ea507edce4a619141ed22e789ac0d

(From OE-Core rev: e3330d0602fb3ad347f028063d25f634a36ea344)

(From OE-Core rev: fdcbbb50a9946733bd204b8db45606c929e43822)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:08 +01:00
Christophe Guillon
10ee6be5b8 ncurses: inherit pkgconfig
Without pkgconfig being present at build time it's possible for the .pc files to
not be installed correctly.

(From OE-Core rev: f049a53078b3876be9fefc1e5f64404a3f378724)

(From OE-Core rev: c6e39f271a737aa867a15f70c2975987e9d7b209)

Signed-off-by: Christophe Guillon <christophe.guillon@st.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Martin Jansa
5b8a8f9490 e2fsprogs: install populate-extfs.sh
* install populate-extfs.sh from contrib, be aware that in order
  to use it you need to set DEBUGFS shell variable, otherwise it will
  try to use debugfs from relative path which is almost always
  incorrect:
    CONTRIB_DIR=$(dirname $(readlink -f $0))
    DEBUGFS="$CONTRIB_DIR/../debugfs/debugfs"

(From OE-Core rev: 525b7b587a00466e4322450c171d920b47201e56)

(From OE-Core rev: 32e847f6988eb488dad23badf1cabae92ef803df)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Robert Yang
fb3f5c68fd mesa: fix do_install_append
"ifdef MESA_EGL_NO_X11_HEADERS" -> "if defined(MESA_EGL_NO_X11_HEADERS)"

(From OE-Core master rev: 3a464d67b60f70b865f7db768e7edc53e40ff450)

(From OE-Core rev: 12e467f436fbc22f274558c753f0ac9756ce1071)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Richard Purdie
342958fce1 glibc: Fix x32 make race
On x32 builds, sysd-syscalls appears malformed since the make-target-directory
appears on the wrong line. This causes races during the build process where you can
see failures like:

Assembler messages:
Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/gettimeofday.os: No such file or directory
Assembler messages:
Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/time.os: No such file or directory

The issue is that the carriage return is being escaped when it should
not be. The change to sysd-syscalls with this change:

before:

"""
$(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \
                $(..)sysdeps/unix/make-syscalls.sh      $(make-target-directory)
        (echo '#include <dl-vdso.h>';
"""

after:

"""
$(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \
                $(..)sysdeps/unix/make-syscalls.sh
        $(make-target-directory)
        (echo '#include <dl-vdso.h>';
"""

which ensures the target directory is correctly created. Only x32 uses the vdso
code which contains the bug which is why the error only really appears on x32.

(From OE-Core rev: ae4729ed6c5e5443c42f8825dd85873f06a3570e)

(From OE-Core rev: c945453a8453dd6dab5aa5a132bea20e73ae4d6d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Richard Purdie
744d1ff8ce base: Avoid find race
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
and http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=527b28c10955daf0387597020d69593ce24bcaa4
there is a find race in base.bbclass.

For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:

find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

Fix the race in the same way.

[YOCTO #7522]

(From OE-Core rev: 90861b8908d254154f4d1d613471070df8013da8)

(From OE-Core rev: 220141c63161f7c4f4112ac8b95bf44775843a9f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Robert Yang
7d88afbdfd alsa-tools: set CLEANBROKEN
Fixed:
make[1]: Entering directory `alsa-tools-1.0.28/envy24control'
make[1]: *** No rule to make target `clean'.  Stop.

There is no "make clean" in envy24control when DISTRO_FEATURES is
changed from no-x11 to x11.

(From OE-Core rev: 8ccc47c37765487b535c4d6a8b43c2b6365ff000)

(From OE-Core rev: 4ff4bca025277fd19f11a6ba86102fca8563a1ff)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Roy Li
08a09c3410 unzip: Security Advisory -CVE-2014-9636 and CVE-2015-1315
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-9636

unzip 6.0 allows remote attackers to cause a denial of service
(out-of-bounds read or write and crash) via an extra field with
an uncompressed size smaller than the compressed field size in a
zip archive that advertises STORED method compression.

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

Buffer overflow in the charset_to_intern function in unix/unix.c in
Info-Zip UnZip 6.10b allows remote attackers to execute arbitrary code
via a crafted string, as demonstrated by converting a string from CP866
to UTF-8.

(From OE-Core rev: f86a178fd7036541a45bf31a46bddf634c133802)

(From OE-Core rev: d868f9e8a6a5d4dc9c38e2881a329f7e3210eab8)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Bruce Ashfield
d271a8e004 kernel-yocto: propagate in tree defconfigs to WORKDIR
As reported by Steffen Pankratz <Steffen.Pankratz@elektrobit.com>, the
previous logic of KBUILD_DEFCONFIG processing would not propagate an in
tree defcofig to WORKDIR if one was not already present.

We fix the propagation by copying the in tee config if a defconfig is
not already in WORKDIR.

Additionally we only warn (versus copying) if an in tree configuration
is specified, is different than the WORKDIR version and isn't copied.

(From OE-Core rev: 58cc903a5156063b24e48011438a709cb6e09f54)

(From OE-Core rev: 0b12cc3a326740bd95bb199d4f1b38bf5beadfa9)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:07 +01:00
Bruce Ashfield
409bdca8e3 linux-yocto: fix race between checkout and meta data generation
There are two tasks that must run before a linux-yocto kernel is built.

  - Kernel checkout and relocation to work-shared (kernel_checkout)
  - Meta data gathering and configuration prep (kernel_metadata)

The current task definitions for both are simply "before do_patch",
which is correct, but kernel_checkout must run before and not race with
kernel_metadata.

So we set the definition of kernel_checkout to be more specific and
enforce the proper ordering.

[YOCTO: #7731]

(From OE-Core rev: 9d806f3d05de918952f839f5e595cb71cd1261db)

(From OE-Core rev: 561b7776d93d40cac009360ec95b8de78888f1ca)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Roy Li
dc70442747 e2fsprogs: fix the CVE-2015-1572
Backport a patch to fix CVE-2015-1572
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-1572

(From OE-Core rev: 203e1024cc7517cad28423cc04f641376cc8f2f5)

(From OE-Core rev: 7cfbeeec098e19bd27e342cd09a3fa22de6e7e93)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Ed Bartosh
e34336da87 kernel.bbclass: Fix race condition
Race condition between do_compile_kernelmodules and do_shared_workdir
tasks occurs when do_compile_kernelmodules changes files in
include/generated/* while do_shared_workdir tries to copy them to
shared working directory.

Fixed race by moving do_shared_workdir after do_compile but before
do_compile_kernelmodules.

[YOCTO #7321]

(From OE-Core rev: b4ec689f71fe9504559c1921c893f5e096d6b744)

(From OE-Core rev: a224584b6b0b7f12e0d1962d889587ce50957c60)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Richard Purdie
3b8170562c directfb: Correct bashism
Fix builds of directfb on systems with dash as /bin/sh

(From OE-Core rev: 8848517fb4c81b9e9cfc985dd20b9baf374764c0)

(From OE-Core rev: 493ecc520202851bba664eaf4f1150ce624bf2b1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Robert Yang
f0d6f7fe95 bind: remove 5 backport patches
They are backport patches, and verified that the patches are in the
source.

(From OE-Core rev: 6e4a10ab030c192e2437592538e4713b1ee2032b)

(From OE-Core rev: fd5115556a12c8c2d95c02f077dc38ea4c9253f5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Mike Crowe
2cc0ea83d3 libcap: Avoid passing "-e" to make
oe-core 51540b64f62234c145fc32cfa3fbbaaebbeece08 altered libcap.inc (at the
time) to append to EXTRA_OEMAKE rather than assign to it. The default value
for EXTRA_OEMAKE contains "-e". This means that the change caused "-e" to
be passed to make for the first time.

Unfortunately passing "-e" subtly changes the behaviour of libcap's
Make.Rules under recursive make when prefix="" (which it is for us since
we're using meta-micro.)

Without "-e" the prefix comes from the command line in both the parent and
submakes. This takes precedence over any attempt to reassign it with a
simple "=" operation so the headers are correctly installed in (empty
string)/include.

With "-e" the prefix still comes from the command line in the parent make
but from the environment in the submake. The attempt to assign it fails in
the parent make as before, but not in the submake so the headers are
installed incorrectly in /usr/include.

In all four cases the "ifdef prefix" else clause is executed.

So, let's assign EXTRA_OEMAKE in order to avoid using "-e" at all.

(From OE-Core rev: a8d35fa4fd76ea4a70063492cd5eab0858f2edb6)

(From OE-Core rev: 24a98efa442b323667e1471886ad874e607ff320)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Roy Li
def79f5f31 elfutils: Security Advisory - CVE-2015-0255
Directory traversal vulnerability in the read_long_names function in
libelf/elf_begin.c in elfutils 0.152 and 0.161 allows remote attackers
to write to arbitrary files to the root directory via a / (slash) in a
crafted archive, as demonstrated using the ar program.

https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-9447

(From OE-Core rev: 4a65944b89a76f18c8ff6e148f17508882d387cf)

(From OE-Core rev: 5eda84a62201461b9c69498ec35585d2c8142dec)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Robert Yang
7620a4ad38 pcmciautils: fix for parallel build
Fixed:
Compiling lex_config.c.
  src/lex_config.l:34:25: fatal error: yacc_config.h: No such file or directory

There was a patch for fixing the paralle issue before, so modify the
patch again.

(From OE-Core rev: 055a5bbfc7686c8eec3aad2bcbcf90c40031cc34)

(From OE-Core rev: 45e105e08c56eef5ef8282f2f84778f4c291798a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Khem Raj
6182fc36ae curl: Fix wrong assumption about sizeof off_t on largefile systems
This issue was reported on poky ml as well see
https://lists.yoctoproject.org/pipermail/poky/2013-December/009435.html

Change-Id: Iedf22467889893111fde0433e411fd0546a38546
(From OE-Core rev: 3c58712465494e441c4036a7cf21d2e6d343efab)

(From OE-Core rev: 49c848018484827c433e1bcf9c63416640456f3e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:06 +01:00
Robert Yang
1901d6b02c elfutils: enable fix-build-gcc-4.8.patch
The patch fixes a warning seen with gcc 4.8 (especially on ubuntu 13.10)

(From OE-Core rev: c577a52b252ccbad9a8dde79c6a4a4f23376d9d8)

(From OE-Core rev: 1878cadb02aa01a58f6985d2b7a9268df4f381a6)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
50338c36c8 texinfo: remove enumerate_greater_than_ten.patch
It is a backport patch, and verified that the patch is in the source.

(From OE-Core rev: a46976b9de5a2270f041a73661a6ed635bf4eb43)

(From OE-Core rev: 94116f5be3b3581b364e18c6a008e088f3b1dae9)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
f831a73052 libaio: remove libaio-generic.patch
It is already in the source.

(From OE-Core rev: e6b2def565c1201c3b0a0d2a8c296b65e6cafb02)

(From OE-Core rev: 6c931a231dbb90e16fd092187d6fea42dd7f5908)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
9e14d6efa2 lttng-modules: remove bio-bvec-iter.patch
It is aready in the source.

(From OE-Core rev: 4ac3e70f8f39dc6b585e0acb3679d4137f60b296)

(From OE-Core rev: 78e377d37a0ef36d595dcdc00c9c51674d828f02)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
50241173b7 openssl: remove 3 patches
Removed:
 - openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch
 - upgate-vegsion-script-for-1.0.2.patch
   Since they are already in the source.
 - make-targets.patch
   It removed test dir from DIRS, which is not needed any more since we
   need build it.

(From OE-Core rev: 5fa533c69f92f2dd46c795509b0830b36413b814)

(From OE-Core rev: 2635d1dbe0ef0b43c7505d9c43494eac0f2e6760)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
c97d806d2f logrotate: remove logrotate-CVE-2011-1548.patch
It is a backport patch, and verified that the patch is in the source.

(From OE-Core rev: 370dc496c2d6f8fa97a18af49747d15a41fc7bcf)

(From OE-Core rev: 3cf413bd3f7b022488473aaee15e28cf343c6b12)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
2f1a4d0f73 libxml2: remove libxml2-CVE-2014-3660.patch
It is a backport patch, and verified that the patch is in the source.

(From OE-Core rev: 9a3178b4d3c454e76a0af59afc7b326589c4c666)

(From OE-Core rev: 9834785d0b4ee1759d6a469c585a566652cbc38a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
b9b7c619da nspr: remove nspr-CVE-2014-1545.patch
It is a backport patch, and verified that the patch is in the source.

(From OE-Core rev: a7e723bd78e280ae48e6de725b2881b35ae21f5c)

(From OE-Core rev: f5ef99247b84ac1a39b92daf02a4249d39aacbf1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:05 +01:00
Robert Yang
3599cb53f8 python3: remove sys_platform_is_now_always_linux2.patch
It is aready in the source.

(From OE-Core rev: 99f9df3add049ec18dbcd604646a67dc59b3db16)

(From OE-Core rev: 6c1b44872d9cd09ad46fd9d2cc3555f9cd3a55e6)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:04 +01:00
Robert Yang
e7b12a4e63 python-numpy: remove 2 dangling patches
Removed:
- unbreak-assumptions.diff
  This patch changs the dir to /non-existant-dir, the source code has
  changed the dir to /deadir, so it is not needed any more.

- trycompile.diff
  There is no try_compile or try_run in numpy/core/setup.py any more, so
  assumed that it is not needed.

(From OE-Core rev: 56aac948ca9686d79a2c56f4f034f8de445ff37b)

(From OE-Core rev: 7f0d86dd43a10a981aa2ad8acde66fe345fe4096)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:04 +01:00
Richard Purdie
276606afe6 sstate: Use SSTATE_DIR for FILESPATH
FILESPATH was only being overridden in one fetch location, it should be
equally handled in both.

Also use SSTATE_DIR as FILESPATH so that mirror urls which do remapping
can search the local SSTATE_DIR for other paths.

Also ensure that MIRRORS is removed in both locations, previously
it was only unset in one but both codepaths should be consistent.

(From OE-Core rev: ab6bebddbdefec323e284b6438d9c57b3d8a2cc3)

(From OE-Core rev: ac255ca3eacece98f60a1a5d8cfc468f73aa67c7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-28 09:44:04 +01:00
Richard Purdie
eb4a134a60 scripts/combo-layer: Fix exit codes and tty handling
If combo-layer is called from a non-interactive context we should exit
with a correct error code rather than try and drop to a shell.

This patch cleans up a few error case exit codes as well as
detecting and handling non-interactive usage.

(From OE-Core rev: 3b1d89a51445cf526ca84eb5b53de434f9585d6e)

(From OE-Core rev: b08ee8478f0cc2e2f9394c7e209dae45de2d845e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 15:00:20 +01:00
Patrick Ohly
508c4cac32 combo-layer: handle unset dest_dir in sanity_check()
The previous "clean up dest_dir checking" patch (f8cdbe7497) improved
handling of empty dest_dir but made handling of unset dest_dir worse:
instead showing the "Option dest_dir is not defined for component ..."
error, it fails with a Python exception.

Avoid that by providing a sane fallback for the unset case. With that
change, dest_dir is no longer strictly required, but the check for it
is kept to ensure that a combo-layer.conf also works with older
combo-layer versions.

[Yocto #7773]

(From OE-Core rev: d4bf858b2c15bef128fd6d606b08203a318e2d4c)

(From OE-Core rev: b266977372f2d5704d00dd07b29ea49898ebf70e)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-29 13:01:37 +01:00
Patrick Ohly
e9ae2f8417 combo-layer: improve merge commit handling
When the head of a branch is a merge commit, combo-layer did not
record that commit as last_revision because it only considers applied
patches, and the merge commit never gets applied.

This causes problems when the merge commit leads to multiple patches
and the commit id that gets recorded only reaches some of these
patches. The next run then will try to re-apply the other patches.

This special case is now detected and dealt with by bumping
last_revision to the branch commit. The behavior where the head is a
normal commit is intentionally not changed, because some users might
prefer the traditional behavior.

(From OE-Core rev: 701bcd52c208f22a9a6c48a11a35bcf1c4e413df)

(From OE-Core rev: 1bc46199e569411150b050818ff17abc66f899f2)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-29 13:01:36 +01:00
Paul Eggleton
12cc076832 bitbake: lib/bb/utils: fix several bugs in edit_metadata_file()
* Fix unchanged assignments being dropped if other lines changed
* Fix not passing variable name from single-line assignments to the
  function
* Fix not trimming the trailing quote from values

(Bitbake master rev: 0b0c82f49cf2de887967d305768cbd95314bb171)

(Bitbake rev: cd92e5dce5f5d61ecb7838bf964a7812e905509a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-23 08:21:42 +01:00
Paul Eggleton
ca6ef30c7a bitbake: lib/bb/utils: add function to get layer containing a file
In certain contexts it can be useful to find the layer that a file (e.g.
a recipe) appears in.

Implements [YOCTO #7723].

(Bitbake master rev: 3bf9c8830c5d5eea5502230d5af84ebd87ad5849)

(Bitbake rev: 8dcd83e5edb1cf3307b610d3bb8d54733ea7356d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-23 08:21:41 +01:00
Ed Bartosh
59e4f9fc12 split_and_strip_files: regroup hardlinks to make build deterministic
Reverted 7c0fd561bad0250a00cef63e3d787573112a59cf

Created separate group of hardlinks for the files inside
the same package. This should prevent stripped files to be
populated outside of package directories.

This turns out not to be straightforward and has overlap with the
other hardlink handling code in this area. The code is condensed
into a more concise and documented form.

[Original patch from Ed with tweaks from RP]

[YOCTO #7586]

(From OE-Core master rev: 82d00f7254b7d3bb6a167d675d798134884d1b19)

(From OE-Core rev: 2abacf00ee3f60735bf7c0dc7130c72267822b30)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:13:38 +01:00
Richard Purdie
4dc652a0c3 bitbake: bitbake-layers: ensure non-extended recipe name is preferred
In show-recipes and show-overlayed, we only list one variant of each
recipe where multiple exist, therefore we should show the main one (e.g.
in OpenEmbedded, we now show openssl and not nativesdk-openssl which
would otherwise sort first.)

Fixes [YOCTO #7514].

(Bitbake rev: 8e0211d121e4cb1124dfe879db751ad00f5c978b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:50 +01:00
Christopher Larson
83ac75ffb3 bitbake: runqueue: pass finalized metadata to scenequeue callbacks
This ensures that _append, _prepend, overrides, etc are functional when used
on sstate variables (e.g. SSTATE_DIR).

[YOCTO #7564]

(Bitbake rev: 0a9eaa570fdf3862ef26ee537fc74f3be75fd554)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:50 +01:00
Ross Burton
e23ec53caa systemd: bring back the patch to customise root's $HOME
This patch appears to have been accidently dropped in the move to 219-stable,
probably because it didn't apply.  Update the patch and re-add it.

(From OE-Core master rev: 51aaa647b203d0f7ddd2f53f7191c4d2918b09b8)

(From OE-Core rev: 16684ce4072e8cffd321d25303de91fd0e32529c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:50 +01:00
Joshua Lock
45592f15d8 systemd: remove unused patches
These patches are no longer required since 7bfc9891ff

(From OE-Core master rev: e45b8bf579f2050ebdb1aa1a4c2f9c3b530c9ad6)

(From OE-Core rev: d8b4b70df507f2ef82378a7bfa501fe81ad2a21a)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Dmitry Eremin-Solenikov
08dcacb083 bitbake.conf: add sed-native to ASSUME_PROVIDED
There is no reason to build sed for the host, however now:
ERROR: Nothing RPROVIDES 'sed-native' (but virtual:native:/OE/sources/openembedded-core/meta/recipes-extended/groff/groff_1.22.2.bb RDEPENDS on or otherwise requires it)

(From OE-Core rev: f09dcaab4afb6aad5a707418741e97625473b890)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Bryan Evenson
944b46c223 util-linux: Add lastb to alternatives
util-linux creates lastb as a symlink to last during the build.
Just as other applications may provide last, other applications
may provide lastb.

Add alternatives designations for lastb to avoid installation
conflicts with other applications.

(From OE-Core rev: cde6a85fd327407320adaad21203079a8dacbf23)

(From OE-Core rev: 2665431f75ebc9eb1f47dee7d3ef362dcf5917a9)

Signed-off-by: Bryan Evenson <bevenson@melinkcorp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Chen Qi
26e18a143b shadow: add 'util-linux-sulogin' to RDEPENDS
If shadow is installed, sulogin from busybox cannot work correctly because
it still assumes that /etc/shadow is not there. This leads to the problem
when booting into rescue mode in an image with shadow installed but not
sulogin from util-linux.

To fix this problem, we add 'util-linux-sulogin' to RDEPENDS of shadow.
This runtime dependency is specific to OE, because we have to ensure
that sulogin can work correctly and sulogin from busybox cannot because
FEATURE_SHADOWPASSWORDS is not enabled by default. And we cannot enable
it by default for busybox, because that would lead to utilities in busybox
to assume the existence of /etc/shadow which is not always true in OE.

[YOCTO #6698]

(From OE-Core rev: 9b45b990d2fc870df556f05908dcb48b9ebcfc02)

(From OE-Core rev: d2e348537786966fd29187ff7fb9ae42614695af)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Chen Qi
704a053dd5 util-linux: split out util-linux-sulogin
[YOCTO #6698]

(From OE-Core rev: 4bde182ed236243547929dd98763f1c09eddd097)

(From OE-Core rev: eeaf4ca1e5fea56fe7472076bc0372f597876fdc)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Chunrong Guo
09eb069ccf groff: add runtime dependency on sed
This is to suppress the following QA warning:
  groff-1.22.2: groff requires /bin/sed, but no providers in its RDEPENDS [file-rdeps]

(From OE-Core rev: f1e5913bee28f59efb252045a0113cae701d848d)

Signed-off-by: Chunrong Guo <B40290@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:49 +01:00
Richard Purdie
67d83673ea autotools: Fix find races on source directory
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
there are more find races in the autotools class.

For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:
find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

Fix the remaining races in the same way.

[YOCTO #7522]

(From OE-Core rev: 79770ca14a0cc2f4112fb4d8dc2d8832701b6d5d)

(From OE-Core rev: 699e1570e66cb28e4bfd0eb15d41f3af2bed5b62)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:48 +01:00
Li Zhou
6504fa687a libxfont: Security Advisory - libxfont - CVE-2015-1804
bdfReadCharacters: ensure metrics fit into xCharInfo struct

We use 32-bit ints to read from the bdf file, but then try to stick
into a 16-bit int in the xCharInfo struct, so make sure they won't
overflow that range.

(From OE-Core rev: 4dd4b96b6d60246338bb30ede9f3ab1b2e757be9)

(From OE-Core rev: 1e2a947e65f5fb6e01459c9ddd6515a7131d92c7)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:48 +01:00
Li Zhou
7a277e901d libxfont: Security Advisory - libxfont - CVE-2015-1803
bdfReadCharacters: bailout if a char's bitmap cannot be read

Previously would charge on ahead with a NULL pointer in ci->bits, and
then crash later in FontCharInkMetrics() trying to access the bits.

(From OE-Core rev: 2c7a15a074501beb6b8a4c7bdf30604b1a432a6b)

(From OE-Core rev: 7827e9756e82c31707ce87d27c7d0b0392fc0812)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:48 +01:00
Li Zhou
b611530351 libxfont: Security Advisory - libxfont - CVE-2015-1802
bdfReadProperties: property count needs range check

Avoid integer overflow or underflow when allocating memory arrays
by multiplying the number of properties reported for a BDF font.

(From OE-Core rev: 0ff9f2bf0e44a7b47a98234a12714c780825e286)

(From OE-Core rev: ddc4889d7028d0388b1521d49ab1d3b8decba524)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:48 +01:00
Li Zhou
3e3507d02e libarchive: Security Advisory - libarchive - CVE-2015-2304
libarchive: Updated libarchive packages fix security vulnerability

Alexander Cherepanov discovered that bsdcpio, an implementation of the "cpio"
program part of the libarchive project, is susceptible to a directory
traversal vulnerability via absolute paths.

(From OE-Core master rev: e64a961e9c5e94e643896e4b68b85bd5b4c27470)

(From OE-Core rev: c944c1ee3f039979d93022bbbd76f61f57b1577f)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:48 +01:00
Junling Zheng
8d07cacde3 less: fix CVE-2014-9488
An out of bounds read access in the UTF-8 decoding can be triggered with
a malformed file in the tool less. The access happens in the function
is_utf8_well_formed due to a truncated multibyte character in the sample
file.

The bug does not crash less, it can only be made visible by running less
with valgrind or compiling it with Address Sanitizer.

Version 475 of less contains a fix for this issue. The file version.c
contains some entry mentioning this issue (without any credit):

 - v475 3/2/15 Fix possible buffer overrun with invalid UTF-8

The fix is in the file line.c. We derive this patch from:

https://blog.fuzzing-project.org/3-less-out-of-bounds-read-access-TFPA-0022014.html

Thank Claire Robinson for validating it on Mageia 4 i586. Refer to:

https://bugs.mageia.org/show_bug.cgi?id=15567

(From OE-Core master rev: 68994284f3c059b737bfc5afc2600ebd09bdf47f)

(From OE-Core rev: 7195d219f7af2b94dffb87a94077ec98dacdcdb0)

Signed-off-by: Junling Zheng <zhengjunling@huawei.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Roy Li
205e9ed896 rsync: backport a patch to fix CVE-2014-9512
rsync 3.1.1 allows remote attackers to write to arbitrary files via a symlink
attack on a file in the synchronization path.

Backport Complain-if-an-inc-recursive-path-is-not-right-for-i.patch to fix it

(From OE-Core master rev: f280b4f28231ea5a416266ae022d6e4c4ea91117)

(From OE-Core rev: a42af2e434c01c04af36d6ed7a7a5480a7a255a5)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Robert Yang
edb2b4760c kernel-devsrc: depends on virtual/kernel:do_install
The linux-yocto.inc may remove the meta dir:
do_install_append(){
	if [ -n "${KMETA}" ]; then
		rm -rf ${STAGING_KERNEL_DIR}/${KMETA}
	fi
}

Which may cause the error:
[snip]
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0073-FogBugz-116676-Align-clk.c-with-kernel.org.patch': No such file or directory
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0047-FogBugz-90657-Fix-SD-MMC-driver-for-VT.patch': No such file or directory
find: `./meta/cfg/kernel-cache/bsp/altera-socfpga/0006-spi-qspi-cadence-Add-spi-and-qspi-driver.patch': No such file or directory
[snip]
cpio: ./meta/scripts/kgit-config-cleaner: Cannot stat: No such file or directory
cpio: ./meta/scripts/kgit-s2q: Cannot stat: No such file or directory
cpio: ./meta/scripts/kgit-clean: Cannot stat: No such file or directory
[snip]

(From OE-Core master rev: 0866086c6a9d9f518388f2962db784ab15d49330)

(From OE-Core rev: ecf26a6e4aaac6d7f24eeb38215365c4c72b81a8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Robert Yang
b749898186 gnu-efi: fix parallel issue
Fixed:
Assembler messages:
Fatal error: can't create runtime/rtlock.o: No such file or directory
Assembler messages:
Fatal error: can't create runtime/rtdata.o: No such file or directory
Assembler messages:
Fatal error: can't create runtime/vm.o: No such file or directory
Assembler messages:
Fatal error: can't create runtime/efirtlib.o: No such file or directory

(From OE-Core master rev: 86d428775c95a900c9b452f03548b56cb980b64c)

(From OE-Core rev: a86bc60ac3ef18f22690e1a77578cb991aede9f5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Ken Sharp
7b7b67fcef udev-cache: improve error handling
If an error occurs while the udev cache is being populated, the system
is left in a state where udev is stopped.  Remedy this with a clean up
function to restart udev and remove any intermediate files.

(From OE-Core master rev: af911b272ded95884079dc307eeeb1811f0584c9)

(From OE-Core rev: 70214bb02bad6a6f0d6f25ff227d6e380c1b9fb3)

Signed-off-by: Ken Sharp <ken.sharp@ni.com>
Reviewed-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Ken Sharp
3857acab1a udev-cache: Remove unnecessary tar read from stdin
xargs already formats the inputs to tar correctly, so the
'-T -' argument to tar is unnecessary.

(From OE-Core master rev: d18e1964dede530c5fae6ae349d6a78fa5342382)

(From OE-Core rev: d666072445ec5323a7849ae0c80ba9f293a5464b)

Signed-off-by: Ken Sharp <ken.sharp@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:47 +01:00
Mike Looijmans
dc97c54915 alsa-utils: Remove double dependency on udev
"udev" is already added when PACKAGECONFIG includes it, so it should
not be in the DEPENDS list on itself.

This caused udev to be built for systems that don't use it.

(From OE-Core rev: 2ea67db71ba37285c5d16428ba9629412adcfa47)

(From OE-Core rev: 6fb1b306bd1a1ca6ecc6c8d91e0007cc65a6a0d6)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Paul Eggleton
2dd79784e8 mkefidisk.sh: fix hanging on non-writeable device
If cleanup() is called early on, as happens when the device isn't
writeable, then none of the mount point variables are set; thus the
script was calling grep with only one argument and appeared to hang
since it was waiting for input on stdin.

(From OE-Core master rev: cf4a18eec2a65d840352d1a2862242d116e8a409)

(From OE-Core rev: f8b8fbeee3f5c51f6b3e39200f935156be3936f3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Paul Eggleton
e4ccc4dae3 mkefidisk.sh: use script mode when running parted
This avoids parted showing prompts and thus effectively hanging the
script in in the case of initially malformed disks.

(From OE-Core master rev: 8f6eb9a86ce64b4c534342fe315069eb4064de88)

(From OE-Core rev: 8e72fd01071694b73ec092657f5378dbadd4f396)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Bruno Bottazzini
732cdba31e systemd 219 -> system 219-stable
The upstream systemd git repo only contains the main systemd branch that
progresses at a quick pace, continuously bringing both bugfixes and new features.

Distributions usually prefer basing their releases on stabilized versions
that receive the bugfixes but not the features.

(From OE-Core master rev: c21bf9d7bb0cb90392ed50a44c57a3d068b88ef9)

(From OE-Core rev: c3da0d750ce7b45fee9db3e985f585f5fb2e193d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Cristian Iorga
af3518a605 oeqa/selftest/toaster: fix bad indent
oe-selftest --list-classes crashes because
of a bad indent (see below). Fixed.

systemd-build$ oe-selftest --list-classes
2015-04-22 12:12:39,141 - selftest - INFO - Listing all available test modules:
_sstatetests_noauto (hidden)
 -- SStateBase
 -- RebuildFromSState
 --  -- test_sstate_rebuild
 --  -- test_sstate_relocation
_toaster (hidden)
Traceback (most recent call last):
  File "/mnt/Yo/yoctoproject/poky/scripts/oe-selftest", line 201, in <module>
    ret = main()
  File "/mnt/Yo/yoctoproject/poky/scripts/oe-selftest", line 157, in main
    modlib = importlib.import_module(test)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/mnt/Yo/yoctoproject/poky/meta/lib/oeqa/selftest/_toaster.py", line 438
    time.sleep(3)
    ^
IndentationError: unexpected indent

(From OE-Core master rev: 46869abf72c1c5babce49537f221d7a4f53ca820)

(From OE-Core rev: f01d4df7568fed5fe2feb0b1e8abb2214b567c07)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Chen Qi
f4b1bcbc38 populate_sdk_base: avoid executing empty function
`bitbake uninative-tarball' raises the following warning.

    WARNING: Function  doesn't exist

This is because SDK_PACKAGING_FUNC is set to "" in its recipe.
Anyway, we need to check this variable to avoid executing empty function.

[YOCTO #7598]

(From OE-Core rev: 4c0ae7cce06de15f6881654ecec7f8bb743ff389)

(From OE-Core rev: 7c0c2b3037dfc2790446968572daf5bf0a17e2f8)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Chen Qi
605e8fad88 uninative-tarball: delete the packagedata task
This task is meaningless for uninative-tarball as the package task
has been deleted. Besides, sometimes it would cause problems. To
reproduce, use the following command.

bitbake uninative-tarball -c cleansstate && bitbake uninative-tarball &&
bitbake uninative-tarball -c clean && bitbake uninative-tarball

The error is something like below.

File: 'sstate.bbclass', lineno: 33, function: sstate_installpkg
     0029:        bb.build.exec_func(f, d)
     0030:
     0031:    for state in ss['dirs']:
     0032:        prepdir(state[1])
 *** 0033:        os.rename(sstateinst + state[0], state[1])
     0034:    sstate_install(ss, d)
     0035:
     0036:    for plain in ss['plaindirs']:
     0037:        workdir = d.getVar('WORKDIR', True)
Exception: OSError: [Errno 2] No such file or directory

[YOCTO #7597]

(From OE-Core rev: 8f905077aaed3dbeeed04787add1cf725fa87bdc)

(From OE-Core rev: e94864c1589986fb8a59ee86cae0fd3b430ebf09)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
Chen Qi
636cde886f shadow: fix `su' behaviour
0001-su.c-fix-to-exec-command-correctly.patch is removed. Below is the reason.
This patch is introduced to solve the 'su: applet not found' problem when
executing `su -l xxx -c env'. The patch references codes of previous release
of shadow. However, this patch introduces bug#5359. So it's not correct.

Let's first look at the root cause of 'su: applet not found' problem.
This problem appears when /bin/sh is provided by busybox.
When executing `su -l xxx -c env' command, the following function is invoked.
    execve("/bin/sh", ["-su", "-c", "env"], [/* 6 vars */])
Note that the argv[0] provided to new executable file (/bin/sh) is "-su".
As /bin/sh is a symlink to /bin/busybox. It's /bin/busybox that is executed.
In busybox's appletlib.c, it would examine argv[0], try to find an applet
that has the same name, and then try to execute the main function of the
applet. This logic results in `su' applet from busybox to be executed.
However, we default to set 'BUSYBOX_SPLIT_SUID' to "1", so 'su' is not found.
Further more, even if we set 'BUSYBOX_SPLIT_SUID' to "0", so that 'su' applet
is found. The whole behaviour is still not correct. Because 'su' from shadow
takes higher priority than that from busybox, so 'su' from busybox should never
be executed on such system unless it's specified clearly by the end user.
The logic of busybox's appletlib.c is totally correct from the point of busybox
itself. It's an integration problem.

To solve the above problem, this patch comment out SU_NAME in /etc/login.defs
so that the final function executed in shadow's su is as below.
    execve("/bin/sh", ["-sh", "-c", "env"], [/* 6 vars */])

[YOCTO #5359]
[YOCTO #7137]

(From OE-Core rev: 6820f05dad0b4f9b9bbcf7c2a0af8c34f66199ae)

(From OE-Core rev: c7ba25a1e2fd36789ad6f55f05b41c3dc9b7f089)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:46 +01:00
tprrt
b5ada042b5 image: zap_empty_root_password doesn't handle passwd file in shadow case
/etc/passwd isn't editted if /etc/shadow exists and should be else
it can cause problems with some login providers such as toybox.

(From OE-Core rev: 09ac2664fba223111c20c3000af6b8d5cdaabeb1)

(From OE-Core rev: ec4dba57eb95e31954dc74dd6489f70575b54d6f)

Signed-off-by: tprrt <tprrt@tupi.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Krishnanjanappa, Jagadeesh
9f524997ff ghostscript: add objarch.h for armeb
ghostscript application fails to fetch objarch.h file while building for armeb.
The fetch failure is due to absence of this file in the default set of
directories that the OpenEmbedded build system searches (i.e FILESPATH)
for patches and files. This patch adds the required objarch.h file for
armeb in one of the default locations where OpenEmbedded build system searches.

(From OE-Core rev: c520165f8fe7c01865ddb2565908211c0cfd2185)

(From OE-Core rev: e56dea7dd588da62d33d33b21f857020d612e9f0)

Signed-off-by: Krishnanjanappa, Jagadeesh <jagadeesh.krishnanjanappa@caviumnetworks.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Paul Eggleton
4b64fb5baa classes/populate_sdk_ext: disable network connectivity check
Most of the time we shouldn't be downloading anything within the
extensible SDK (since it's all pre-built and we have the sstate
artifacts) therefore there's really no need for a connectivity
check, in fact it may just get in the way.

(From OE-Core rev: beaf851ae8aadb5b9e3c0b9840479efcbb05be23)

(From OE-Core rev: cc65df3aeb84e53a2608535c81e1e3f4dd9e8bc4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Paul Eggleton
d730e14639 devtool: force use of bash when running build within extensible SDK
Ubuntu's default dash shell causes oe-init-build-env to behave a bit
differently - (a) it can't pick up the OE root directory and (b) it
can't see any build directory specified as a command-line argument
(since dash doesn't pass through any arguments specified to sourced
scripts). We could work around these but doing so requires some internal
knowledge of the script; a much simpler fix is just to force running the
command under bash since it's expected to be installed on every distro.

Thanks to Chen Qi <Qi.Chen@windriver.com> for this fix.

Fixes [YOCTO #7614].

(From OE-Core rev: 27942f546e6b08cdf9f2dbda2e24d237cde7f5f5)

(From OE-Core rev: f83f108f83766d4c141946084b7c4be730c2865e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Carlos Rafael Giani
75a982e74f u-boot.inc: make sure all counter variables are properly unset
The script does "i == j" checks to retrieve the config <-> type pairs from
the UBOOT_MACHINE and UBOOT_CONFIG lists. This check however requires both
j and i to be initially unset. Ensure this by explicitely unsetting i.

This fixes broken u-boot SPL installations with SolidRun machines
(the SPL wasn't being installed and deployed.)

(From OE-Core rev: 50233dc2544fe8eeee69a5dc07f505db29fc9e0e)

(From OE-Core rev: a00cf56b0caf2327bd85b80c7d0db6f4d8620a36)

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Reinette Chatre
1e64bf4a7e init-install-efi.sh: fix gummiboot entry installation
After selecting the "install" gummiboot option of a Live image we are
seeing boot failure resulting from the gummiboot entries not being
installed correctly. This seems to be a problem in this init-install-efi.sh
script where it incorrectly installs the gummiboot entries into the root
filesystem, not the boot partition. We fix it by installing the entries in
the boot partition.

(From OE-Core master rev: c9b06c79ed8a082d1b385e9f61721aeeda9bf1af)

(From OE-Core rev: 5d38c46689c9065992838b58e280886f4091f8fd)

Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Robert Yang
427c70443d aspell: inherit binconfig-disabled
There is a pspell-config.

(From OE-Core master rev: 53c8a954e699b3ae3e7a0a2b3860cf7c9ad1288e)

(From OE-Core rev: 27bf71420b535678640f8edd0c6bc551bd322f1c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:45 +01:00
Koen Kooi
0456e83de4 strace: fix build for aarch64
Upstream added aarch64 support but forgot to update 'make dist' leading to missing files in the tarball.

(From OE-Core master rev: a40309f284805e8cda024f7299a676cfdf8f97a5)

(From OE-Core rev: fd11110b7d63fce6a1f7a26f123ae7a8ddee3175)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Andre McCurdy
c18b02e5e9 busybox: remove CVE-2014-9645 patch (already upstream in 1.23.x)
The CVE-2014-9645 fix was merged in Busybox prior to the 1.23.0
release [1]. The fix was then reworked in Busybox 1.23.1, in such
a way that the original change was no longer required [2].

Although oe-core's CVE-2014-9645 patch still applies cleanly to
Busybox 1.23.1 and 1.23.2, applying it partially reverts the second
version of the upstream fix.

  [1] http://git.busybox.net/busybox/commit/modutils/modprobe.c?h=1_23_stable&id=4e314faa0aecb66717418e9a47a4451aec59262b
  [2] http://git.busybox.net/busybox/commit/modutils/modprobe.c?h=1_23_stable&id=1ecfe811fe2f70380170ef7d820e8150054e88ca

(From OE-Core master rev: a753d3d8884b96baad5ed1a03335a81586420b86)

(From OE-Core rev: ef1748f26ab246d893f51141caa24dd4ae6b5ec0)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Dmitry Eremin-Solenikov
aa263849ba lsb: provide lsb-core-ARCH
Some lsb packages depend on correct lsb-core-ARCH package being
installed (or rather provided) on the target file system. Provide this
package name by main lsb package.

(From OE-Core master rev: 981109b7388dcd0de9fd2e9cdfe2a920b9f8facb)

(From OE-Core rev: 65276d62f655926a82a17f02bb3a4ae0f08e6518)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Armin Kuster
534d2f3a5d crypto: use bigint in x86-64 perl
on some hosts openssl fails to build with this error:

ghash-x86_64.s: Assembler messages:
ghash-x86_64.s:890: Error: junk '.15473355479995e+19' after expression

backported fix from community.

(From OE-Core master rev: 8230f873921d5c16106e3ebf57053a646bc6ad78)

(From OE-Core rev: b981717484c70c6c9bcd6dacb736c2844fa863ed)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Junling Zheng
2c3ae1ed7a elfutils: fix an incorrect patch for 0.161
The original uclibc-support.patch is not compatible with elfutils-0.161.
It should be corrected through adjusting context.

So regenerate a new patch for elfutils-0.161, rename the patch for
elfutils-0.148, and put them into respective directories.

(From OE-Core master rev: 64acb72e7ec63528073d8290137fe74d3382f876)

(From OE-Core rev: d4924543c265ca497d4c419d4571cf1f8ef31d09)

Signed-off-by: Junling Zheng <zhengjunling@huawei.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Gary Thomas
0c20afe810 gst-player: Fix typo
The subtitle (shown in desktop icon) should say
  Basic media player
    -not-
  Basic media plaer

(From OE-Core master rev: f672fae1b1647f7a628ba9ba92fd4fab81d91546)

(From OE-Core rev: d1f9764375a3f9187d523fa45639731a6619a691)

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Koen Kooi
aab4a03e19 libgpg-error 1.18: simplify tupple handling and add armv8b support
Add a default option to the case statement and remove the duplicates. Also add support for armv8b architectures.

(From OE-Core master rev: 8d207e55031c0b93387e728f4312b8cb34ad5b12)

(From OE-Core rev: 95a0b9305a17afb9eb317d9d946f721c462e0db6)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:44 +01:00
Khem Raj
47876b91e9 ppp: Add extra include dirs
Just run configure, the configure script is not really
a autoconf generated script so just run it

Include path is needed to be there since
the headers from it are used during build in subcomponents

Change-Id: Ib1f24fd18bc8564e3c74ab834b7cf0fdf955d0e1
(From OE-Core master rev: c64c9f7ffc88018404afdde373dfd7ef2bdf7ae8)

(From OE-Core rev: a11ebe122bc31127bae59a65dbabe9ce5c3f568c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Jean-Benoit MARTIN
2536f8d363 package_manager: RpmPM: Fix scriptlet for rpm 4
Path of rpm post install script is different between rpm 4 and 5

(From OE-Core master rev: a880669f767532ce3c39eb160fa9deb9fce29677)

(From OE-Core rev: cc57a6827d383380b37d9df14ef799b10a62a469)

Signed-off-by: Jean-Benoit MARTIN <jean-benoit.martin@open.eurogiciel.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Robert Yang
c6269fbbc4 pcmciautils: fix for parallel build
Fixed:
Compiling lex_config.c.
  src/lex_config.l:34:25: fatal error: yacc_config.h: No such file or directory

There was a patch for fixing the paralle issue before, so modify the
patch again.

(From OE-Core master rev: e1193feb30fbbfacb430ccbb9f33cd782f7cb87d)

(From OE-Core rev: 0907c61d7b9ad892ae815d68393ed2e30881e289)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Mariano Lopez
52c03366ec kexec-tools: Add support for build with x32 ABI in x86_64
Add autoconf test for detect when build is x32 ABI this enables to
test into purgatory Makefile to avoid use -mcmodel=large flag in CC.

Add ELFCLASS read and syscall number into kexec, see patch.

[YOCTO #7419]

(From OE-Core master rev: 7b75430c2e3ffedb9ef4198fabf259b757b9ce5a)

(From OE-Core rev: 75e493b82e7ddb2730b0ede9aeb448c62d8bf032)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Aníbal Limón
c53661af38 nss: Fix build in x32 ABI
When try to build nss with x32 ABI enabled fails because
it need to be specified USE_X32 env var.

[YOCTO #7420]

(From OE-Core master rev: 2898c2cf94bd690ebfc4ab5f4d220e6ea05aca82)

(From OE-Core rev: 9eb690e7ce168bcf97055ba0e5325bd0b0107cb4)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Jukka Rissanen
2bb285d6b8 connman: Create connman.service at proper moment
ConnMan commit ac332c5d01b0737c18cb58c8ccc67cf6b0427e1d changes
how the connman.service file is created from .in file. After
that commit, the file is created by Makefile instead of configure.
This means that we need to tweak the service file in compile
time instead of configure time because the generated file will not
be there after the configuration.

This commit can be used even with older ConnMan version as the
connman.service file is there when the compilation happens.

(From OE-Core master rev: 32839103727d92a6580f916b6dd8e4439b2347c8)

(From OE-Core rev: 66d8cec7225cae7269c539d9372a1364c9cefc0d)

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Gary Thomas
5553c4cd8d libgpg-error: Fix native build on i686
Most modern x86 systems return i686 as the system type.  This
patch handles i486, i586 and i686 correctly.

(From OE-Core master rev: 1b24eaa71702c07e525d8a62c08c0983e9917468)

(From OE-Core rev: 8951cce6b9c68e3100ab2c568baf5148c1a0221d)

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:43 +01:00
Martin Jansa
aefa1a6eea tzdata: fix postinst
* add quotes around possibly empty tz variable
* use exit instead of return, because we're not in function and postinst
  fails:
  line 9: return: can only `return' from a function or sourced script"

(From OE-Core master rev: 87429d37e72b1fd2f329d693b4d1b1229a90e0a2)

(From OE-Core rev: ff58b2b6d07725adedddb709000775af8da3c5db)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Martin Jansa
bd7710bff7 pango: fix postinst
* merge postinst_prologue with the append in the do_split_packages call
  Now we can call correct pango-querymodules binary and respect D
  variable, otherwise we're trying to regenerate it on host which fails:
  pango-module-basic-fc.postinst: line 17: /usr/bin/pango-querymodules:
  No such file or directory

(From OE-Core master rev: f5d189b80a1fd7187f47678935f9a584ccff8d0a)

(From OE-Core rev: 3bbdb42c17222e78e3a4d043f26c9b2dce6d6891)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Krishnanjanappa, Jagadeesh
62675e990f dpkg: add triplet entry to fix build error for armeb
Cross-compling dpkg application for armeb fails with below error
during configure task,

(snip)
 configure:23141: checking dpkg cpu type
 configure:23148: result: armeb
 configure:23150: WARNING: armeb not found in cputable
 configure:23162: checking dpkg operating system type
 configure:23169: result: linux-gnueabi
 configure:23171: WARNING: linux-gnueabi not found in ostable
 configure:23183: checking dpkg architecture name
 configure:23189: error: cannot determine host dpkg architecture
-- CUT --

Add the required combination of "gnueabi-linux-armeb" entry in
triplet list.

(From OE-Core master rev: 63eb33bced1fc1e5451988fc5249ab362fb82615)

(From OE-Core rev: 0c83ca720ccfbef6964ac34fedfefa9006c484c4)

Signed-off-by: Krishnanjanappa, Jagadeesh <jagadeesh.krishnanjanappa@caviumnetworks.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Koen Kooi
006aafcb3c gst-ffmpeg: fix libav-9.patch
The patch has a stray '>' in an #incude directive leading to build
failures when used.

(From OE-Core master rev: f2a45c0c1b9878319890fe03f26dd4e0db740091)

(From OE-Core rev: 882cc6f7bb50022c2ed428537ffb09fd497de16d)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Koen Kooi
882f8c5743 gst-ffmpeg: remove bogus patch that leads to build failures
'0001-huffyuvdec-check-width-more-completely-avoid-out-of-.patch'
patches the internal copy of ffmpeg with a hunk that generates a compile
failure because AV_PIX_FMT_YUV422P is undefined.

(From OE-Core master rev: 3657e0fc2cd48a08035c7a0ab4da7e6666d2d91d)

(From OE-Core rev: b487d0a37536bb412cf332610f692d5eb3c8f3d9)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Koen Kooi
d685adb430 gst-ffmpeg: fix internal-libav builds with inherit autotools-brokensep
Building the internal copy of ffmpeg is broken when using S!=B, so
inherit autotools-brokensep

(From OE-Core master rev: 4ac5d1011fe6b5bba9511416082891e925cbd03c)

(From OE-Core rev: 0d118d0216f75221f17644ecd154637288c68c1c)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Andre McCurdy
35bbff5e5d libpcap.inc: remove obsolete libnl1 PACKAGECONFIG
There's no libnl1 recipe in oe-core (or any other layer in the layer
index).

Keeping the libnl1 PACKAGECONFIG is likely to cause problems for the
libnl PACKAGECONFIG since libnl and libnl1 both use --with-libnl and
--without-libnl.

(From OE-Core master rev: 4c820481147e9c11160b00f7df7ca8c329b23eac)

(From OE-Core rev: c914254e9ec218d590fc77b921dbddf31b2d41c7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:42 +01:00
Li Zhou
8766cae8b4 xorg-server: Security Advisory - xorg-server - CVE-2015-0255
Updated x11-server packages fix security vulnerability:

Olivier Fourdan from Red Hat has discovered a protocol handling issue in
the way the X server code base handles the XkbSetGeometry request, where
the server trusts the client to send valid string lengths. A malicious
client with string lengths exceeding the request length can cause the server
to copy adjacent memory data into the XKB structs. This data is then
available to the client via the XkbGetGeometry request. This can lead to
information disclosure issues, as well as possibly a denial of service if a
similar request can cause the server to crash (CVE-2015-0255).

(From OE-Core master rev: 564e2f9732ac4318bb5923dd1ff771514c9afd2f)

(From OE-Core rev: edde2ef38d483888e5daa7c00007cb1b84de6336)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Khem Raj
f416e2b9bb libffi: Use proper compiler define for linux platform
Change-Id: I8253249a2e1c5e9ded0d028545f21cfdc093c3cd
(From OE-Core master rev: f7307ea20c8aa4aed4c38a7c15fb9b3b6b836035)

(From OE-Core rev: df99dd90255e46b226f4eea7b3c0d81f548adaf9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Khem Raj
0c045cab74 libusb-compat: Include sys/types.h in usb.h
Fixes compile errors when usb.h is included in
other packages, it expects sys/types.h to be
there, instead it should include it itself

Change-Id: Ib49477b7d3f3cd97d65c9578bdc33f2ee33f5a26
(From OE-Core master rev: 577b5c6ce6753b9ae3587da47caf6ecfac358668)

(From OE-Core rev: 833165b96b8b51292ad9758a491abce7f380f6de)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Khem Raj
8d6080ebe0 bluez4: Fix encrypt symbol namespace collision
| Makefile:3352: recipe for target 'test/l2test.o' failed
| make[1]: *** [test/l2test.o] Error 1
| make[1]: *** Waiting for unfinished jobs....
| test/rctest.c:82:12: error: 'encrypt' redeclared as different kind of
symbol
|  static int encrypt = 0;
|             ^
| In file included from test/rctest.c:33:0:

Change-Id: Iaf2f644ef3cef6f96c6e4bc421c9e78a0e23e674
(From OE-Core master rev: 795a409919774f3a2a4c859799de36f1064efd83)

(From OE-Core rev: 899a6f213eb350334987e818094c8acd7ab513ab)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Matt Madison
c3613297f0 shadow: split files needed for PAM use into separate package
The rootfs creator automatically removes shadow for read-only
root filesystems, which breaks use of PAM plugins for login and
other process identity management utilities.  Package those programs
and config files separately, so they don't get removed.

(From OE-Core master rev: a7d8eaef04c9dd6ede8d4efd8c4b776efbe3c767)

(From OE-Core rev: 783982314f140611ba2056a280421085bba5c155)

Signed-off-by: Matt Madison <matt@madison.systems>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Nathan Rossi
ec3a90915f python: Change python 2.7.9 to use libffi from the system
Changes in python 2.7.9 from 2.7.3 cause issues when building the in
tree libffi for ctypes. These issues primarily affect less common
platforms (e.g. MicroBlaze) that are supported by libffi but the python
overrides for the in tree libffi are not able to detect correctly.

This patch changes the python 2.7.9 recipe to match how the python 3
recipe handles libffi by configuring the build to use the system
libffi. This brings consistency between the libffi used for different
python versions as well as with the system.

(From OE-Core master rev: 4302cc20dbe0f0490a5e7b62baeb632322c40200)

(From OE-Core rev: 9f7b0133b63d315703d0c44e877ae81d4a9a1692)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Wenzong Fan
75c0781c5e perl: module overload rdpends on overloading
Fix perl runtime issue:

* Can't locate overloading.pm in @INC (you may need to install the
overloading module ...) at /usr/lib64/perl/5.20.0/overload.pm line 83.

(From OE-Core master rev: 3dec9ad1cd6ad1236950b0100f6327df7a0bf7db)

(From OE-Core rev: cecac1d52143e34b6e1142e38a1c874188dd74e9)

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:41 +01:00
Denys Dmytriyenko
e267a38cd7 security_flags.inc: elfutils on ARM fails with PIE flags
The error messages look like this:
R_ARM_TLS_LE32 relocation not permitted in shared object

(From OE-Core master rev: a915adfd1eaad9a0d65dffe9da92811284e491c8)

(From OE-Core rev: 1d8cbf8354e734253e335fee2c423b3a108454bd)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Christopher Larson
5b7487567c oe.sstatesig: align swspec handling with sstate.bbclass
The logic tries to remove the -native suffix from pn to handle this (though it
doesn't succeed, as it doesn't assign the new pn to the variable), but we need
to do more for the swspec tasks than just not set the extrapath, we also need
to change from SSTATE_PKGSPEC to SSTATE_SWSPEC. Alter to correct the spec for
these cases, and also add preconfigure to align with the current logic in
sstate.bbclass, which includes that task as well in the list of tasks to
adjust to use swspec.

[YOCTO #7563]

(From OE-Core master rev: c9105597763be4bf5bc0ec97cc999566d0f10678)

(From OE-Core rev: 4f9cde9d8e700d10cdb1da82bf7489df5633c549)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Mario Domenech Goulart
66fc24c6cb useradd_base.bbclass: typo fixes (s/scucess/success/)
(From OE-Core master rev: eace0a2c13721d1b8952a01abac30eb2661fcd85)

(From OE-Core rev: b073f927ec332c5a3608277751ef27d9280c51d8)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Matthieu Crapet
310e37485b util-linux: add lastb.1 and nologin.8 to update-alternatives
/usr/share/man/man1/lastb.1
is also provided by sysvinit recipe.

/usr/share/man/man8/nologin.8
is also provided by shadow recipe.

(From OE-Core master rev: 8fdf9a355291e7341f9c9a6c219349cf95326171)

(From OE-Core rev: 1aaa289be5aeb066e378c2119be9f5ac055d4803)

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Aníbal Limón
5edbe941f9 lzop: Fix build using x32 ABI
When tries to build lzop using x32 ABI fails trying to get
FLAGS register that is 64-bit and destination variable is
32-bit size_t.

[YOCTO #7424]

(From OE-Core master rev: 6122c5e02b96ab786204d08b470177d824004d24)

(From OE-Core rev: 842558c5fb2ef0520b7a11516dc720694e5acf04)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Junling Zheng
66b63d921b uclibc: fix undefinition of '_dl_strchr' in libdl.a
The orign_path.patch introduced '_dl_strchr' in ldso/ldso/dl-elf.c, and
caused the following undefined referencing compiling error:

  | .../libdl.a(libdl.os): In function `search_for_named_library':
  | .../dl-elf.c:156: undefined reference to `_dl_strchr'
  | collect2: error: ld returned 1 exit status

I found this problem when compiling gdb in static mode using uclibc.

So, add the definition of '_dl_strchr' to fix it. The '_dl_strstr' is
added as well.

And I regenerated a patch to replace the original one.

(From OE-Core master rev: 34b82b8452aa721146f95321cfd1a1fee3f0d6c8)

(From OE-Core rev: c39c0d0426b2f9b2c13403705167e2d8201df1ff)

Signed-off-by: Junling Zheng <zhengjunling@huawei.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Joe Slater
08b10e93c4 nss: generate debug info
Because the build of nss seems to ignore CFLAGS, we never
have put source code in the -dbg package.  We do not address
the CFLAGS issue, but we do add -g to the definition of CC
so that we will generate debug info.

We also let package.bbclass populate the -dbg package instead
of forcing the contents locally.

(From OE-Core master rev: 0ec01bbd845b61798366441b2c7e5b8738db6b32)

(From OE-Core rev: 24a55a1e9658fdfd7b314ce1d9f40e0374990b7a)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:40 +01:00
Jun Zhu
a536594605 meta/lib/oe/utils.py: Corrected the return value of both_contain()
oe.utils.both_contain() should return the result as "checkvalue" or "",
but the latest implement returns as "set(['checkvalue'])" or "";

It causes that bitbake.conf generates the wrong result of COMBINED_FEATURES,
which contains the common components in both DISTRO_FEATURE and MACHINE_FEATURES.

For example, build in Dizzy branch, COMBINED_FEATURES is "alsa usbhost ...",
but recently, COMBINED_FEATURES is like "set(['alsa']) set(['usbhost']) ...".

(From OE-Core master rev: c4ca9dbd4191fcff08e75035e3d276490ed80b05)

(From OE-Core rev: 9471b87ecadeeba8e8ffe6955ec1dedc976a2978)

Signed-off-by: Jun Zhu <R01007@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 18:12:39 +01:00
Scott Rifenbark
e2e522a6ed ref-manual; mega-manual: Edits to further define packaging process
In response to community input where developers were attempting to
locate information on how to write packages out to a directory
other than ${DEPLOY_DIR}/<package_type>, I updated the "Package
Feeds" section, added several new DEPLOY_DIR_* variables, updated
four classes, and updated four tasks.  Here are some details:

 * Made changes to the "Package Feeds" section to provide more
   accurate information in the package feeds directory structure
   used by the build system in build/tmp.  These changes included
   updating the figure itself and some explanatory text.

 * Updated the DEPLOY_DIR variable description.

 * Added new variable descriptions for DEPLOY_DIR_DEB, DEPLOY_DIR_IPK,
   DEPLOY_DIR_RPM, and DEPLOY_DIR_TAR.

 * Updated the related classes: package_deb, package_ipk, package_rpm,
   and package_tar.

 * Updated the related tasks: do_package_write_deb, do_package_write_ipk,
   do_package_write_rpm, and do_package_write_tar.

Reported-by: Trieu Nguyen <trieu.t.nguyen@intel.com>
(From yocto-docs rev: a8d499850dec72f8decd81ec6714809c3a580ffc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-03 11:49:38 +01:00
Scott Rifenbark
145fe000ac ref-manual: Updated the "Image Features" section
Removed the requirement that debug-tweaks is needed in order to
individually use the allow-empty-passowrk, empty-root-password,
and post-install-logging features.  These three features can be
individually turned on an off regardless of debug-tweaks.

(From yocto-docs rev: e9f2e2b0f094cf243d601ee3fcdf9588cc81e003)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-03 11:49:38 +01:00
Scott Rifenbark
4206fcbf22 dev-manual: Updates to add Luna support for Eclipse
Adding Luna and dropping Juno. Pretty much went through the
"Working With Eclipse" section and dropped Juno and added
Luna.  A major deletion was the BitBake Commander section using
Hob.  Todor told me to drop this section completely.  Note that
I also added a couple new YoctoProjectTools that appear on the
menu: SystemTap and yocto-bsp.

(From yocto-docs rev: 6dc7d842acb0f190138418c7bf874999219cbead)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-03 11:49:38 +01:00
Scott Rifenbark
f366ff2c03 ref-manual: Updated the ELF Binary QA warning message
Fixes [YOCTO #7630]

I applied some feedback from Laszlo Papp suggesting that the user
can also use '-fpic' as well as '-fPIC' for a command-line option.

(From yocto-docs rev: 750ff4d3203f358595df8d10cc57e8d63a9fef4a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-28 16:31:00 +01:00
Scott Rifenbark
320a2206e0 dev-manual; ref-manual: Fixed &dash; issue
Fixes [YOCTO #7386]

Apparently the "&dash;" ENTITY used throughout the YP manual set to
get literal "-" characters in example commands renders into a unicode
that is not a dash.  This results in users getting errors if they
attempt to cut-and-paste a sample command that uses a "-" character
from the manual into a shell.  I have universally replaced all the
"&dash;" strings in the YP manual set to "-" strings.

(From yocto-docs rev: 1309e124d83fdf3c98be5c3ff1943f1c0d496c20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-28 16:31:00 +01:00
Maxin B. John
e4f3cf8950 curl: several security fixes
Fixes below listed bugs:
1. CVE-2015-3143
2. CVE-2015-3144
3. CVE-2015-3145
4. CVE-2015-3148

(From OE-Core rev: cd3da9c95f48899e134a5b7ed1754fd18985df4f)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 15:25:43 +01:00
Martin Jansa
2a9486875d fontcache: allow to pass different fontconfig cache dir
(From OE-Core rev: adfb970efcb30af9b3b420b06b66e2aa6cc00ab4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 15:02:35 +01:00
Martin Jansa
28e8418644 image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency
* this is causing dependency loops in some cases
  e.g. linux-hp-tenderloin depends on initramfs-android-image, but
    commit 41f0f86ec0a3e0b6f6c9bb4ef71a4215c00bf66c
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Tue Jan 27 15:24:52 2015 +0000
    Subject: image: Add missing depends on virtual/kernel for depmod data
  adds also dependency between <image>.do_rootfs and virtual/kernel:do_packagedata
  causing this dependency loop:

Dependency loop #1 found:
  Task 78 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_install)
    (dependent Tasks ['linux-hp-tenderloin, do_compile',
                      'pseudo, do_populate_sysroot'])
  Task 88 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package)
    (dependent Tasks ['rpm, do_populate_sysroot',
                      'pseudo, do_populate_sysroot',
                      'linux-hp-tenderloin, do_install',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_packagedata',
                      'file, do_populate_sysroot',
                      'gcc-runtime, do_packagedata'])
  Task 89 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package_write_ipk)
    (dependent Tasks ['linux-hp-tenderloin, do_package',
                      'opkg-utils, do_populate_sysroot',
                      'linux-hp-tenderloin, do_packagedata',
                      'pseudo, do_populate_sysroot'])
  Task 560 (meta-smartphone/meta-android/recipes-core/images/initramfs-android-image.bb, do_rootfs)
    (dependent Tasks ['bash, do_package_write_ipk',
                      'run-postinsts, do_package_write_ipk',
                      'db, do_package_write_ipk',
                      'update-rc.d, do_populate_sysroot',
                      'android-tools-conf, do_package_write_ipk',
		      'base-passwd, do_package_write_ipk',
                      'initramfs-boot-android, do_package_write_ipk',
		      'expat, do_package_write_ipk',
                      'bzip2, do_packagedata',
		      'glibc-initial, do_packagedata',
                      'openssl, do_package_write_ipk',
                      'bzip2, do_package_write_ipk',
		      'busybox, do_packagedata',
                      'zlib, do_packagedata',
		      'qemuwrapper-cross, do_packagedata',
                      'base-passwd, do_packagedata',
		      'busybox, do_package_write_ipk',
                      'zlib, do_package_write_ipk',
		      'qemuwrapper-cross, do_package_write_ipk',
		      'gcc-runtime, do_package_write_ipk',
		      'gettext, do_packagedata',
		      'initramfs-boot-android, do_packagedata',
		      'gettext, do_package_write_ipk',
		      'libgcc-initial, do_packagedata',
                      'expat, do_packagedata',
                      'gdbm, do_packagedata',
		      'depmodwrapper-cross, do_package_write_ipk',
                      'libgcc-initial, do_package_write_ipk',
                      'glibc-initial, do_package_write_ipk',
                      'linux-libc-headers, do_packagedata',
                      'glibc, do_packagedata',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_package_write_ipk',
                      'sqlite3, do_packagedata',
                      'initramfs-android-image.bb, do_package_write_ipk',
                      'sqlite3, do_package_write_ipk',
                      'android-tools-conf, do_packagedata',
                      'ncurses, do_packagedata',
                      'openssl, do_packagedata',
                      'android-tools, do_packagedata',
                      'ncurses, do_package_write_ipk',
                      'cryptodev-linux, do_packagedata',
                      'android-tools, do_package_write_ipk',
                      'pseudo, do_populate_sysroot',
                      'cryptodev-linux, do_package_write_ipk',
                      'linux-libc-headers, do_package_write_ipk',
                      'depmodwrapper-cross, do_packagedata',
                      'linux-hp-tenderloin, do_packagedata',
                      'readline, do_package_write_ipk',
                      'opkg-utils, do_packagedata',
                      'linux-hp-tenderloin, do_package_write_ipk',
                      'python, do_packagedata',
                      'gdbm, do_package_write_ipk',
                      'opkg, do_populate_sysroot',
                      'python, do_package_write_ipk',
                      'libtool-cross, do_packagedata',
                      'db, do_packagedata',
                      'libgcc, do_packagedata',
                      'libtool-cross, do_package_write_ipk',
                      'update-rc.d, do_packagedata',
                      'update-rc.d, do_package_write_ipk',
                      'libgcc, do_package_write_ipk',
                      'opkg-utils, do_populate_sysroot',
                      'makedevs, do_populate_sysroot',
                      'readline, do_packagedata',
                      'base-files, do_packagedata',
                      'gcc-runtime, do_packagedata',
                      'opkg-utils, do_package_write_ipk',
                      'base-files, do_package_write_ipk',
                      'ldconfig-native, do_populate_sysroot',
                      'bash, do_packagedata',
                      'run-postinsts, do_packagedata'])
  Task 82 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_compile)
    (dependent Tasks ['initramfs-android-image.bb, do_rootfs',
                      'linux-hp-tenderloin, do_configure'])

(From OE-Core rev: 10399fd97439af12cc23f199ec668a43c230ded4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 15:02:35 +01:00
Martin Jansa
97e5d37719 elfutils: fix build with -Os
(From OE-Core rev: cd8c20f10381595d44b9e8d251a1b5bd6c6176b2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 15:02:34 +01:00
Paul Eggleton
7209c0bb13 bitbake: lib/bb/utils: add safeguard against recursively deleting things we shouldn't
Add some very basic safeguard against recursively deleting paths such
as / and /home in the event of bugs or user mistakes.

Addresses [YOCTO #7620].

(Bitbake master rev: 56cddeb9e1e4d249f84ccd6ef65db245636e38ea)

(Bitbake rev: 9178a708ecd75758be360a5a6bb04c77b69be5d8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:33:11 +01:00
Anders Darander
4c8b3e10f7 bitbake: fetch/git: Remove a possible trailing '/' in subpath
If the subpath parameter to the git fetcher ends with a trailing '/',
 bb.utils.prunedir() will be called on '/'...

Fixes [YOCTO #7620].

(Bitbake master rev: 380a3fb372c8b0a53dd7528562e6e7a222dc76ef)

(Bitbake rev: 7110055ab26d40e2a4e83956177b59a58e9cdcfd)

Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:33:11 +01:00
Scott Rifenbark
63ee4133b8 yocto-project-qs: Replaced GNOME Mobile with GTK+ wordings.
GNOME Mobile no longer applies.  I updated text to use the
GTK+ wordings.

(From yocto-docs rev: 978878d3f1a7ea07a68f0aeae93eeae7ba58b8f3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:51 +01:00
Scott Rifenbark
47aee60bfe toaster-manual: Removed redundant video.
(From yocto-docs rev: 5ae1d89a1384790644016e79afea1a70edcf88f3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:51 +01:00
Scott Rifenbark
69cdf9658a ref-manual: Added glossary entry for EXTERNAL_KERNEL_TOOLS
(From yocto-docs rev: b4f3b0c2efc6a162d714a2180bf48aac47684a27)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:51 +01:00
Scott Rifenbark
4a90b6b0d9 ref-manual: Updates to ELF binary QA warning
Fixes [YOCTO #7630]

Apparently the text relocation being done here can cause runtime
performance issues.  I documented a potential work-around for the
issue and provided a cross-reference link to an external site for
more general information about text relocation at runtime.

Reported-by: Laszlo Papp <lpapp@kde.org>
(From yocto-docs rev: f7f611a6668b6cd2ee3928ad44c72dbbe5307c38)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
0c7340105e ref-manual: Removed FAQ question for GNOME Mobile.
(From yocto-docs rev: 12e61c66685f3ab8dc49a5c0d808aabc0b524e21)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
ac91a56adc ref-manual: Fixed some dashes in the user input examples.
I typically try to use the underscore character to string together
multi-word user-input descriptors in examples.  I fixed a bunche
here.

(From yocto-docs rev: f7bc59cfb88537a2e3045a44978e974227b8ea9f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
831fe9fa27 ref-manual: Fixed some formatting on a user-input example.
(From yocto-docs rev: d27d950d8a128c06684c3bc9e55c73c5f4f9658b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
0947319266 ref-manual: Removed tag from profile-manual cross-ref
In the introduction, the ref-manual references several other YP
manuals.  If the manual is build separately, these references resolve
to the appropriate manuals.  When the mega-manual is built, the
same references are designed to not become links.  In otherwords,
mega-manual.sed processes those links out.  This is by design.

I found a #profile-manual tag on one of the links in the introduction.
This resulted in a link in the mega-manual that would go nowhere.  I
removed the tag.

(From yocto-docs rev: 5284004cb4f619b0580b525f67a3ebc7be1cdb93)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
da7196cc2d bsp-guide: Fixed link to the OpenEmbedded style guide.
A link was going to an old YP page that talked about patch
style guide stuff.  That page simply redirects the user to a
styleguide of the OE.  I fixed the link in the manual to go
directly to that page now.

(From yocto-docs rev: 256285af25d46c1cfcd09daae1a5d1f8045bbb0d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
8614206f39 adt-manual: fixed formatting for user-supplied data in example.
(From yocto-docs rev: c3c264f14961c1e43da7bb0177cee4e3b4440b92)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
06cbcff7be dev-manual: Applied some formatting for user input.
(From yocto-docs rev: 1463f3b5f51b82bd7a4dd953003a1d24ef01178b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:50 +01:00
Scott Rifenbark
12cc91a768 dev-manual: Fixed link to Toaster Manual.
I found a link that is processed by the mega-manual.sed file correctly
but for the situation it does not resolve right.  The link is a
"naked" link.  In other words, it doesn't have a #<tag> part.
When the .sed file sees these types of links, no hyperlink is
generated.  I found a case in the dev-manual where I reference the
Toaster Manual in general and would like a link that would take the
user there.  So, I had to add a #<tag> part to the link in the XML

(From yocto-docs rev: 29c751888f16b9a2b73b64fe78eca6b7c661b2f4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
fea38f087c dev-manual: Fixed a cross-ref link that used "here" as the link.
I don't like these.  I fixed it up.

(From yocto-docs rev: be9ec19a9ba0650efa6562de350c8d6bb83db85f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
fe996c253e dev-manual: Added Toaster to the list of ways to develop.
I put this in the intro list for the section that presents various
ways to use YP.

(From yocto-docs rev: f5dd577d9b72a6433c647816464213cf83fb9bad)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
9dcec27bd5 dev-manual: Removed a cross-ref link to "here"
This practice is not good.  I had one in the manual.  I reworded
the text to not use that term in a link.

(From yocto-docs rev: 8c56090d52a9844c4aa072b4eaa4ee32a03d8352)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
854edda7d7 dev-manual: Updated branch descriptions for better manual maintenance
The "Repositories, Tags, and Branches" section had some wording
that described how branches are maintained in the poky repo that
made it hard to maintain in the doc from release to release.  I had
a list of past releases by name and as such would have to update
it every release to make it reflect the last set.  Well... this
is not the best way to do this and proved out as it slipped through
the cracks for the YP 1.8 release.  Consequently, I recast the text
so it is "release proof".

(From yocto-docs rev: 5ed1238f53320a3aa1f00ea04191cacdad5fbe95)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
4aa45aca7a ref-manual: Removed "Intel Corporation" from the "Links" section.
In an attempt to keep the project as much open source as possible,
I removed the link to Intel from this list of resources.  We don't
list Linux, OpenedHand, Wind River, etc.

(From yocto-docs rev: 0c2223e788f8b87c376846ae724b7f8e26513559)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
c6a9013728 dev-manual: Updated the poky definition in the "Terms" section.
Added some stuff about "poky" meaning the default distribution
when using YP and the poky git repository to build an image.

(From yocto-docs rev: 8f78b6d29676b953ce1d09d785d259630e4acce0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:49 +01:00
Scott Rifenbark
1cc6544d69 ref-manual: Updates to ELF binary QA warning - review changes
Applied some review edits from Paul.

Fixes [YOCTO #7630]

(From yocto-docs rev: 0b7b3d36565da6745a13f5f6d17174e9d69c072e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:48 +01:00
Michael Wood
19933e4474 dev-manual: Updated the "Enabling and Using the Tool" section
The send-error-report tool syntax has slightly changed since the
documentation was written.  Removed the [server] part of the
command and added more detail on its use and results.

Reported-by: Michael Wood <michael.g.wood@intel.com>
(From yocto-docs rev: b0d427ac0c520dbaff6b3222f1d0e4ac617f5d41)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:48 +01:00
Ed Bartosh
41432d9d79 dev-manual: Updated "Requirements" section for creating partitioned images
Wic is not using parted and other runtime dependencies from host
system anymore.  It uses native tools instead.  Removed host parted
from the list of requirements.  Added instructions to build native
tools.

(From yocto-docs rev: 6c84e9d4f969952240a869ec83ea149a75c17978)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:48 +01:00
Scott Rifenbark
7144eb7774 ref-manual: Updates to the TCLIBC variable description
An old note still existed in this entry that stated we don't support
glibc.  This is not true.  I deleted the note.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:48 +01:00
Scott Rifenbark
59e5021b1f ref-manual: Fixed style sheet
Style sheet was not spacing after the first paragraph for glossary
entries.

(From yocto-docs rev: 9a3e29acc18c89d00ba5b176bd6fcbabb32d4be0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:07:48 +01:00
Bryan Evenson
17c5df02e2 initscripts: Remove /etc/volatile.cache on upgrade
/etc/volatile.cache is a cached copy of a script (which is
generated by /etc/init.d/populate-volatile.sh) that generates
the volatile filesystem directories.  Since volatile.cache is
a generated file, it is not necessarily changed if
populate-volatile.sh is updated.  As a result, the stale script
can add/remove the wrong directories on the next system boot.

If initscripts is being upgraded, make sure volatile.cache gets
deleted.

(From OE-Core rev: 1ee8bd05042087ffdced4cb40c55d0e45b06481c)

Signed-off-by: Bryan Evenson <bevenson@melinkcorp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-20 15:03:11 +01:00
Bryan Evenson
075f0b2c88 base-files: Check for /run and /var/lock softlinks on upgrade
Commit ea647cd9ee moved the locations
of /run and /var/lock to match the FHS 3 draft specifications.
However, the install doesn't remove the existing directories.
As a result, upgrading a system may result in /run as a softlink
to /var/run and /var/run as a softlink to /run, creating a circular
link.

During pre-install, check for the existence of the old softlinks and
remove them so the new directories can be installed.

(From OE-Core rev: c1ee31acf509b054453f19cab162dadc295e10a4)

Signed-off-by: Bryan Evenson <bevenson@melinkcorp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-20 15:03:11 +01:00
Richard Purdie
70832d863f toolchain-scripts: Allow the CONFIGSITE_CACHE variable to be overridden
In multilib and baremetal configurations, this variable can cause a variety of
problems due to the use of TCLIBC. At least allowing it to be overriden
is a start and allows various configurations to avoid the issue.

(From OE-Core rev: d343c6a7369cb409563b8149cbb423a6171221ee)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-15 15:56:02 +01:00
Scott Rifenbark
90d943ae62 ref-manual: Corrected the "package_rpm.bbclass" section.
A cut-and-paste error had left a "package_deb" string in the
first sentence of the section.  Replaced with "package_rpm."

Reported-by: Geoffroy VanCutsem <geoffroy.vancutsem@intel.com>
(From yocto-docs rev: 38b20d775ba41cb14d86177dddd85ada32fb3f86)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 14:47:50 +01:00
Scott Rifenbark
46669d3074 ref-manual: Update to oe-init-build-env-memres description.
Fixes [YOCTO #7559]

Removed the information stating that the port address 12345 is used.
Really what happens is a random port address is used.

(From yocto-docs rev: f469c2431b26593a762e348e9c5d0e84c582eab8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 14:47:50 +01:00
Scott Rifenbark
8f39398dbf ref-manual: Updates to "Kernel Build Changes" in the 1.8 migration section.
Updated this according to some changes Richard and Paul wanted to
see make it into the 1.8 release.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 14:47:50 +01:00
Scott Rifenbark
be46715a9d toaster-manual: Fixed release month in the manual table.
(From yocto-docs rev: 1c67a2a19d5dd75030928c6f571d516e5edd0b99)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 14:47:50 +01:00
Scott Rifenbark
f73d6752db toaster-manual: Added new video link for toaster configuration.
(From yocto-docs rev: 8e418e1b203d749bd939bf0f109fb8fce6053ceb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
2015-04-10 14:47:50 +01:00
Richard Purdie
33558eacc8 build-appliance-image: Update to fido head revision
(From OE-Core rev: fbf82a3c5d891c298073077edcd894293ea4d8e3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 20:32:54 +01:00
Scott Rifenbark
0db74ea8f4 tools: A real fix for thos mega-manual.sed file for Toaster.
The previous commit did not fix the problem.  This one does.

(From yocto-docs rev: d19c2096018db0127d11814ddcba919ad469e428)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 20:31:32 +01:00
Scott Rifenbark
08246fc7d4 tools: Updated the mega-manual.sed file to include the Toaster manual.
(From yocto-docs rev: 36f9685837da5d202372933bfa895e8a3724dd5c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 20:31:32 +01:00
Scott Rifenbark
d691916ef8 toaster-manual: Review edits applied.
Some steps updated according to Belen and a video link fixed to
not point to Belen's Youtube area.

(From yocto-docs rev: 557c22fdd287160f6aabac0928ce6bd8d6af3394)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 20:31:31 +01:00
Scott Rifenbark
2f6a0659fe toaster-manual: Updated customization layer to not use local XSL file.
(From yocto-docs rev: f33dee9e57a8adc18d4674f97c0f77ccbbb4a6e5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 20:31:31 +01:00
Scott Rifenbark
888fb56e97 dev-manual: Fixed bitbake -c populate_sysroot example.
This was incorrectly stated as 'bitbake -c install' in two
places.  I substituted the correct string.

(From yocto-docs rev: fe54de82cff054d4319c635a0ddba2de7cc6ebd6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 17:42:24 +01:00
Scott Rifenbark
1444bef551 ref-manual: Edits to the 1.8 migration section.
(From yocto-docs rev: 9509c22e6e9fb1dfaabe634cb554f1f68d8ea434)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 17:42:24 +01:00
Scott Rifenbark
d1df6afab2 toaster-manual: Applied final review edits.
This should be it unless there are late coming comments.

(From yocto-docs rev: cb32e3330a6fe2d26425f8765689749afcd989e9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:04:57 +01:00
Scott Rifenbark
faf19c5274 ref-manual: Added new migration section for going to 1.8
(From yocto-docs rev: b8c7fad5404eb111c0d6a39fae6e9ffcb4a615ba)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:04:56 +01:00
Scott Rifenbark
dee274305d ref-manual: Added new bluetooth class.
(From yocto-docs rev: 536117974fb08c1c6739af9c8200b228a59b7f6d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:04:56 +01:00
Ed Bartosh
20d2d2096a package_manager: call createrepo with --dbpath pointing inside WORKDIR
Rpm database in staging area is used only by createrepo.
createrepo fails with the error
"rpmdb: BDB0060 PANIC: fatal region error detected"
if rpm database is broken during previous run of createrepo.

Made createrepo to create rpm db in $WORKDIR/rpmdb/ from scratch
for every build and architecture. This should potentially fix the
failure as every run of createrepo will be using separate db.

[YOCTO #6571]

(From OE-Core rev: db21bdcba5e2f646f0dc47295e8ea7e4d49a880d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:02:49 +01:00
Ed Bartosh
a274e39f0c createrepo: Implement --dbpath command line option
--dbpath option can be used in cases where users don't want
createrepo to use system rpm db to avoid possible collisiouns
with other programs.

For bitbake builds it would be possible to specify different
databases even for every createrepo run. Considering that rootfs
builds can run multiple createrepo in parallel, it can help to avoid
race conditions caused by accessing or creating the same rpm database
by multiple createrepo instances at the same time.

(From OE-Core rev: 32324c0d7f669083cc7066e6dfc8c58248fb5429)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:02:49 +01:00
Robert Yang
dfaa74d34f glibc: fix a typo
Fixed a typo:
name-target-directory -> make-target-directory

There is no name-target-directory, it should be make-target-directory,
this fixed the error:
/bin/bash: /path/to/elf/runtime-linker.T: No such file or directory
Makefile:361: recipe for target '/path/to/elf/runtime-linker.st' failed

(From OE-Core rev: ff1366b0c9db9425d2a29eb823116353f3856dbb)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:02:48 +01:00
Robert Yang
d66075e595 db: fix parallel issue
Fixed parallel issue:
libtool: link: `bt_rec.lo' is not a valid libtool object
Makefile:867: recipe for target 'libdb-6.0.la' failed
make: *** [libdb-6.0.la] Error 1

(From OE-Core rev: 14b7787cfb1318e67ac2721c0d9d5dbf5be9dec4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02 12:02:48 +01:00
Scott Rifenbark
5f46b438a8 ref-manual: Updates to doc packages and reference links
I added xlstproc to Fedora and CentOS package lists for building out
the docs.

I abbreviated the list of references in the end chapter by leaving
just the main URLs for bigger areas such as Intel, OE, etc.  Then
I put in a link that goes back to the dev-manual list of other
informations as that is much more comprehensive.

(From yocto-docs rev: 81667b85cd8c639dd32cd5a8f614b4c890eb4dde)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:17 +01:00
Scott Rifenbark
674ffa8c68 bsp-guide: removed the BBLAYERS_NON_REMOVABLE from the example code.
(From yocto-docs rev: 35a92477897652a9af2b1a257a4576926612e054)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:16 +01:00
Scott Rifenbark
9b6eee9f30 dev-manual: Removed the detailed section on how to set up and use Toaster
(From yocto-docs rev: f3704c61a6def095cd6632ce2ad223ea84e35dac)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:16 +01:00
Scott Rifenbark
c636c22484 dev-manual: Added a small section to note Toaster as a development model.
(From yocto-docs rev: 63e73beca3b7d084c4776f296d3310a31dafcfc4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:15 +01:00
Scott Rifenbark
98ae8387e3 dev-manual: Fixed a few broken links and added Toaster manual to list.
(From yocto-docs rev: 77e3a4c704836e599b8ef6b13e68ec783e6d642d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:15 +01:00
Scott Rifenbark
f96ffe74a9 yocto-project-qs: Fixed broken link to AB nightly builds.
(From yocto-docs rev: 848dc6afa663a6730953736cf50f58130da30181)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:14 +01:00
Scott Rifenbark
66f1700481 ref-manual: Updated the OE_TERMINAL variable description
Removed an out-dated note near the bottom regarding a distro
we don't support

(From yocto-docs rev: 4211914f16d4ab01182633785068b56a258c0d04)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:14 +01:00
Scott Rifenbark
d2d94d071c ref-manual: Updated the supported distros list.
(From yocto-docs rev: 41a835409a912e55b37a64492ad2fe99fd412214)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:13 +01:00
Scott Rifenbark
0b82198c8d ref-manual: Backed out the bits for the context PNG images.
We did not have time to do this for 1.8.  So, I restored the look
of the glossary pre-images.  I did leave commented code in both
the glossary chapter and the style sheet for later.

(From yocto-docs rev: 9f1472b7d4cd86545e7927b0f693aafc88ae2791)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:13 +01:00
Scott Rifenbark
cf475ab8ea dev-manual, yocto-project-qs: Dropped Python 2.6 as a requirement
Fixes [YOCTO #7535]

Removed this from two places.

(From yocto-docs rev: d169ce99610745e8c1b4b53d898f526e557af665)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:12 +01:00
Scott Rifenbark
4ef59fe419 toaster-manual: Made some updates for virtual environment section.
I moved the note that tells the user they have to initialize the
virtual environment every time before starting Toaster to the
correct location.  I had it misplaced.

(From yocto-docs rev: 65258338e1ffb92ded573ea3b447b424b5f5fa97)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:12 +01:00
Scott Rifenbark
64ccb07092 toaster-manual: Added a new video that shows fido features.
(From yocto-docs rev: a94d6dec039d9b60468c0b26d48b9aa76c300afb)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:11 +01:00
Scott Rifenbark
acf41de1fa ref-manual: Downplayed the BBLAYERS_NON_REMOVABLE variable.
Applied some suggestions from Paul Eggleton to downplay the role
of this variable.  It is basically ignored now in all parts of the
manual set except for the descriptions of the variable itself
and the BBLAYERS variable.  I added some text reinforcing the fact
that BBLAYERS_NON_REMOVABLE is ignored by the build system and only
matters if you are using Hob.

(From yocto-docs rev: 98112751aaec6e25de48d9e3ee56592be3f53a07)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:11 +01:00
Scott Rifenbark
3eabeef5d6 dev-manual: Updates to the devtool section.
Applied review edits from Paul Eggleton.

(From yocto-docs rev: 4815556b6c9f45ce230afede7cb3b2aadf0bef1c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:10 +01:00
Scott Rifenbark
2f050af982 dev-manual: Updates to the receiptool section.
Applied review comments from Paul Eggleton.

(From yocto-docs rev: 403c9ae5443eaf2a115e2224f07ee19f98c8139d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:10 +01:00
Scott Rifenbark
dbab9c0ba1 toaster-manual: Created links to Youtube for the GUI vids
I could not get the embedded vids working very well. So we
defaulted to just linking to the Youtube locations directly.

(From yocto-docs rev: 95bef674ec04eec94f568ab00b94f7174d456011)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:09 +01:00
Scott Rifenbark
07fc680a4a toaster-manual: Added note telling user to initialize virtual env
The user must re-initialize the virtual environment (if installed)
prior to starting Toaster each time.

(From yocto-docs rev: b0daa23784f17778f758b0572f90f9293a822812)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:09 +01:00
Scott Rifenbark
8ab5bc3e1e documentation: Updates to try to fix CentOS docs build errors
The docs are not building on CentOS and we think it is due to the
XSL templates being called for the Eclipse parts.  I located all
the "current" templates and switched them out for "1.76.1" version
as are used by the mainstream doc builds.

(From yocto-docs rev: afbddde6524630433dfec973bbe886de32395bc8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:09 +01:00
Scott Rifenbark
59813630e5 dev-manual: Added footnote crediting Trevor Woerner for devtool addition.
Trevor wrote a nice paper (tutorial) on the use of devtool that I found
to be very helpful in developing the information for this new workflow.
I decided to publicly credit this effort with a small footnote near
the top of the section.

(From yocto-docs rev: 97d234f2d535f85e5a50ac4e7f0c0a79579cd004)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:08 +01:00
Scott Rifenbark
ad7edfbde3 dev-manual: Applied review edits to the devtool section.
Paul Eggleton reviewed the section.

(From yocto-docs rev: 82d9750b4349b3c54f73118ec7d65f0bb96e3f7a)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:08 +01:00
Scott Rifenbark
6fdf368f76 mega-manual: Added two figures to the figures directory.
The figures I added are for the Toaster manual.

(From yocto-docs rev: fb9bb83e48afd2e7d24d68f0c167d8d64f5d25fd)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:07 +01:00
Scott Rifenbark
40db5ea7df mega-manual: Updated the chapter structure for the toaster manual.
Added the reference chapter in so it is included as part of the
mega-manual.

(From yocto-docs rev: 90a6ebabd0657d6dd7381a8c1fc7db5ea8b26a1f)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:07 +01:00
Scott Rifenbark
56a4b1e1d4 Makefile: Added figures to the mega-manual TARFILE list
Added the three Toaster Manual figures to the list of
mega-manual figures so they will be included in the tarball
generated for mega-manual.

(From yocto-docs rev: 2190bc43dfc20c0c0ef5da82c85570f9294e1788)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:06 +01:00
Scott Rifenbark
80f3b20060 Makefile: Added additional PNG files to toaster TARFILE list.
(From yocto-docs rev: b662062cd575f187918f6841983d5682426b266e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:06 +01:00
Scott Rifenbark
693ba0b14f toaster-manual: Draft of Manual.
Fixes [YOCTO #6901]

(From yocto-docs rev: 258b46b0f3e23045b5fb8c97d03dceb69db5ce20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-01 17:36:05 +01:00
Beth Flanagan
e7b07d33c2 distro_alias.inc: update/sort alias information.
Added new package data, and cleaned up whitespace.

I've also corrected some packaged data (replacement-tar from
my reading of the recipe is the tar normally found in distros).

One issue this patch exposed st I haven't had a chance to track
down is that when you attempt to get distrodata from
gcc-crosssdk-initial-x86_64. The produced .csv in tmp/log
is missing the Distro information. bitbake -e
shows that DISTRO_PN_ALIAS isn't even getting set in this case.

My guess here is that something is happening with the "_"
along the way, I've just not found it yet.

(From meta-yocto rev: 7008eb9ed1e823afe9a36678b91f56046647ba46)

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:55:01 +01:00
Richard Purdie
aa47ba52f0 bitbake: bin/image-writer: Add ext4 as a deployable image type
This is particularly problematic since qemu images switched to ext4 by
default and now cannot work properly with UIs like hob.

This patch adds in ext4 to the appropriate variable fixing this.

[YOCTO #7426]

(Bitbake rev: 4460e6de04844c4060f1fe87c8a4b247b731c63e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:39:30 +01:00
Richard Purdie
00b2c3a5e4 bitbake: cooker: Ensure bbappend files are processed in a determistic order
self.appendlist is a dict and as such unordered. This can lead to cases
where appends with different names (e.g. x_%.bbappend vs. x_123.bbappend)
can be reordered in application which in turn reorders the variables
that those bbappend files might touch. Reorderd variables changes the sstate
cache signatures causing real world issues.

To avoid this, use a list for the append files instead.

This patch is conservative and just adds a new data structure alongside
the existing one and uses it to resolve the core issue. Later patches
(post release) can handle some of the wider but less problematic ones
(e.g. issues in bitbake-layers flatten).

[YOCTO #7511]

(Bitbake rev: ba14fb2df8793aae5d671a408c2ba2145a1a7284)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:39:30 +01:00
Richard Purdie
23a0e97d2e image_types: Add missing ext4 support
This is particularly problematic since qemu images switched to ext4 by
default and now cannot work properly with UIs like hob.

This patch adds in ext4 to the appropriate IMAGE* variables fixing this.

[YOCTO #7426]

(From OE-Core rev: 5faa85ed58210ca6fc01ed54a1b370c7aee30b18)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:39:29 +01:00
Alexandru DAMIAN
0fb825c5e5 bitbake: Revert "toaster: machine not searchable in all builds/projects"
This reverts commit 1a86ed8f95649c5f5a3a66984ce36978d93b0e01.

Bug [YOCTO #7334] was incompletly fixed, and the proper fix is
not straightfoward. Consequently we revert the partial fix, as
a incomplete fix is worse than no fix.

(Bitbake rev: 2a8b3b86fe1d5b8797f740c470a4fe5b69146bf4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:30:18 +01:00
Alexandru DAMIAN
b0cb740fe0 bitbake: toastergui: add ext4 option for IMAGE_FSTYPES
This patch adds "ext4" as a selectable option in IMAGE_FSTYPES,
to keep in sync with the OE-Core capabilities.

(Bitbake rev: 451e85fe8592cab0a07a6866b2853a29cc38f14b)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:30:18 +01:00
Belen Barros Pena
6dd5e472eb bitbake: toasterui: rename 'targets' to 'recipes'
A recent round of informal user feedback has revealed
that the term 'target' is quite problematic. For
all the users we spoke to the word refers to the
target arch. In Toaster, it refers to the software
you build.

This patch replaces the word 'target' with 'recipe'
across the Toaster interface. This is by no means
self-explanatory, but at least it cannot be confused
with target hardware, and it is also consistent with
the terminology we use in the analysis portion of
the interface.

(Bitbake rev: ac10b5d83172feb10f1f3a3c894a54d2c4c4f09d)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:30:18 +01:00
Alexandru DAMIAN
3ff649953d bitbake: toastergui: prevent error on empty build list
This patch prevents errors being thrown on date limit
computations if the build list is empty.

[YOCTO #7513]

(Bitbake rev: 8068539b6c2913fed66a865b547a653159d8c794)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:30:17 +01:00
Richard Purdie
8db54a9cfa insane: Add baremetal mappings to the QA arch test
Add mappings for i586-elf, x86_64-elf and arm-eabi to binary lookup
table which allows for a variety of baremetal toolchain generation.

(From OE-Core rev: a570052f012298f895fb88be5b0a064bad04024c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:28:35 +01:00
Richard Purdie
77b1711afb siteinfo: Add x86_64-elf support
Teach siteinfo about x86_64-elf so that baremetal toolchains parse/build.

(From OE-Core rev: 7d57887365d7f819a2cdf8efd5e6f325b6af52d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:28:34 +01:00
Paul Eggleton
1e551ec0c3 README.hardware: clarify NFS requirements for edgerouter
You don't need NFS/TFTP for a plain USB setup.

(From meta-yocto rev: 76ea21bdb1448417fb4e2e2f5659c911a30a5026)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:38 +01:00
Belen Barros Pena
e643f3defe toaster: updating toasterconf.json for fido release
We update the toasterconf.json file for the fido release.

A small update to the release help text in the
toasterconf.json file shipped with the meta-yocto layer.

We now make explicit that Toaster will build with the
tip of the selected branch. We also link the
Yocto Project Dizzy release to the git repository,
and not to the release page on the website.

(From meta-yocto rev: d9348157c4bee1789be7f7af9439c5ba287bb139)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:37 +01:00
Randy Witt
31d301a3f6 populate_sdk_ext: Log the "Preparing build system" step
When using bitbake to do the setscene as part of sdk setup, it would be
useful to have a log in the case where it fails.

The log is called preparing_build_system.log and is in the top level
directory of the extracted sdk.

(From OE-Core rev: cdcfd2211c86880772a65827975ad94d8a5be478)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:37 +01:00
Richard Purdie
b803944ce6 dpkg-native: Avoid 'file changed' errors from tar
Hardlink count duing do_package_write_deb can change causing dpkg-deb
failures. We don't care about this error case so avoid it by checking
the tar exit code.

[YOCTO #7529]

(From OE-Core rev: 77e077a57536c764034f06723edd0749dc578626)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:36 +01:00
Otavio Salvador
64b75d4276 wpa-supplicant: Make SystemD D-Bus config conditional
The SystemD D-Bus configuration should only to be installed when
SystemD support is enabled.

(From OE-Core rev: e658ee16dc026b96f67a4c9666d3eb7bf7027de3)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:36 +01:00
Chunrong Guo
2ac2706bb7 u-boot.inc: fix rename image error
Resolve mismatch between U-Boot configs and uboot image name.
   The ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX} may alway be false
   and repeat compile or install so we need to check if ${type} match ${config}

(From OE-Core rev: cc14f461a65b2266caa8acc2c24c0eec02f8e3d7)

Signed-off-by: Chunrong Guo <B40290@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:35 +01:00
Krishnanjanappa, Jagadeesh
a3360f2cc6 libart-lgpl: add art_config.h for armeb/aarch64be/aarch64be_32
The preprocessor macro values present in art_config.h
differ for individual architectures, basically libart-lgpl recipe will
pick up correct art_config.h file based on

ART_CONFIG = "${HOST_ARCH}/art_config.h"

and thereby having correct preprocessor macros definition
of each architectures.

(From OE-Core rev: a4e705930e3236bdb188192c0959d807587500ff)

Signed-off-by: Krishnanjanappa, Jagadeesh <jagadeesh.krishnanjanappa@caviumnetworks.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:35 +01:00
Patrick Ohly
ef73b474fb combo-layer: fix file_exclude for empty commits
The code detecting empty patches after removing files with
file_exclude failed for commits which were already empty before (like
the initial commit in some repos): such patches are completely empty
files, without a From line.

Detect that case and just let the normal empty patch detection deal
with it.

(From OE-Core rev: 6fd7f40728ebf57dfbc367dedeaf350b8d69784c)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:34 +01:00
Patrick Ohly
b936350fc2 combo-layer: fix file_exclude for dest_dir = .
"filterdiff -x ./some/file" does not remove changes for some/file.
We must be more careful about constructing the path name and
only add the prefix when it really means a directory.

While at it, also better normalize the path in copy_selected_files()
early on, to handle double slashes. Useful should the function ever
gets used for something other that dest_dir (which gets normalized in
sanity_check()).

(From OE-Core rev: 6c93520b5aaceefecccd83dc77e8ad7681d312c6)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:34 +01:00
Patrick Ohly
d81ee4d277 combo-layer: clean up dest_dir checking
Empty dest_dir is basically undocumented behavior. The sample conf
only mentions using just a dot for the current directory. In practice,
the empty string does not work because of code like this:

def action_splitpatch(conf, args):
    ...
        if dest_dir != ".":
            filerange_root = '%s -x "%s/*"' % (filerange_root, dest_dir)

However, the empty string was not explicitly checked for, leading to
strange errors when trying to apply patches:

[12:50:23] Applying: foobar: xyz
fatal: unable to stat newly created file '/foobar': No such file or directory

This patch turns the empty string into an alias for the dot. This seems
more user-friendly than throwing an error. This alias is intentionally
not document in the sample conf, because the dot is clearer and works also
with older copies of combo-layer.

Instead of checking for both all the time and normalizing the path when
needed (as done in some places), rewrite the value in sanity_check()
and then only check for '.'.

(From OE-Core rev: a8547b3c2c0b8bf3150043b1b6570f0d44b20335)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:34 +01:00
Juro Bystricky
232ccf23cf glibc-testing: Specify location of c++ header files
Glibc test suite contains several c++ files. They are built
with g++ -nostdinc. In this case the location of c++ include files
needs to be specified explicitly, or the programs may fail to build.

The header locations are assumed to be:
    sysroot/usr/include/c++/<version>
    sysroot/usr/include/c++/<version>/<machine>

The new code parses "configparms" to get the actual CXX and sysroot
used for the glibc test suite, then it queries CXX to determine
CXX <version> and CXX <machine>. With the known values for <version>
and <machine> the code composes a new value for c++-sysincludes
and appends "configparms" with that value.

[YOCTO #7081]

(From OE-Core rev: 15c5e5e83af409509140eaf29d4e10d9db99eb8a)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:33 +01:00
Juro Bystricky
a7e20761bd oe-git-proxy: Redirect error messages to STDERR
oe-git-proxy script needs socat. If socat is not found,
an error message is issued on STDOUT. This leads to a misleading
git message:

fatal: protocol error: bad line length character: ERRO

instead of the intended message:

ERROR: socat binary not in PATH

Redirecting the error message to STDERR fixes this issue.

(From OE-Core rev: d611d7009631aa8a372f248995b52938163966c6)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:33 +01:00
Richard Purdie
bc090aa673 autotools: Avoid find race for S = "${WORKDIR}"
For recipes with PACKAGES_remove = "${PN}", the find which removes .la files
can race against deletion of other directories in WORKDIR e.g.:

find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
|   find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

The simplest fix is to add the find option which ignores these kind of races.

[YOCTO #7522]

(From OE-Core rev: 7dd17effffc00cd6e58ba6a004b811c8452254d7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:32 +01:00
Richard Purdie
6891ae6425 gcc: Tweak arm multilib endian patch for baremetal
In a baremetal build, TARGET_ENDIAN_OPTION isn't set leading to build
failures. Add in ifdefs to avoid this.

(From OE-Core rev: 5325c763a66b252c976ece3a08e5fc916fd6c416)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:32 +01:00
Ross Burton
a842038bca kernel-yocto: merge duplicate kernel_configme task definitions
The kernel_configme task was added twice (once in the .bbclass, one in a .inc)
with different ordering constraints.

Change this to be just one definition in the bbclass with the stronger ordering
constraints.

(From OE-Core rev: 0830078cd1d6a365543877bf8eda93c3fff71b0d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:32 +01:00
Ross Burton
7c0846cc5b linux-yocto: add kern-tools-native to kernel_metadata depends
The autobuilder failed like this:

  temp/run.do_kernel_metadata.25242: line 165: createme: command not found

createme is provided by kern-tools-native.  do_patch has a dependency on
kern-tools-native, but do_kernel_metadata runs before do_patch.  So move the
dependency from do_patch to do_kernel_metadata, moving the statement from the
.inc to the class so it's alongside the task definition.

[ YOCTO #7531 ]

(From OE-Core rev: 938d0288adc2ace3c66dab5904ad958a4c7615cc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:31 +01:00
Belen Barros Pena
47686dc42f toaster: update toasterconf.json for fido release
We update the toasterconf.json for the 1.8 "fido"
release.

A small update to the release help text in the
toasterconf.json file shipped with the
openembedded-core layer.

We now make explicit that Toaster will build with
the tip of the selected branch, and we add links
to the OpenEmbedded repository.

(From OE-Core rev: 6ab371da72ce119c1b32ec7428aec1250e7aaf15)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:31 +01:00
Alexandru DAMIAN
938fa5cebf toaster.bbclass: do not add symbolic links to artifacts
This patch removes the symbolic links from the artifact list.

[YOCTO #7184]

(From OE-Core rev: 1243b616e2b375061fafb6b504df7106a808f7d2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:30 +01:00
Robert Yang
18661937e4 cpio: fix CVE-2015-1197
Additional directory traversal vulnerability via symlinks
cpio CVE-2015-1197

Initial report:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=774669
Upstream report:
https://lists.gnu.org/archive/html/bug-cpio/2015-01/msg00000.html

And fix the indent in SRC_URI.

[YOCTO #7182]

(From OE-Core rev: 87d8c11e7504210e377cb6201e672d32048e000c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:30 +01:00
Robert Yang
c1d31cf2c7 patch: fix CVE-2015-1196
A directory traversal flaw was reported in patch:

References:
http://www.openwall.com/lists/oss-security/2015/01/18/6
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=775227
https://bugzilla.redhat.com/show_bug.cgi?id=1182154

[YOCTO #7182]

(From OE-Core rev: bf986b527038821b49c81c4b9abc10e2dff32c38)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:24:29 +01:00
Richard Purdie
8b3d3e7c95 build-appliance-image: Update to fido head revision
(From OE-Core rev: da6a62eac903e66174e32d749d1c463fc3e78b78)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 13:14:35 +00:00
Richard Purdie
fe5b98019d poky: Add 1.8 to sanity tested distro list
(From meta-yocto rev: 44f0d5fc79be64d18c8bb84326606c16621806d4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 13:13:13 +00:00
Richard Purdie
184e00a36b build-appliance-image: Update to fido head revision
(From OE-Core rev: d343fbcad91d1f1379facec80b380b4ee75138cf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 13:01:19 +00:00
Beth Flanagan
8f1decb32b poky.conf: Flip DISTRO_VERSION for pending 1.8 release
Flipping DISTRO_VERSION for fido.

(From meta-yocto rev: 5d025acb4a37f74c17562bba3f1a35e0852c883f)

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:55:37 +00:00
Richard Purdie
36ac2c6dfd bitbake: Update to version 1.26.0
(Bitbake rev: 71316d2239a42f9914e64f26fa9141dfe3232354)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:55:37 +00:00
Alexandru DAMIAN
87c4e58dda bitbake: toasterui: enable sanity checker
Since toasterui acts as the user-facing UI, we need
to run sanity checks in order to let the GUI display proper
warnings and stop the build if something is wrong.

(Bitbake rev: 260dd77fa771ae3b777134f4178d344e96b6f3d6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:58 +00:00
Dave Lerner
eeef93ad07 bitbake: toaster: most-build-targets bug fixes
Fixes for the following for the "Most built targets" section of the
project page:
1) limit the number of most built targets to 5,
2) order the list of most built targets by build count,
3) select only those builds that had build status of 'fail', 'success',
or a BuildRequest of 'failed',
4) if there are no layers in the project then (on refresh) all of the
checkboxes in the 'Most built targets' list are disabled.

Note that per agreement with UI designer, the only sort on the most
target list is build count as described in (3) above; secondary sorting
is random.

[YOCTO #7177]

(Bitbake rev: dda2f07193e740860f4497c3761d340d8c5c2b41)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:58 +00:00
David Reyna
1a4c8a849a bitbake: toaster: PACKAGE_CLASSES variable does not show current value when editing
A typo in some element selectors caused the package_rpm setup to break.

[YOCTO #7448]

(Bitbake rev: 0479faa46f0364df6d8e151be34e1834076df49d)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:57 +00:00
Belen Barros Pena
3190ab6441 bitbake: toasterui: small changes to empty states
This commit:

* Makes some changes to the layout and styles of the
landing.html template

* Adds the empty state to layers.html

* Changes the message of the empty state of machines.html
to use the same wording used in all other pages

* Adds the project name and the right styles to
the empty state of the project.html template

* Makes small changes in style and wording to the
empty state of targets.html

* Updates all "configure a layer source" links to point
to the new Toaster manual.

(Bitbake rev: d886db3add1351a806ab58ec7519d2321687187b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:57 +00:00
Belen Barros Pena
38c3f2ec5e bitbake: toasterui: hide right column if empty
In the layer details page, if the background
information about the layer that shows in the
right hand column is completely empty, remove
it altogether.

(Bitbake rev: fe9fff960d0a6fc24e0e177e5194f93a7be9456b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:56 +00:00
Belen Barros Pena
63510bf20d bitbake: toasterui: Improve messaging for empty layer details
Explain that, if information is found during the build
process, it will appear in the layer details page.

(Bitbake rev: 40b46ce28b0b93241f9ce581f1e295e95bbff284)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:56 +00:00
Belen Barros Pena
7c3bdebffe bitbake: toasterui: hide release when only one exists
If only one release has been set up in Toaster,
any project you create defaults to that release,
and we simply don't show the release selection
menu when creating projects.

However, we were still showing the release information
in the project page, which would leave users wondering
what that release thing is since they never were
exposed to it.

This patch hides the release information in the
project page when only one release has been set
up in Toaster.

(Bitbake rev: 0bd81be04c88104d7d460f913d0500e5fa9755fe)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:55 +00:00
Belen Barros Pena
fd4085f380 bitbake: toasterui: update links to Toaster manual
Set the links to the Toaster manual in the base.html
and landing_not_managed.html templates to the URL of
the new Toaster manual.

(Bitbake rev: 88b1201a2f6dec53970b120cc8e13c0eb5ae21e1)

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:55 +00:00
Belen Barros Pena
792716a385 bitbake: toastergui: changes to release change notifications
* Remove the branch name from the list of the layers
deleted (it does not apply).

* In the modal dialog that warns you before layer
deletion, use the release description instead of
the release name

(Bitbake rev: b4ffe490253108e7a009290474e206468255ce12)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:54 +00:00
Dave Lerner
2b59512e0d bitbake: toaster: alert fixes for project release change
When a project release changes, if there are layers included with the
project, then show the release branch name in the layer list.  If there
aren't any layers in the project, then suppress the statement on the
changed layers.

[YOCTO # 7168]

(Bitbake rev: 24d0938001da27c7ebcf36ce076f2aa58cbcf256)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:54 +00:00
David Reyna
6a934f488f bitbake: toaster: build date range selections
Enable date range selections for build start and build complete in all
builds page for both managed and interactive mode. Disable the filter
counts.

[YOCTO #6040]
[YOCTO #7249]
[YOCTO #7461]

(Bitbake rev: 7c86ed5fb51c6237fa40fb454e58564ef027dd51)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:53 +00:00
David Reyna
e840b7a8fb bitbake: toaster: build date range selections static sources
Add the static resources from jquery-ui needed for datepicker

The static files are licensed MIT and produced by jQuery foundation
under the jQueryUI project.

[YOCTO #6040]
[YOCTO #7249]

(Bitbake rev: cedebbb47192be85ff0b1e4a313c6f9cf737a9c6)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:53 +00:00
David Reyna
abcd9796cb bitbake: toaster: machine not searchable in all builds/projects
Add "build__machine" to searchable fields.

[YOCTO #7334]

(Bitbake rev: 1a86ed8f95649c5f5a3a66984ce36978d93b0e01)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:52 +00:00
Belen Barros Pena
7cb05bf6be bitbake: toastergui: changes to the all projects table
The 'Last build' column in the all projects table
was supposed to provide the completion time stamp
of the latest project build. Instead, it is showing
the time stamp of the latest project activity, which
includes:

* when the project was created and
* when the last build started

but not when you make a change to the configuration.

The result is that the column and the sorting are very
misleading. The template is set so that the time stamp
only shows when the project has builds (if 0 builds, no
time stamp is shown). But of course the sorting still
happens according to the value, even if it doesn't
display. The result is that, when you sort by the
'Last build' column, projects with no builds
appear listed between projects with builds, and you
have no idea why.

This patch:

* changes the column label
* its position in the table
* makes sure the time stamp always displays
* and adds help text

to reflect what the data actually means.

It also makes some small changes to other table
headings.

(Bitbake rev: 994b19ef7f633b8d463efa7022f2e17cd483a387)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:52 +00:00
Michael Wood
fb7160e422 bitbake: toaster: Project page fix targets url and tooltip placement
Make sure we point to the all targets page for the notification links.
Also fix the tooltip placements and a minor typo on the targets page.

[YOCTO #7480]

(Bitbake rev: cbf3d652dcbfc1db527eb13cd796fa57d8ff3748)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:52 +00:00
Dave Lerner
e1a5d81500 bitbake: toaster: layer-relative paths for config files
Change bitbake variables table to show the path to the file in which
the variable was defined using a layer-relative path instead of the
full path to the file.

The layer-relative path is found by matching on the full defining file
path with entries in a list of layer names, sorted in descending order,
and with 'meta' appended as a built-in layer to the end of the list.

Additional filters are used to reduce false matches, although even if
there is a false match, the actual path to the defining file will be
obvious and not misleading.

[YOCTO #7414]

(Bitbake rev: ef6e854a50ea6894b0e320025280431a6fc8a9a5)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:51 +00:00
Belen Barros Pena
fa595132b3 bitbake: toastergui: give button nice rounded corners
In the 'add variable' form, the submit button had
a class applied that gave it straight corners on the
left, and rounded corners on the right.

Remove the class so that we have 4 nicely rounded corners.

The patch also removes the unncessary inline styles in the
same button.

(Bitbake rev: 4f2a6d5b515dec4b6199cc4517cd13dcc331f3c3)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:51 +00:00
Alexandru DAMIAN
1385f28770 bitbake: uievent: catch and log exceptions in receiving events
This patch prevents tracebacks and instead logs exceptions
that may happen during event processing.

[YOCTO #7216]

(Bitbake rev: 0412631fb4a15ff42bf5ee46a77920fa558ae358)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:50 +00:00
Ed Bartosh
4e18659633 bitbake: bin/bitbake: Create bitbake_main API
Moved most of functionality of bin/bitbake to lib/bb/main.py
to be able to call bitbake from python code.

(Bitbake rev: d377f7f88d73f4e5d2dffef03d6acee809827ac6)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:50 +00:00
Richard Purdie
f2ca8bc297 python-pygobject: Disable parallel make install in native case
Comments within the commit describe the issue.

(From OE-Core rev: 2d923d6dfe9431dbc005f8ba39838eb4519c471c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:49 +00:00
Richard Purdie
a77f368cca lttng-modules: Update along 2.6 stable branch
Resolve compile issues with latest 3.19 stable series kernels.

(From OE-Core rev: 13eef8f4dfcd72a6262e8291e2e08d52e3d327a2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:49 +00:00
Tyler Hall
3a646564ad uninative-tarball: fix dependency on patchelf
DEPENDS doesn't actually add the dependency on patchelf-native to the
populate_sdk task. SDK_DEPENDS does this, but move the append to after
inheriting the base class so it does not get overwritten.

Without this, uninative-tarball fails to build in a clean workspace on a
system without patchelf.

[YOCTO #7467]

(From OE-Core rev: 0631c2b52432ddf86292351d605b65941d2a8be2)

Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
Acked-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:49 +00:00
Bruce Ashfield
6e1ba48120 skeleton: clarify linux-yocto-custom workflow
It was pointed out that the kernel development documentation recommends
making a copy of linux-yocto-custom, while the comments in the recipe
itself suggest a bbappend.

To keep things consistent between these two sources, we update the
comment in the recipe itself to also recommend a copy (and rename).

[YOCTO: #6925]

(From OE-Core rev: aabd47e46a31b526ee880dfd22a1a1f2831ab355)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:48 +00:00
Bruce Ashfield
dbfafd8493 linux-yocto/3.19: fixes for Intel core warnings
Updating the 3.19 meta branch to include the following configuration
change to deal with kernel configuration audit warnings:

  9e70b482d377 romley: remove common video and media config items
  8a4e096759ad intel-common: remove eg20t from common config
  c2f5ab15620c drm-cdvpvr: Add STAGING_MEDIA
  ac4693c1db39 media: Prefer modules(m) to yes(y) and update for 3.19 Kernel

(From OE-Core rev: aa57c02e12a3ecd26eff410f70de28013aed2e00)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:48 +00:00
Bruce Ashfield
c0f931aa74 linux-yocto/3.14: integrate korg stable and meta data changes
Updating the 3.14 SRCREVs to import the v3.14.36 korg stable changes and
configuration changes to the meta branch.

(From OE-Core rev: 3ca86a30bcbdf59753b7ad611d5e307b65d3c0f6)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:47 +00:00
Bruce Ashfield
9dbc258b3f linux-yocto/3.19: configuration updates and stable import
Updating the 3.19 SRCREVs to pick up the korg 3.19.2 release, as well
as the following meta data changes:

  ed82e1ac3196 features: soc: fix typo in baytrail.cfg
  76bc151242d7 tiny.cfg: Enable BINFMT_SCRIPT

(From OE-Core rev: 486c40b6d9566e882c841f0cb398612ba70256e7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:47 +00:00
Bruce Ashfield
4dbe239ff4 kernel-yocto: allow in-tree defconfigs
In a similar manner to the kernel itself, which does the following to
bring a defconfig into the configuration:

    defconfig: $(obj)/conf
    ifeq ($(KBUILD_DEFCONFIG),)
        $< --defconfig $(Kconfig)
    else
        @echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'"
        $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
    endif

We do the same with the linux-yocto configuration processing. If a
defconfig is specified via the KBUILD_DEFCONFIG variable, we copy it
from the source tree, into a common location and normalized "defconfig"
name, where the rest of the process will include and incorporate it
into the configuration process.

If the fetcher has already placed a defconfig in WORKDIR (from the
SRC_URI), we don't overwrite it, but instead warn the user that SRC_URI
defconfigs take precedence.

[YOCTO: #7474]

(From OE-Core rev: 5f5595eebeb81be7e824d998228e4ef9f0bfac7d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:46 +00:00
Richard Purdie
df6d275d74 openssl: 1.0.2 -> 1.0.2a
Patch updated to drop TERMIO flags since these are the default on
Linux anyway (see https://git.openssl.org/?p=openssl.git;a=commit;h=64e6bf64b36136d487e2fbf907f09612e69ae911)

Also drop patch merged upstream.

(From OE-Core rev: 6cc1315b77bbdcc8f3a0d1e3132ad79ebbeeb2de)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:46 +00:00
Jussi Kukkonen
62fdc7b503 gst-player: Add error messages for missing plugins
Make it easier to understand problems with missing gstreamer plugins
(e.g. decoders) by adding an info bar with a message like "Missing
plugin 'MPEG-4 AAC decoder'" to the player.

(From OE-Core rev: fb04247ac27cf18b46efbc47aae6bb3f9fde8168)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:45 +00:00
Andreas Oberritter
14098e37c8 package_deb: DpkgIndexer use apt-ftparchive that needs a valid config
Since we have support of log checking in deb/ipk [1] rootfs generation
in non Debian-based hosts fails because apt-ftparchive generates a
Warning when not find /etc/apt/apt.conf.d/ (available in Debian-based
hosts).

package_manager.py: DpkgPMIndexer add support for generate and export apt
configuration.

[1] http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=86aec93902af2e2d7d73ca9a643707fcca45055c

(From OE-Core rev: 331a7bbb1cd6781c93644a378d340deddcdb8bd2)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:45 +00:00
Randy Witt
d2690754fe image.bbclass: Empty /var/volatile if it is a mount point
If /var/volatile is a mount point it shouldn't contain any files before
mount time. If files are there, they will no longer be able to be accessed
once the tmpfs gets mounted at /var/volatile.

This problem can be seen for instance when systemd creates
/var/volatile/log/journal as part of its package installation. It then
assumes the journal is persistent even though /var/volatile/log/journal
goes away shortly thereafter.

This change makes sure that there are no files in /var/volatile if it is
to be used as a mount point.

[Yocto #7388]

(From OE-Core rev: b574ac6f3c9e07f0054ed4261bc1f83583c29c53)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:45 +00:00
Richard Purdie
96104b825f image: Ensure manifests end with a newline
Manifests should end with a newline character but don't currently. This
is the easiest fix for now, the alternative would be a rewrite of the
internal code which is something to consider in due course.

[YOCTO #7427]

(From OE-Core rev: 98230d2d049c742c349f35b256b13afbc3d26235)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:44 +00:00
Andreas Oberritter
c70dc37b90 libunwind: use xz, because it fails to detect liblzma provided by lzma
(From OE-Core rev: 53bafb0d22a84186d215eb8f106ccff69f1b0480)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:44 +00:00
Andreas Oberritter
f94450a40b ca-certificates: clean up before do_compile()
Otherwise the script which converts mozilla certificates extracts
each certificate twice.

(From OE-Core rev: 3aae6a3c2786713115451f6b6fe151ba69369c1d)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:43 +00:00
Andreas Oberritter
f43d13c1d0 pigz: fix alternatives handling, use symlinks, provide zcat
The installed unpigz is a hardlink to pigz.

(From OE-Core rev: 5017ff434130c62fabb42f8224fb246801f13d0c)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:43 +00:00
Andreas Oberritter
4ca684a0f7 kernel-module-split.bbclass: Avoid bogus recommends for modules ending with -dev
Example: lirc-dev.ko -> kernel-module-lirc-dev

(From OE-Core rev: dc20323cfe6f3f5a880dfeb02e9463ffa3db1ad9)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:42 +00:00
Andreas Oberritter
f878ee5d52 valgrind: enable build for MIPS
Since 3.8.0, valgrind supports MIPS32. MIPS64 was added in 3.9.0.

(From OE-Core rev: 13d2f0c8cd71a636de16ef33c546af7b208115bd)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:42 +00:00
Andreas Oberritter
43d84d82c9 connman: only depend on xuser-account if ROOTLESS_X is set
* Copied from xserver-nodm-init.

(From OE-Core rev: a09cfe460b6366edffacbd868af4d976bfe16520)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:42 +00:00
Andreas Oberritter
9782db00d4 libav: fix floating dependency on libasound
(From OE-Core rev: 8c6cb85745ca580f7b0e7ff98006c76a85534de0)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:41 +00:00
Andreas Oberritter
b31a0e3091 python: fix cached config value for /dev/ptmx
Linux usually has /dev/ptmx, so set set it to yes.

(From OE-Core rev: f19d5e3ffbb10ddc6220249fb9e978d1c3fc5e45)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:41 +00:00
Richard Purdie
7cb5ea06b8 qemu: Add patch to fix qemux86-64 EDSCA key problems
Without this patch, x86_64 images would show invalid EDSCA key errors
with sshd from openssh (but not dropbear) during init.

This would cause problems with operation with some distros where EDSCA
keys were mandatory. The issue was present in qemu 2.2.1 and not in
2.3.0-rc0, bisected to this commit which was then backported. This fixes
intermittent failures on the autobuilder. Issue is not present when
using KVM (consistent with a fault in TCG).

(From OE-Core rev: 27fe06cb7d30c79833769b3ebb080a7a8115439d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:40 +00:00
Randy Witt
443938795e Revert "systemd: Fix the problem of an empty journal on boot"
This reverts commit e75c95ceca. The fix
was reported to cause long waits for some users.

(From OE-Core rev: 6d68e64a1ecf7c2a4903b0dcdbe25aa6412ff231)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:40 +00:00
Andreas Oberritter
68bc42113d kernel-module-split.bbclass: fix autoloading from postinst script
When using KERNEL_MODULE_AUTOLOAD, autoload was empty, causing
"modprobe None" to get appended to the postinst script.

(From OE-Core rev: 2e3768075878b8fc0f7642cae89ab7b9d03fe52c)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:39 +00:00
Alejandro Hernandez
65a8408155 python: Fix PGEN linking errors
Parallel make races when linking PGEN affects target's python
compilation as well, adds patch from python-native to modify the
Makefile and avoid parallel make races, also updates upstream status

(From OE-Core rev: 4f0d1015aa3331ae7b376f836d3188b6017abfb1)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:39 +00:00
Andreas Oberritter
2a473ac17a update-alternatives.bbclass: alternatives should be removed in prerm
This behaviour matches dpkg's manpage and fixes deinstalling
alternatives for programs needed by the postrm script, e.g. /bin/sh.

(From OE-Core rev: 2a5484a90513b58c829a916bfe5268a0fde3512a)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:38 +00:00
Andreas Oberritter
8b8d8431a9 dpkg: Don't move update-alternatives to sbindir
Debian, Ubuntu and opkg all have it in bindir.

(From OE-Core rev: 5f6faeb24ba80cdb6c9f62b185e40adc15f0fd6e)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:38 +00:00
Andreas Oberritter
ce9226f97c rootfs.py: Also uninstall update-alternatives and shadow for read-only-rootfs
This brings back commit d41097a970e9bfa553cd4bc3c9fad4b9073d7bd5,
which got lost during transition from image.bbclass to rootfs.py.

(From OE-Core rev: f4932e2e640764d16f1f6d398390ebfb376f4cf1)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:38 +00:00
Andreas Oberritter
349f3ab519 package.bbclass: Add SYSTEMD_SERVICE to list of package specific variables
Changes to SYSTEMD_SERVICE should change the sstate checksum. To make that
happen, it needs to be listed in the list of package specific variables,
therefore add it.

(From OE-Core rev: 0a51f024e8212f011bb8b03d81f18bcd9aa6aa1f)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:37 +00:00
Cristian Iorga
7ecfaaaf58 webkit-gtk: disable JIT for armv5/armv6
JIT for JS causes webkit to crash for
ARM v5 and ARM v6 arch, so disable it for now.

TODO: re-evaluate after webkit-gtk upgrade.

Fixes [YOCTO #6931].

(From OE-Core rev: c68bac145af0d754ba9497a42925253e9049da45)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:37 +00:00
Tom Zanussi
369932178f yocto-bsp: Update templates to 3.19 kernel
Add 3.19 kernel support and remove 3.10 and 3.17 support.

'Fixes' [YOCTO #7391].

(From meta-yocto rev: fe9b3c567230e815f528431f1098626669a9568f)

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-24 10:06:03 +00:00
Jonathan Liu
4bd886fb00 systemd: fix firmware path to match linux-firmware
(From OE-Core rev: d3fcfe346b3472170641d9194243c4bbe06b8585)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-23 11:27:21 +00:00
Lucian Musat
b528712a07 meta-yocto/distro: Updated SANITY_TESTED_DISTROS.
Added OpenSUSE-13.2, Fedora 21. Removed poky 1.6 and Ubuntu 12.04.

(From meta-yocto rev: 8b7bd4de4f23a4d115a7a168cae25c8f74e3119c)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-23 10:40:54 +00:00
Ed Bartosh
fdf383ffe6 poky.conf: Fix 'distro is not validated' warning for OpenSUSE
Updated openSUSE distro names used in meta-yocto/conf/distro/poky.conf.

Currently used distro names cause bitbake to issue this warning on
all openSUSE systems:
WARNING: Host distribution "openSUSE-NN.N" has not been validated
with this version of the build system.

(From meta-yocto rev: 2d4e276f25bf70637f5a8762f363821643de2de3)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-23 10:40:54 +00:00
Jonathan Liu
814252efd0 systemd: restore userspace firmware loading support
This changes the minimum required Linux version from 3.7 back to 3.0.

[YOCTO #7409]

(From OE-Core rev: 31163abc7bedd477c1aad10e6d1f47dbee194513)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-23 10:33:06 +00:00
Armin Kuster
bbc1396176 tzdata: update to 2015b
Changes affecting future time stamps

Mongolia will start observing DST again this year, from the last
Saturday in March at 02:00 to the last Saturday in September at 00:00.
(Thanks to Ganbold Tsagaankhuu.)

Palestine will start DST on March 28, not March 27.  Also,
correct the fall 2014 transition from September 26 to October 24.
Adjust future predictions accordingly.  (Thanks to Steffen Thorsen.)

Changes affecting past time stamps

The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
regression.  (Thanks to Stuart Bishop for reporting the problem.)

Some more zones have been turned into links, when they differed
from existing zones only for older time stamps.  As usual,
these changes affect UTC offsets in pre-1970 time stamps only.
Their old contents have been moved to the 'backzone' file.
The affected zones are: America/Antigua, America/Cayman,
Pacific/Midway, and Pacific/Saipan.

Changes affecting time zone abbreviations

Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
(Thanks to Hank W.)

(From OE-Core rev: b00539285ffce0b7d954bc0610c986aa53c8255f)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:37 +00:00
Armin Kuster
21f4188415 tzcode: update to 2015b
Changes affecting code

Fix integer overflow bug in reference 'mktime' implementation.
(Problem reported by Jörg Richter.)

Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
to be used in the same executable as standard-library time_t functions.
(Problems reported by Bradley White.)

Changes affecting commentary

Cite the recent Mexican decree changing Quintana Roo's time zone.
(Thanks to Carlos Raúl Perasso.)

Likewise for the recent Chilean decree.  (Thanks to Eduardo Romero Urra.)

Update info about Mars time.

(From OE-Core rev: fbd98e677dcf6324cf713d888aa85c4264f42ec9)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:37 +00:00
Ed Bartosh
3acdd43b2f lib/oe/lsb.py: Prioritize parsing of /etc/os-release
Moved parsing of /etc/os-release before parsing of
/etc/SuSE-release as /etc/SuSE-release is deprecated in
recent releases of OpenSuSE.

Here is the quote from /etc/SuSE-release:
/etc/SuSE-release is deprecated and will be removed in the future,
use /etc/os-release instead

(From OE-Core rev: b3852bebb850048389994993e3717e54020c662f)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:18 +00:00
Chong Lu
cbce06a172 tar: set acpaths to avoid "Argument list too long" error
There would be an error when the TMPDIR is long/deep, for example when
len(TMPDIR) = 410 while our supported longest value is 410:

    aclocal: error: cannot open xxx
    autoreconf: aclocal failed with exit status: 1
    ERROR: autoreconf execution failed.

Let aclocal use the relative path for the m4 file rather than the
absolute would fix the problem.

[YOCTO #6138]

(From OE-Core rev: 747333764231d0320bdefbcf192b2589e70c58a1)

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:17 +00:00
Diego Rondini
98487ccb5f watchdog: Provide and install initscript
Provide and install an initscript for the watchdog package.
In particular:
- watchdog-init.patch adapts redhat initscript to be compatibile with
  OpenEmbedded;
- watchdog-conf.patch selects /dev/watchdog as default device;
- changes to the recipe install and configure the initscript.

(From OE-Core rev: 415be16794dfe9122e6eedff950bede2070008ed)

Signed-off-by: Diego Rondini <diego.ml@zoho.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:17 +00:00
Andre McCurdy
a1cb3b016b mtd-utils: minor recipe formatting cleanup
Remove obsolete comment describing SRCREV and re-order
SECTION, DEPENDS and PV lines. No functional changes.

(From OE-Core rev: 53c028dcbb32792554394fb3da690f02558a9516)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:17 +00:00
Matthieu Crapet
543d1bd488 postinst_intercept script: drop pipe
Avoid useless subshell.
There's no word splitting in variable assignment.

(From OE-Core rev: 7b12f4860138d8f5e53ebdfa2a87b59a9ea5c487)

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:16 +00:00
Chen Qi
86aec93902 rootfs.py: add log checking ability for deb and ipk
Extract the common codes of log checking and add the ability of log
checking for deb and ipk package backend.

(From OE-Core rev: d995871b433643958845e1d476813fa12888100e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:16 +00:00
Chen Qi
f4d90ecf88 rootfs.py: two changes regarding log checking
This patch involves two changes.

1. Extend the regular expression to also catch '^WARNING:' in _log_check_warn.
   Warnings from bb.note or bbnote begin with 'WARNING:'. So if we decide to
   catch warnings at rootfs time, we should not ignore those produced by
   the build system itself.

2. Delay _log_check in rootfs process so that more warnings are likely to be
   catched. Note that we should at least delay the _log_check after the
   execution of ROOTFS_POSTPROCESS_COMMANDS, because we want to catch warnings
   there.

(From OE-Core rev: 4c9213dffb71510ba99a0665f620e9de4a2dfeb5)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:15 +00:00
Robert Yang
5dc1f3d8a0 oelint.bbclass: remove duplicated code
The old code 'if not srcpath.find("{PN}") == -1:' looks strange, use
'if srcpath.find("{PN}") != -1:' and remove duplicated code.

(From OE-Core rev: bb3b8e4e7580c1dfdfe584d3b5f0fe6803826a43)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:15 +00:00
Robert Yang
7366894e41 oelint.bbclass: adjust task order
Addtask lint before do_build rather than do_fetch, otherwise it would
cause all the tasks after do_fetch run again every time since
do_lint[nostamp] = "1".

(From OE-Core rev: 122ef911aac96b311bbe19106fb9ecbe004fd51b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:15 +00:00
Cristian Iorga
b4578680f6 neard: fix the install path in init scripts
The neard make scripts will place the daemon executable
in /usr/lib/neard/nfc/neard. Change the path accordingly
in init scripts.

Fixes [YOCTO #7390].

(From OE-Core rev: bd277f3a46e7fc764cc55c5354d2136fcfddc3c1)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:14 +00:00
Martin Jansa
4f1ce61754 nss: move /usr/bin/smime to nss-smime
* remove perl runtime dependency from main package

(From OE-Core rev: c799c753d56fcb9468d32d7622817ecf7932cdf4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:14 +00:00
Andre McCurdy
dfa8034e7e directfb: define DEPENDS and EXTRA_OECONF via directfb.inc only
Remove duplicate EXTRA_OECONF definition from directfb_1.7.6.bb.

(From OE-Core rev: 33eabf3fde9589239b5f63df9ba34ca609779ae7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:13 +00:00
Alejandro Hernandez
5e9d2d6d60 python-pexpect: Adds this module to buildtools, since it is needed by some of the automated runtime test code.
[YOCTO 7279]

(From OE-Core rev: 5c183f69b65478a98982e544728d00269efe3e22)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:04 +00:00
Alejandro Hernandez
44c8637e2f python-pexpect: Creates a recipe for the pexpect python module
Based on the recipe contained in http://layers.openembedded.org/layerindex/branch/master/layer/meta-python

[YOCTO #7279]

(From OE-Core rev: e353c9a94d82eba6e2d9bce303e9be891cc2aec2)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:03 +00:00
Chen Qi
d70c981b83 license.bbclass: skip license checking if the package contains no file
If the package doesn't contain any file, then the license isn't relevant
as far as the final image is concerned. So we skip the license checking
in license_create_manifest if such case.

(From OE-Core rev: f7b6684d2248f4a56e70b292891f9a454275449d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:03 +00:00
Alejandro Hernandez
19ad6b6c5d python-distribute: Adds netclient, email and shell runtime dependencies necessary to
run python-distribute out of the box

(From OE-Core rev: 3cdbdb63631cf6e2a59142f86407fb430e633897)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:02 +00:00
Robert Yang
72ead27887 sanity.bbclass: vmdk and live can't be built together
Both vmdk and live use syslinux, but they have different/conflicted
configurations, the main conflictions are:

                    vmdk                live
SYSLINUX_ROOT       root=/dev/sda2      root=/dev/ram0
SYSLINUX_LABELS     boot                boot install
INITRD              No                  yes

So it would make the boot menu strange and vmdk can't be boot, we need
add a few extra vars to fix the problem such as SYSLINUX_ROOT_VMDK
SYSLINUX_ROOT_LIVE, but that needs a lot of changes in the code, so just
add a sanity checking for it.

[YOCTO #6889]

(From OE-Core rev: 521737f456b6ea7f7f153132c77cb74c08f088dc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:02 +00:00
Chen Qi
38aff0dc0f os-release: add LIC_FILES_CHKSUM
Add LIC_FILES_CHKSUM to avoid the warning below at rootfs time.

    WARNING: The license listed MIT was not in the licenses collected for os-release

(From OE-Core rev: fa98c9c6038b22df406d4088252e76a0d2975199)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:02 +00:00
Robert Yang
f987e923b1 tzdata: fix HOMEPAGE
(From OE-Core rev: 7efed4d963bd8424af0ddebc3a09226182232759)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:01 +00:00
Robert Yang
75c16c0cdc groff: fix HOMEPAGE
(From OE-Core rev: 55d0a51a683e00eb129521c74c1d8adc27ce2dea)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:01 +00:00
Robert Yang
2ade4b23c8 gawk: fix HOMEPAGE
(From OE-Core rev: f7146ecfcc12d6047dc14333b399ab84edaad134)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:00 +00:00
Ross Burton
c1e4e27443 libav: add PACKAGECONFIG for VA-API
Intel BSPs want to enable VA-API support so add a PACKAGECONFIG statement to
enable it if required.

(From OE-Core rev: 1e737fb0c032cb9f8f9869eeda80850bea05ad50)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:00 +00:00
Alex J Lennon
84e500799b e2fsprogs: Package resize2fs
(From OE-Core rev: 3047160d04dfa1846db52b58d77f6380ea3dfb6e)

Signed-off-by: Alex J Lennon <ajlennon@dynamicdevices.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:49:59 +00:00
Aníbal Limón
94f5ce05e8 xserver-nodm-init: Change to vt1 when stop
When X is stopped it remains in the same vt that was launched,
change to vt1 instead to avoid manual vt switch.

[YOCTO #5336]

(From OE-Core rev: 6cf330bfbbb8ab7f9506bbed59ce6c2d90a0c1a2)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:49:59 +00:00
Aníbal Limón
3e9476e692 sysvinit-inittab: Fix no tty in runlevel 1.
When switch to runlevel 1 (Single user mode), tty was not
re-spawn and appears to be a machine hang.

[YOCTO #5336]

(From OE-Core rev: f7c270d073d6f0d1e741e9850c599074ebe79db7)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:49:58 +00:00
Caner Altinbasak
3aad5e01cc util-linux-native: Fixed conflicts with shadow-native and ncurses-native
util-linux-native provides /bin/reset and /sbin/nologin. shadow-native
    provides /sbin/nologin and ncurses-native provides /bin/reset. This
    creates a conlict.

    [YOCTO #7484]

    This commit fixes the conflict by deleting the /bin/reset and
    /sbin/nologin from util-linux-native installation.

    Signed-off-by: Caner Altinbasak <caner.altinbasak@gmail.com>

(From OE-Core rev: 56d49ee48f47ea05de26a7e922597413f81b2122)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:49:58 +00:00
Lucian Musat
b0b8f47e99 oeqa/runtime: Added a new auto rpm test
The test tries to query the rpm list with a non-root user

(From OE-Core rev: 9d5deedfdae28d0257e84e1980c2cb7fd4e38c45)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:49:57 +00:00
Paul Eggleton
a8c98c399f oe-selftest: use spaces to indent python code, not tabs
Indenting-only change.

(From OE-Core rev: b3005576a9e0bcaa47c41f25451d1fe7ef30c7fe)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 09:42:36 +00:00
Scott Rifenbark
4783ead254 dev-manual: Applied review edits to section on hostname changing
Edits to the "Customizing an Image Hostname" section from Ross.
Updated the last paragraph to not imply incorrect information.

Fixes [YOCTO #7417]

(From yocto-docs rev: 8997be297077ee0052a5afbe50b9864cdef14058)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:48 +00:00
David Reyna
12c7efe40a bitbake: toaster: insure IMAGE_INSTALL_append values have a space prefix
When the IMAGE_INSTALL_append value is not empty, it must have a space prefix
in order for the "append" operator to concatenate the values correctly, so we
enforce it in this variable's submit javascript.

[YOCTO #7394]

(Bitbake rev: fc0cec1f38aa6f2d09434cc008a429d350a5706f)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:28 +00:00
David Reyna
d2b20465c3 bitbake: toaster: display machine and project values in input fields
Explicitly preset the machine and project values in their respective
input fields.

[YOCTO #7170]

(Bitbake rev: 23c83c6a8af12ad1c008372685f7cd9f87023145)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:28 +00:00
Michael Wood
1f1230c792 bitbake: toaster: tasks trigger the select related tables before ordering
In two of the cases the data is changed from a QuerySet to a sorted list
so we aren't able to use the QuerySet api at this point, moving it
before the data type is changed fixes this.

[YOCTO #7404]

(Bitbake rev: 484797744dbe421dfeea52e9428ba63b44f1ed88)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:28 +00:00
Michael Wood
3c5e291760 bitbake: toaster: Add cancel build to latest build section
Add this functionality to the common managed_mrb_section
Make sure we are using the correct version of this template in the
projects template and remove now redundant code.

[YOCTO #7351]

(Bitbake rev: 23f1439a5d3e8f4053826794c6502eca20189054)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:27 +00:00
David Reyna
2f684f1bdc bitbake: toaster: Incorrect breadcrumb behaviour in the project page
The last item in the breadcrumb for the project page should not be a link.

[YOCTO #7157]

(Bitbake rev: 6966d68e650c2d5655a1e747e70d35f5f037dc94)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:27 +00:00
Dave Lerner
8ff98c6c1b bitbake: toaster: leave cancel enabled for release change
When you click the 'change' icon to edit the project release, the
"cancel" button, should always be enabled so that the user can
return to the 'not editable' state at any time.

[YOCTO #7151]

(Bitbake rev: adcd24b97ea78fbccb870d62bd1297edae3a3487)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:26 +00:00
Alexandru DAMIAN
5252c459ac bitbake: toastergui: recipe and layer identification
This patch fixes the recipe and layer identification by path
when Toaster uses relative paths.

(Bitbake rev: a92bb33a3ceacab2bfee9df1c39a202832866970)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:26 +00:00
Alexandru DAMIAN
9752757da0 bitbake: toasterui: fix error message parameter
Fix the error message parameter.

(Bitbake rev: 64b0867108d03c7e9215b80c59c1bba919e82994)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:25 +00:00
Alexandru DAMIAN
0dc4a628ae bitbake: toaster: do not throw exception on misconfigured data
We do not want to throw an exception while handling exceptions
that may print information, so replace the exception throwing
with returning data.

(Bitbake rev: 624e67b0d142e5dac946ebb63bcfad0625b88799)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:25 +00:00
Alexandru DAMIAN
934a9749ee bitbake: toastergui: builds and projects outcome filter
This patch fixes the Outcome filter in the all builds and
all projects pages in Build mode.

[YOCTO #7450]

(Bitbake rev: 61f209db436344efa29fbbd34faaf3ba085c3ce3)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:25 +00:00
Alexandru DAMIAN
5d021f6de6 bitbake: toastergui: fix machines page search
This patch fixes the machine page search.

[YOCTO #7407]

(Bitbake rev: 51c6e3edf074da6ebd8b347f13dc0f88b25c0111)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:24 +00:00
Belen Barros Pena
ede212b2dd bitbake: toaster: display bitbake output after process start
If the bitbake server exists after the initial process start,
the only output displayed shows proper server start, with
no debug info.

This patch also brings the server log into the error message,
so the user has better info about what's going on.

(Bitbake rev: 6b46f436296683f7a2f72ac978ef30d0a38ad7a4)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:24 +00:00
Alexandru DAMIAN
5b22f15557 bitbake: toaster: targets page performance improvement
Yet another performance improvement, this time by forcing
two-step evaluation instead of using subqueries to select data.

This avoid using full-table lookups on un-indexed temporary
tables.

(Bitbake rev: 03e3286dcdc557a314c139b55b458d6fefcbc51c)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:23 +00:00
Alexandru DAMIAN
a273d8f151 bitbake: toasterui: improve info in the toaster_ui.log
We improve logging and signalling of errors in the
toaster_ui.log to facilitate debugging on remote systems.

(Bitbake rev: 3cd248f99b90367bd41aab81e255fc1912434890)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-21 00:00:23 +00:00
Richard Purdie
c5e9654ac9 scripts/combo-layer: Handle update with no repo/revision specified
Running an update operation with no repo/revision specified was failing.
This fixes that code path which worked until the change from:

http://git.yoctoproject.org/cgit.cgi/poky/commit/scripts/combo-layer?id=3592507a149b668c0a925e176535f7f2002fa543

(From OE-Core rev: 411a6a3694a9fcd563c5b5320597314fbec75cc2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:06 +00:00
Benjamin Esquivel
db4f1420ce glibc: avoid configure stall by feeding prompt
Addresses a stall (by prompt) condition of the run.do_configure at when
executed directly from the workdir, like when using the devshell.

[YOCTO 7369]

(From OE-Core rev: deb06c96dccdbc6da0f301653e9781ce2fe8173d)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:06 +00:00
Richard Purdie
92739edc9d gcc-cross-canadian: Enable stripping and packaging of binaries
This seems to have been disabled since the dawn of time for no good reason.
Enable the .debug stripping and packaging allowing for a smaller SDK.

(From OE-Core rev: bbaf97ba38329b5221e6d4d0d18f20e6b7d6fd91)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:06 +00:00
Joe Slater
31801c66df ltp: find all .debug directories
The list of directories for ltp-dbg is incomplete, so
we generalize it.

We also eliminate a non-fatal qa error that the file
test_arch_stripped is stripped.

(From OE-Core rev: b59eff83f971347254081426e8a1f2ef6ee700e5)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:05 +00:00
Robert Yang
1a29b3b9d3 lsb: fix installed-vs-shipped when build with multilib
The init-functions had been installed to /lib/lsb/init-functions
according to lsb spec, then there is an installed-vs-shipped issue when
build with multilib:

ERROR: QA Issue: lsb: Files/directories were installed but not shipped
  /lib
  /lib/lsb
  /lib/lsb/init-functions [installed-vs-shipped]

Fix the issue and indent.

(From OE-Core rev: d1fc46a2b034a9dbe58d01920ad3ef4ad5131029)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:05 +00:00
Andre McCurdy
d6be13a6d1 gst-plugins-good: fix nondeterministic udev dependency
Make the v4l PACKAGECONFIG option control building of the video4linux2
plug-in (not use of libv4l, as it did before) and enable by default.
Add a separate libv4l PACKAGECONFIG to control use of libv4l (disabled
by default since libv4l is not part of oe-core).

The default config for gst-plugins-good and gstreamer1.0-plugins-good
is now aligned with regards to v4l, ie:

  v4l support: enabled by default
  v4l use of libgudev: enabled by default
  v4l use of libv4l2: disabled by default

This commit fixes the following build-deps QA Warnings:

  WARNING: QA Issue: gst-plugins-good-video4linux2 rdepends on libudev, but it isn't a build dependency? [build-deps]
  WARNING: QA Issue: gst-plugins-good-video4linux2 rdepends on libgudev, but it isn't a build dependency? [build-deps]

(From OE-Core rev: e084060b59f2ad2ca5e3896afb2ff2dfb665cc67)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:05 +00:00
Tanu Kaskinen
76930a5ed8 pulseaudio: remove obsolete resampler patching
This sed script hasn't worked since PulseAudio 0.9.8 (released in
2007), because the match condition refers to "sinc-fastest", while the
default resampler is nowadays speex-float-1.

The idea behind the sed script might be good, but it seems obvious
that nobody is actually depending on the script, so let's just delete
it.

(From OE-Core rev: d3a656dd2a276a743925f55935789357c4cb4d97)

Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:04 +00:00
Aníbal Limón
d342810cd5 puzzles: Fix build in x32 ABI
Add patch for make castings to time_t values that are long long int
in x32 ABI.

[YOCTO #7447]

(From OE-Core rev: fc5717a7a5828eaf07d96b7c5c6eae7a79bb5114)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:04 +00:00
Aníbal Limón
4add6e3a3b systemtap: Fix build in x32 ABI
Add a patch for fix printing of time_t value that is long long int
in x32 ABI instead of long int.

[YOCTO #7423]

(From OE-Core rev: 194f0be44fa37605d0b5897138848fa378593d62)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:03 +00:00
Aníbal Limón
3732fdec0a mdadm: Fix build in x32 ABI
Add a patch for fix build in x32 ABI, the fail is cause by time_t
printf because time_t is long int in x64 and long long int in x32.

[YOCTO #7422]

(From OE-Core rev: 753994a2016758ec058822d727b05ef9532b97c8)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:03 +00:00
Jonathan Liu
8e19349b69 systemd: set the location of binaries used by service files
Otherwise systemd uses AC_PROG_PATH and finds it in the sysroot or host
system, which won't work on the target.

[YOCTO #7408]

(From OE-Core rev: 294adc0907a359d9c0ad260823188145aab294ad)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:03 +00:00
Jonathan Liu
0f25dd5b6c base.bbclass: clean up warning message for 'S'
(From OE-Core rev: ddac4f3c1350c3a4e0ea4ae732de0689325d883f)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:02 +00:00
Martin Jansa
f14ef4d9e8 valgrind: enable building on 4.x kernel
(From OE-Core rev: e75d1d76949f944367d06bea82f519fdecda3ca3)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:02 +00:00
Javier Viguera
740770c009 udev: remove 'modprobe' local rule
Since udev version 176 (udev commit 06316d9) udev switched modprobe
explicit rules by the builtin kmod support.

The rule using the builtin kmod support is in
'/lib/udev/rules.d/80-drivers.rules':

DRIVER!="?*", ENV{MODALIAS}=="?*", IMPORT{builtin}="kmod load $env{MODALIAS}"

(From OE-Core rev: a6f256b0d6cf4e76228627eaa00c1dbe02e2e622)

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:02 +00:00
Bruce Ashfield
31f15d6e8a perf: add bash to RDEPENDS
perf has a dependency on bash in its utilities, which generate the
following warning:

  WARNING: QA Issue: perf requires /bin/bash, but no providers in its RDEPENDS [file-rdeps]

Since perf is not installed on extremely small systems, we just add
bash to the RDEPENDS, rather than modifying scripts or removing content.

[YOCTO: #7445]

(From OE-Core rev: 6f39aae20d88a2d764c3a85617cd36b81af804f1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:01 +00:00
Bruce Ashfield
76730a8171 linux-yocto/3.19: integrate korg -stable update
Updating to the latest and greatest -stable release for the 3.19 series.

(From OE-Core rev: 1e60b5216a89a34eba7749244eeb53d5d12864eb)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:01 +00:00
Bruce Ashfield
ad6313d01b kernel-yocto: split meta data generation from patching phase
The linux-yocto kernel has a meta-data component which accompanies the
actual tree. That meta-data is processed to generate a series file that
controls the patching and configuration of the kernel.

patching and configuration are two distinct phases, so when working on
kernel configuration, it doesn't make sense to always have to re-run
the patching step just to update configuration data in the meta-series.

To allow a more granular set of tasks, we break the meta-data generation
into a separate task, which runs before do_patch. This allows the task
to be explicitly called when working on configuration, but otherwise
has no impact on the build.

(From OE-Core rev: 1be4c68fb876b63f19d107275b701fe1c1c121db)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:00 +00:00
Bruce Ashfield
c328e2fdd0 kern-tools: fix iterative configuration runs
When fixing a kernel configuration warning, it is often necessary to
modify the kernel's meta-data and re-run the tools to update and
re-audit the config. This implies that the patch, config and audit
steps are run multiple times.

The tools had a bug that would incorrectly restore old meta-data
versus using updated configuration. Updating the kern-tools SRCREV
to fix the issue.

(From OE-Core rev: b903559daa847d2c56bf729fc5ca885113d0eecc)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:00 +00:00
Peter Urbanec
c5cfcb78f7 gstreamer1.0: Shorten __FILE__ in gst_debug_log output on all platforms.
On WIN32 the file argument to gst_debug_log_valist is shortened to just
the filename. This is useful not only for MSVC, but also with gcc/Linux
when doing cross-compilation builds and out-of-tree builds.

(From OE-Core rev: d419be56df59c91294923ba4e136d8753009c280)

Signed-off-by: Peter Urbanec <openembedded-devel@urbanec.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:00 +00:00
Chen Qi
8457e134a2 dbus-test: make do_install run to trigger the effect of cleandirs flag
For now, we would meet the following QA error if we build dbus-test in
the same build directory with multilib enabled/disabled.

The steps are as follows:
1. Enable multilib and `bitbake dbus-ptest'
2. Disable multilib and `bitbake dbus-ptest'

The error message is as follows:
ERROR: QA Issue: dbus-test: Files/directories were installed but not shipped
  /usr/lib64
  /usr/lib64/dbus-test
  /usr/lib64/dbus-test/ptest
  /usr/lib64/dbus-test/ptest/run-ptest
  ...

The problem is that the ${D} is not cleaned up at the second build while it
should be.

This patch fixes the above problem.

(From OE-Core rev: e76f8c0d79301b3c67029f18e5dd4325a39d4587)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:55:59 +00:00
Khem Raj
6ecc468331 tcmode-default: Define one gdb version
Sometimes we need to override the gdb from third party
tool SDKs, this helps out, moreover it also makes it consistent
with in OE-Core too to have multiple versions of gdb if we ever
needed to

Change-Id: Ibe1ae59175984bbc661c243764c81cd99fef54d1
(From OE-Core rev: aa75579aae064f2f9fc70bea093a6e9c8ca9c528)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:55:59 +00:00
Tanu Kaskinen
80c8372bcc pulseaudio: add system.pa to CONFFILES
(From OE-Core rev: ca457db45b04070b1b1209e8cbd73f6fffa3f774)

Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:55:59 +00:00
Tanu Kaskinen
cc7652fb24 pulseaudio: move client.conf to libpulse
This fixes a scenario where the system has libpulse installed but not
pulseaudio-server. The "breakage" didn't have any big practical
effects, though, because the default client.conf contains only
comments anyway.

(From OE-Core rev: 58bcd2cfb71bd734c463d82e94bba77226691b43)

Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:55:58 +00:00
Saul Wold
2ab66b85ec package_manager: Create variable for install_dir_name
This patch creates a variable for the install_dir name so it can be
something other than /install, also by doing this we can correctly
clean up the empty directories (/install/tmp) during the clean-up
phase. The new default is /oe_install so as to not conflict with other
possible packages that might use /install to place files.

[YOCTO #7353]

(From OE-Core rev: 335effec42099666d0fb433b31981edcb0dae9a0)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:55:58 +00:00
Randy Witt
05471f8710 lib/oeqa/selftest/lic-checksum: Add INHIBIT_DEFAULT_DEPS
The test_nonmatching_checksum doesn't need the default dependencies,
and they would just take extra time to generate.

(From OE-Core rev: d91ed126eead8b09a4ddfe5cc11db16dda71273f)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:52 +00:00
Randy Witt
8b8baf5de3 lib/oeqa/selftest/lic-checksum: Rename test_foo
test_foo is renamed to test_nonmatching_checksum. It was a mistake to
submit it with the old name.

There was also some extra whitespace removed.

(From OE-Core rev: 95eed3038f48337d06a3eba0f6e355f3f78c6974)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:51 +00:00
Maxin B. John
a7701ba854 trace-cmd: remove unnecessary 'protocol=git' from SRC_URI
(From OE-Core rev: b9a97b56400d156bc670d933323d0e28ffb17960)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:51 +00:00
Maxin B. John
1219b63500 mmc-utils: remove unnecessary 'protocol=git' from SRC_URI
(From OE-Core rev: c2afbb763b5c57dcad22e8637a953d21948ebd29)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:51 +00:00
Maxin B. John
6bd34e6a98 systemd: remove unnecessary 'protocol=git' from SRC_URI
(From OE-Core rev: cd163193de5b8c41583076a28ca45ae4f9bced2c)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:50 +00:00
Maxin B. John
52e9d2c881 u-boot-mkimage: remove unnecessary 'protocol=git' from SRC_URI
(From OE-Core rev: c1e5fff3017860feb5fb77ba05afd13e1ec34c50)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:50 +00:00
Maxin B. John
b647a06a73 u-boot-fw-utils: remove unnecessary 'protocol=git' from SRC_URI
(From OE-Core rev: 1a2b67c44b78582668d69e23f7f43835b34fe803)

Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:49 +00:00
Paul Eggleton
6f6e866ba2 oe-selftest: add missing dependency to test_recipetool_create_git
libmatchbox links to libjpeg if it is present so just explicitly build
it and then check it appears in DEPENDS.

(From OE-Core rev: 00ca890d8a56c4c05ce5bda87b3d9d1452ddfa36)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:49 +00:00
Paul Eggleton
0a45ccb253 recipetool: fix duplicate licenses being picked up
If a license file matched more than one of the specifications (e.g.
COPYING.GPL) then it was being added to LIC_FILES_CHKSUM more than once.

(From OE-Core rev: 58316a2890782d206e9b9472ba483367f7560109)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:49 +00:00
Paul Eggleton
4a8fec9bdd oe-selftest: add a test for devtool modify on recipes fetching local files
With the change to externalsrc we can now handle these, so add a test
to ensure they can be built.

(From OE-Core rev: efd46543524db98e4369c1d85a1e1c0e76f12899)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:48 +00:00
Paul Eggleton
a976d63ae5 oe-selftest: add a test for devtool deploy-target
Whilst this test would seemingly be better placed as a runtime test,
unfortunately the runtime tests run under bitbake and you can't run
devtool within bitbake (since devtool needs to run bitbake itself).
Additionally we are testing build-time functionality as well, so
really this has to be done as an oe-selftest test.

This test does have a few perhaps unusual requirements in order to run:
 * pexpect is installed
 * MACHINE is set to one of the qemu machines
 * runqemu tap devices have been set up

(From OE-Core rev: 9dc16a8a87bef5dc408aefb256c01e2a4fe3563c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:48 +00:00
Paul Eggleton
a0b774e43f oe-selftest: support getting unexported variable values
Allow get_bb_var() to work with unexported variable values such as
MACHINE - the workaround is a little crude but should suffice for now.

(From OE-Core rev: 48b58466bba084fd3439706d47e0cfbb7e951ee4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:47 +00:00
Paul Eggleton
3c4c63d0ff gitignore: exclude meta-selftest, drop meta-hob
* We don't want to ignore changes in the meta-selftest directory
* While I'm at it, meta-hob has been gone for a while now, so drop the
  reference to it here.

(From OE-Core rev: 6bcc652f5168d87e76b059f9e9825b8bcf049b90)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:47 +00:00
Paul Eggleton
8123b4aa62 devtool: deploy-target: add dry-run option
Add a dry-run option to the deploy-target and undeploy-target
subcommands so you can see the list of files to be deployed or
un-deployed before actually carrying out the operation.

(From OE-Core rev: b9625581f3fe72fc402632be2d87cf889301c6a2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:47 +00:00
Paul Eggleton
a5047717bd classes/externalsrc: fix for recipes that fetch local files
If SRC_URI contains local files (file:// references) these will almost
certainly be required at some point during the build process, so we need
to actually fetch these to ${WORKDIR} as we would normally.

(From OE-Core rev: f223ad3d5b5c90055e50d1b1be69230f55e06336)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:46 +00:00
Paul Eggleton
3d7777f061 devtool: deploy-target: add an option to disable quiet mode
The -q option to scp does stop the progress being shown, which is mostly
superfluous, however it also stops errors from ssh being shown - if
there's a problem, you'll just get "lost connection" which really isn't
that helpful. As a compromise, add a -s/--show-status option and
advertise this when the command fails.

(From OE-Core rev: 5cbb026212b4c8f5206a07d70b94f57edeee0839)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:46 +00:00
Paul Eggleton
3f370f8f6f devtool: deploy-target: detect and error if D is empty
If you haven't built the recipe yet or if the output directory (${D}) is
empty, then we should tell the user rather than have scp error out.

(From OE-Core rev: 3fd9ac277393bef5c646f16b9d8f30c277881d70)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:45 +00:00
Paul Eggleton
ad57dab31f devtool: deploy-target: allow disabling host key checking
If you're testing with multiple images/devices that have the same IP
address / hostname then it can be annoying to deal with host key
mismatches all of the time. As a MITM attack is unlikely in the local
test environment, provide a command line option to pass the appropriate
options to scp/ssh to disable the host key checking.

Note: if you wish to apply this permanently, the best way is to do it
through your ssh configuration e.g. by adding the following to your
~/.ssh/config:

Host 192.168.7.2
   UserKnownHostsFile=/dev/null
   StrictHostKeyChecking no

(From OE-Core rev: 81dd1319112a99bc38b7a7ced0663918ac5b09a4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:45 +00:00
Paul Eggleton
cb4b07838c devtool: modify/extract: prevent usage with incompatible recipes
Consolidate code for checking compatible recipes and consider meta and
packagegroup recipes as well as package-index and gcc-source to be
incompatible.

(From OE-Core rev: 4be9bf637583b341a89af1b9924752abc7d49c94)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:45 +00:00
Paul Eggleton
221705f014 devtool: modify: get correct initial revision from previously extracted source tree
If you point devtool modify to a source tree previously created by
devtool modify or devtool extract, then we need to try to pick up the
correct initial revision so that devtool update-recipe knows where to
start looking for commits that match up with patches in the recipe.

(From OE-Core rev: c20e10543e268ebb43074a3f8d6e7ed991e54ec8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:44 +00:00
Paul Eggleton
9adae67e71 devtool: reset: add ability to reset entire workspace
Add a -a/--all option to allow you to quickly reset all recipes in your
workspace.

(From OE-Core rev: 0c83788b111a761f6f500b86780cc51aed255402)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:44 +00:00
Paul Eggleton
e3cfb80f1e devtool: name command line parsers appropriately
No functional changes, just use a unique name for each parser.

(From OE-Core rev: 5fabc59d6221c3fe7137b70e31ec2761a4276a6c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:43 +00:00
Paul Eggleton
4424440f42 devtool: deploy-target: fix deploying to previously deployed machine
* Pass correct arguments to undeploy() function
* If an error occurs during undeploy(), exit instead of continuing

(From OE-Core rev: c938dee4b28af7e6296c86347dfa533f85605033)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:43 +00:00
Patrick Ohly
be6289f4af combo-layer-hook-default.sh: handle patches without Signed-off-by
Inserting the "From rev" comment depended on having at least one
Signed-off-by line in the patch header. Some old repository commits in
openembedded-core and bitbake do not have those.

When inporting those, just insert at the end of the patch
header. While doing so, ensure that there's exactly one blank line
since the last non-blank line.

(From OE-Core rev: 58548081b15f37452b71c135d5aa8cbbda5b1b61)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:25 +00:00
Patrick Ohly
b4e78cf6df combo-layer-hook-default.sh: beware of embedded patches
Patching the subject line must be limited to the subject of
the main patch itself. In particular, git formatted patches embedded in the patch must not be changed.

Achieved by limiting the replacement to the lines until the first
subject in the patch, just as it is done for modifying the first
Signed-off-by.

(From OE-Core rev: 2737bd1c3f7c51dd6509a0f91337f695f9c69165)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:25 +00:00
Patrick Ohly
ad0147af34 combo-layer-hook-default.sh: avoid duplicating prefix
The existing patch might already have the desired prefix, perhaps
even multiple times (due to some previous import error). Ensure
that after the replace, the prefix is present exactly once.

(From OE-Core rev: 03be3d350425783a5938a7e4c0b858cda634b71d)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:24 +00:00
Patrick Ohly
e0d3cabc5a combo-layer: partial import for '--history init'
The new "since_revision" property can be used to cut off the imported
history at some point. This is useful to keep the resulting repository
smaller while still preserving enough history that "git annotate"
reports the right author and commit for most lines.

The initial, squashed import commit shows up with "unknown" as author
in the "git annotate" output. It has the repository name as prefix
in the subject line; importing that commit works best with a
layer hook which does not add the repository name again when
it is already present. Adding it here is useful for hooks
which do not extend the subject line.

(From OE-Core rev: 74f4c9e3bcdb3c4ca919623086e92a9379bd81ff)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:24 +00:00
Patrick Ohly
14eac2a474 combo-layer: combine trees via replacement objects
Instead of local graft entries rooting the imported branches in the
shared root commit, use replacement objects.

The advantage is that they get moved around by "git push" and "git
fetch", so everyone has the same, nicer view with everything starting
at the beginning of the combined repository.

If undesired, these objects can be removed with "git replace".

(From OE-Core rev: 220d816cda3c9b8d888288cc03eb74be5e71cc59)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:24 +00:00
Patrick Ohly
dd985a241c combo-layer: init with full history
The new --history parameter enables a new mode in "combo-layer init"
where it copies the entire history of the components into the new
combined repository. This also imports merge commits.

Moving into a destination directory and applying commit hooks
is done via "git filter-branch" of the upstream branch. File
filtering uses the same code as before and just applies it
to that filtered branch to create the final commit which
then gets merged into the master branch of the new repository.

When multiple components are involved, they all get merged
into a single commit with an octopus merge. This depends
on a common ancestor, which is grafted onto the filtered
branches via .git/info/grafts.

These grafts are currently left in place. However, they do not get
pushed, so the local view on the entire history (all branches rooted
in the initial, empty commit, temporarily diverging and then
converging) is not the same as what others will see (branches starting
independently and converging). Perhaps "git replace" should be used
instead.

The final commit needs to be done manually, as before. A commit
message with some tracking information is ready for use as-is. This
information should be sufficient to implement also "combo-layer
update" using this approach, if desired. The advantage would be that
merge commits with conflict resolution would not longer break
the update.

(From OE-Core rev: 9e40cb1ab77029df7f2cf1e548a645ff6a62c919)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:23 +00:00
Patrick Ohly
b4326bf85a combo-layer: update() also instance property
The Configuration class mirrors all properties in local hashes.
When updating the configuration, also update these properties
to remain consistent.

(From OE-Core rev: c575ff183ae5c35e0f7e8d90c222994574ce73c9)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:23 +00:00
Patrick Ohly
96b98451c4 combo-layer: exclude files
Some combined repos intentionally do not include certain files.
For example, Poky does not include bitbake's setup files and
OE-core's sample files under meta/conf.

When these files get modified in the upstream repository, applying the
patches fails and requires manual intervention. That is merely a
nuisance for someone familiar with the problem, but a real show
stopper when having the import run automatically or by someone less
experienced.

Therefore this change introduces "file_exclude", a new per-repo list
of file patterns which removes all matching files when initializing or
updating a combined repository. Because fnmatch is used under the hood
to match full path strings, removing entire directories must be done
with a pattern ending in a '/*' (in contrast to file_filter).

For Poky, the additional configuration looks like this:

[bitbake]
...
file_exclude = classes/base.bbclass
	conf/bitbake.conf
	.gitignore
	MANIFEST.in
	setup.py
	TODO

[openembedded-core]
...
file_exclude = meta/conf/bblayers.conf.sample
	meta/conf/local.conf.sample
	meta/conf/local.conf.sample.extended
	meta/conf/site.conf.sample

(From OE-Core rev: a51b37f4db6b144386d1bd5789ec91acc78a0bd8)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:23 +00:00
Patrick Ohly
627e524238 combo-layer: runcmd() with separate output
Allow the caller to specify a separate output stream. stderr is always
a temporary file opened by runcmd(), so read from that to capture
output for error reporting *and* the return value.

The reasoning for the latter is a) that this preserves the traditional
behavior when out=None and b) if the caller wants the content of
stdout, it can read from the stream itself, which is not possible for
the temporary stderr.

(From OE-Core rev: a084162a9dc4718ab453723f1f28aefc55100e2e)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:22 +00:00
Patrick Ohly
58c5bb28b5 combo-layer: make Signed-off-by optional
It depends on the diligence of the person running the combo-layer tool
whether the Signed-off-by line added to each commit actually indicates
that the person was involved in validating the change.

When the import is purely automatic, it is better to not add the line,
because the history is more useful without it (searching for the person
really only lists changes he or she was involved with) and it would
be a false statement.

The 'signoff' property can be set per repository, like every
other property. But setting it in the special [DEFAULT] section
is more useful, so that is what the example shows.

(From OE-Core rev: dba34e5a6f0a4c726266654dc5f26e0f7f13db0f)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:22 +00:00
Patrick Ohly
b1408ba706 combo-layer: let user choose where properties get updated
When updating a property (at the moment, only 'last_revision'),
first check whether the user already added it to the main config.
If so, update there even if there is a local config.

This way, 'last_revision' can be shared between developers
as part of the repository while still configuring per-developer
repo paths outside of the git repository in a local config.

An example of a repository which is set up like that is tizen-distro,
with instructions for such a collaborative maintenance found here:
https://review.tizen.org/git/?p=scm/bb/tizen-distro.git;a=blob;f=README;hb=refs/heads/tizen-ivi

(From OE-Core rev: a3b246ee928d2ec59c8b6a775d9309f5be33ecc7)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:21:21 +00:00
Richard Purdie
fd2823d13b runqemu-internal: Add cpio support for qemux86 so that we can boot poky-tiny images
poky-tiny generates cpio.gz images, add support for these so we can boot
them using runqemu.

(From OE-Core rev: fdd2e0c1baa80106d26236cb734e0d9a98e3fdac)

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>
2015-03-20 11:03:50 +00:00
Richard Purdie
b8107c5991 scripts/runqemu: Allow FSTYPE to be changed from the environment
Currently its not possible to change FSTYPE from the environment but it would
be useful to do so where multiple image types have been generated. This
adds that possibility.

(From OE-Core rev: c210430c24af6717aa955efe1afe9fc4d2d3f2a9)

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>
2015-03-20 11:03:49 +00:00
Jussi Kukkonen
577f9f3d41 gst-player: Fix Pause/Play in GTK+ player
Backport a bug fix from upstream gst-player to make
Pause and Play buttons work properly in gtk-play.

[ YOCTO #7429 ]

(From OE-Core rev: 026f512529e79ece2833340dd4cb6c29d42ca041)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:49 +00:00
Paul Eggleton
f4857dc640 xf86-input-synaptics: drop already applied patch
This patch was part of the 1.8.1 release.

(From OE-Core rev: aa5377fc4cf93678b2fdae86855ea1d6f39fa148)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:48 +00:00
Paul Eggleton
8b125fe5a8 opkg: drop already applied patch
This patch was part of the 0.2.4 release.

(From OE-Core rev: 85ab25f57c478fcf430f611fbf365348d2edf26b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:48 +00:00
Bernhard Reutner-Fischer
2c11ccf93a packagegroup zeroconf: nss-mdns is libc dependant
glibc provides NSS, other libc do not, so only add libnss-mdns to the
zeroconf package group for glibc.
This fixes the build of core-image-sato for e.g. uClibc

(From OE-Core rev: 9a687f73a4422c788dad68d74d992dc68cb80b35)

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:48 +00:00
Aníbal Limón
cffacfbc82 glibc/glibc-collateral.inc: Add LIC_FILES_CHKSUM to avoid warnings in manifest creation
Add licenses point to COMMON_LICENSE_DIR because glibc-collateral.inc is
a recipe that don't provide tarball/repo with LICENSE files.

(From OE-Core rev: 19fa084c92016ef87f6ad60c6985ec0d2bfd5c42)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:47 +00:00
Saul Wold
b85ee03223 unzip: Add ALTERNATIVE configuration
Since busybox also provides the unzip command use the update-alternatives
mechanism to address this.

[YOCTO #7446]

(From OE-Core rev: 3e6654f7b7f8e0e18c8115513410ecb308a0ad5f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:47 +00:00
Fabrice Coulon
1e34e71e0f meta/lib/oe/package.py: fix files ownership in packages
This fix solves the problem with the ownership of files in packages.
The do_install task was producing correct and expected output but when
the files were being put in, e.g. a rpm package, the ownership could
be different than that in the do_install task.

[YOCTO #7428]

(From OE-Core rev: 1a50cc5aeafff0d8ee6c4a41dd2770ecd31455f0)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Fabrice Coulon <fabrice.coulon@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:46 +00:00
Lucian Musat
b7a9a06b2d oeqa/runtime: Fixed a problem in logparser where it failed to whitelist some common errors.
And some minor tweaks like moving some errors from qemu to common.

(From OE-Core rev: c25474be02a562585ded66a6d538aee21056f628)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:46 +00:00
Adrian
6ad040a522 Add archiver folder to SSTATE_DUPWHITELIST
Without this patch the source archiver class is not allowed to
archive the same source archive for different builds.

(From OE-Core rev: 37284185912d496a974d507bde7208d93eefc29d)

Signed-off-by: Adrian <adrian.freihofer@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:45 +00:00
Ed Bartosh
35fbb0f470 wic: Consider PSEUDO_* environment variables
Used default values of PSEUDO_* environment variables only
if variables are not set.

This allows to set custom PSEUDO_PREFIX and other pseudo
variables in order to use pseudo database from non-standard
locations.

Change-Id: I0bc1af5e521121d1f96d590cb6edb23cf0cb0b83
(From OE-Core rev: cd121c06e9de8951d507998be443f95f0edc246a)

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:45 +00:00
Martin Jansa
40d3d7a23a rpcbind: don't try to enable rpcbind.socket twice
* rpcbind.service requires rpcbind.socket and systemctl tries to add it twice
* see log.do_rootfs:
  Started /OE/build/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/bin/systemctl --root=/OE/build/shr-core/tmp-glibc/work/nokia900-oe-linux-gnueabi/shr-image/2.0-r20/rootfs enable rpcbind.service rpcbind.socket
  Try to find location of rpcbind.service...
  Found rpcbind.service in /lib/systemd/system/rpcbind.service
  Also=rpcbind.socket found in rpcbind.service
  Started /OE/build/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/bin/systemctl --root=/OE/build/shr-core/tmp-glibc/work/nokia900-oe-linux-gnueabi/shr-image/2.0-r20/rootfs enable rpcbind.socket
  Try to find location of rpcbind.socket...
  Found rpcbind.socket in /lib/systemd/system/rpcbind.socket
  WantedBy=sockets.target found in rpcbind.socket
  Enabled rpcbind.socket for sockets.target.
  Try to find location of rpcbind.socket...
  Found rpcbind.socket in /lib/systemd/system/rpcbind.socket
  WantedBy=sockets.target found in rpcbind.socket
  ln: failed to create symbolic link '/OE/build/shr-core/tmp-glibc/work/nokia900-oe-linux-gnueabi/shr-image/2.0-r20/rootfs/etc/systemd/system/sockets.target.wants/rpcbind.socket': File exists
  Enabled rpcbind.socket for sockets.target.

(From OE-Core rev: 8fe9a735584c7ad458eb000c2008d85ad36ada57)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:44 +00:00
Martin Jansa
d0d404f7cd systemctl: Don't try to remove directory which doesn't exist
Noticed in this log.do_rootfs error:
  Started /OE/build/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/bin/systemctl --root=/OE/build/shr-core/tmp-glibc/work/nokia900-oe-linux-gnueabi/shr-image/2.0-r20/rootfs disable bluetooth.service
  Try to find location of bluetooth.service...
  Found bluetooth.service in /lib/systemd/system/bluetooth.service
  WantedBy=bluetooth.target found in bluetooth.service
  rmdir: failed to remove '/OE/build/shr-core/tmp-glibc/work/nokia900-oe-linux-gnueabi/shr-image/2.0-r20/rootfs/etc/systemd/system/bluetooth.target.wants': No such file or directory
  Disabled bluetooth.service for bluetooth.target.
  Disabled bluetooth.service for dbus-org.bluez.service.

(From OE-Core rev: 0332e19098d7d3d623a04098b43e3b2482af1a17)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:44 +00:00
Jussi Kukkonen
7197dab59c gst-player: Depend on -libav if commercial license is enabled
gstreamer1.0-libav makes AAC playback possible but is protected by
the "commercial" LICENSE_FLAGS: recommend -libav if those licenses
are enabled.

(From OE-Core rev: 15df9519e3c22dac77d4d06bb4832e12ffadf5df)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:43 +00:00
Paul Eggleton
c65e36478f waffle: drop unneeded setting of EXTRA_OECMAKE
base.bbclass already sets EXTRA_OECMAKE when cmake.bbclass is inherited.

(From OE-Core rev: c9959f2a69e7edfe8b9e4a7bc99f0d77f03aff73)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:43 +00:00
Paul Eggleton
7f536ba0c1 oe-selftest: improve bitbake-layers tests
* Add a test for add-layer and remove-layer
* Correct message for test_bitbakelayers_showoverlayed()
* Improve test_bitbakelayers_flatten() to use a more unique name for the
  temp output directory and clean it up using track_for_cleanup()

(From OE-Core rev: c4ae1e2c98bee62fcc8db4849b6a4f9a5996a210)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:43 +00:00
Esquivel, Benjamin
61e14ad4eb oe-init-build-env-memres: Fix source check
The source check was referring to oe-init-build-env instead of the
memres. It could be executed without the proper failure message and the
corresponding exit command out of the script. This commit makes the
memres script look more like the oe-init-build-env with the correct
script name.

[YOCTO #7487]

(From OE-Core rev: 1666b41e73f2aa7bd736c3e9bf3797946bff61b5)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 10:56:03 +00:00
Robert Yang
0308f3101b bitbake: knotty.py: fix indent
It used 5 spaces as the indent.

(Bitbake rev: 162d35ed53d34b28b153adf643044e7f105fcff1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 14:20:14 +00:00
Richard Purdie
12b6cf0f22 poky-tiny: ext2 isn't enabled in the kernel so don't mention/build it
The kernel config specifically excludes ext2 support for size reasons
so update the distro config to match.

(From meta-yocto rev: 12440cd591de0f73426c310cc7affab9e2ef5fe0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:40:23 +00:00
Scott Rifenbark
083d4a36a2 dev-manual: Added new section on changing default image hostname
Fixes [YOCTO #7417]

New section to address how the user can change the devalt image
hostname written out to /etc/hostname.

(From yocto-docs rev: 4ac6bc05947e56106aafcc6f9aef93bd93293fba)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:38:18 +00:00
Scott Rifenbark
1345195137 documentation: Updated Manual revision tables with "April 2015"
(From yocto-docs rev: a012e34956b8ac2fa7610e264f460bc27bdd66d8)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:38:18 +00:00
Scott Rifenbark
186104eeda dev-manual: Backed out the half-done Eclipse Luna changes.
Schedule did not permit support for Luna to complete.  So, I
backed out the half-complete changes to support this version of
Eclipse.

(From yocto-docs rev: 1ca893766047f30ffbb0c99e51e575ea1302e7bc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:38:17 +00:00
Scott Rifenbark
f7dbbd1879 dev-manual: Removed inc PR step from Quilt workflow
Fixes [YOCTO #7460]

There was a single occurrence of specifically calling out that PR
needed to be manually incremented in the workflow section of the
manual.  It was step 8 of the Quilt flow.  I deleted this step.
Previous edits to the set have included extensive instruction on using
a PR Service, which is basically what replaces the need for manually
updating PR as it was in the past.

(From yocto-docs rev: d8db2175225be45cb3f2b4d11f8281c5b1f40ad4)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:38:17 +00:00
Ed Bartosh
40f3ca0ae3 poky-ent: update OpenSUSE essentials
Replaced texinfo -> makeinfo in the list of essential packages for
OpenSUSE.

texinfo was in the essentials to only provide makeinfo utility.
/usr/bin/makeinfo is provided by makeinfo package on OpenSUSE distro, so
it's enough to install makeinfo to be able to build poky.

This change reduces number of packages installed on the host system as
installing texinfo causes installation of around 1500 texlive-*
packages and requires around 1Gb of additional disk space on OpenSUSE.

(From yocto-docs rev: dce793a2ac0a781ae074f3eb7ad34fbdb65dc3ea)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-19 12:38:17 +00:00
Michael Wood
df0672b038 bitbake: toaster: Fix the orderkey to match the column
If the orderkey doesn't map to the current sort value then when hiding
the column the sort doesn't get removed.

[YOCTO #7262]

(Bitbake rev: 4b07195405b124ff39703e1ddc226dee420fed22)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:13 +00:00
Michael Wood
5c4b7e0052 bitbake: toaster: projectconf fix typo of package name
The package should be deb rather than dev.

(Bitbake rev: 0d305d0ae06f5e4a3e271147e7f87c33a20fdcb2)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:12 +00:00
Alexandru DAMIAN
c2a1e044c8 bitbake: toastergui: replace ETA with percentage
We replace the ETA (which was an inaccurate estimation)
with the percentage of completed tasks.

(Bitbake rev: 220f5b853fd3236b49faa5ec54c9c96050a84fa9)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:12 +00:00
Alexandru DAMIAN
fb84086f7d bitbake: toastergui: fix mrb Run again buttons
The button for error-ed builds had invalid javascript markup,
this patch fixes the buttons.

(Bitbake rev: 2824888196acc5cbe326b18148581472772ab21d)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:11 +00:00
Alexandru DAMIAN
25d2131684 bitbake: toaster: localhost build increase timeout
We increase the timeout for waiting bitbake to start
for localhost builds.

(Bitbake rev: 80476705f960a14bb8dc68c1d89460aeb6ca90c5)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:11 +00:00
Alexandru DAMIAN
887c1cb446 bitbake: toasterui: relative recipe paths
We modify the toasterui to log relative recipe paths
in order to maintain consistency with data fetched from
the layer sources.

(Bitbake rev: 253d69e88fd68729196ad43c15e8733527d76198)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:10 +00:00
Alexandru DAMIAN
e4ff3eadfa bitbake: toastergui: improve toaster suggestion
Improving the suggestions by ordering entries
based on position of the search string.

Speed improvements in suggestion calls.

[YOCTO #7152]

(Bitbake rev: 61b0f0e46a589af9d669e52d4cec656bbd0d0057)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:10 +00:00
Alexandru DAMIAN
c4722084b6 bitbake: toastergui: dirinfo needs path separation
In the dirinfo URLs we use the "/" separator for directory
separation which coincides with the "/" separator in HTTP URIs.

This is not a problem, but we must not have consecutive "/"
characters as the web servers will conflate those - we add
a "_" delimitator to separate the Django managed URL from the
dirpath parameter, while maintaining the unique ID of REST urls.

(Bitbake rev: 965e2a2cc32d196c9d595ea89c45a84bd46ba2fe)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:09 +00:00
Alexandru DAMIAN
193989cec8 bitbake: toastergui: tables display optimizations
This patch brings in a new set of optimizations in the tables pages,
with the focus of reducing the number of SQL queries performed per
row.

(Bitbake rev: a1ad86febb9d8a4ee7f15aa726f267d64b8e0dc4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:09 +00:00
Alexandru DAMIAN
2b629e6182 bitbake: toastergui: project app build command fix
This patch fixes the build command in the angular
project for builds triggered from All targets page.

(Bitbake rev: bfd56aa653a1ec7f8777bcb5e627910c3a7ee35b)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:09 +00:00
Alexandru DAMIAN
feb95bb049 bitbake: toastergui: update search fields
We update the search fields for the machine suggestions
and recipes tables.

(Bitbake rev: b85bcc854264336c1aef1e5fd4ea9e56f5af94fd)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:08 +00:00
Alexandru DAMIAN
cca517056b bitbake: toasterui: identify proper layer in build mode
In build mode, instead of creating our own layer objects,
we identify the layer objects that the build system set up.

[YOCTO #7378]

(Bitbake rev: 22962b540ace6868cb357c0fd13f01ffd24449c4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:07 +00:00
Alexandru DAMIAN
42d1b65d15 bitbake: toastergui: improve performance in the all targets page
This patch improves performance in the all targets display
by computing the preffered layer only for displayed targets,
instead of computing for all targets.

(Bitbake rev: 027e3b7c579e21b3164f2785578ae9905b4fb325)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:07 +00:00
Alexandru DAMIAN
50c5ca5254 bitbake: toastergui: improve data suggestion
We improve the data suggestions in the project page.

The machines suggestions now contain the layer name.

The targets and machine do not show the layer branch.

For targets, the layer name is searchable.
For machines, the description field is searchable.

[YOCTO #7153]
[YOCTO #7154]

(Bitbake rev: 02a4997807ee995817d741985eea13d38e548007)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:06 +00:00
Alexandru DAMIAN
e5590bc381 bitbake: toastergui: fix project page layer branch names
Change inconsistent branch name usage in project page to
the uniquely defined get_vcs_reference()

[YOCTO #7381]

(Bitbake rev: bc838a6c075c4d7e24f7820088f485bbfdea5a32)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:05 +00:00
Alexandru DAMIAN
cffc2081cb bitbake: toastergui: suggestion in alphabetical order
Patch bringing ordering in alphabetical order for
targets, machines and layers suggestion in typeaheads.

[YOCTO #7152]

(Bitbake rev: de1a1504967b1c2df701f5b7496004f8cd68c407)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:04 +00:00
Alexandru DAMIAN
c8714ec0cd bitbake: toastergui: project page - consistent error display
We modify the project page to provide a consistent view of the
build errors. The display is now similar with the
managed_mrb_section and links point to the buildrequest
detail view.

[YOCTO #7188]

(Bitbake rev: d37eaaa48a63a137ded25a14911c97a5ae861ff6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:44:04 +00:00
Jonathan Liu
daaafb4b5b systemd: fix /var/log/journal ownership
The ownership needs to be explicitly set otherwise it inherits the user
and group id of the build user.

(From OE-Core rev: 0752c79282b1cc9699743e719518e6c341d50a3a)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:09 +00:00
Randy Witt
da8a15a7d6 systemd: Fix journal "Failed to set file attributes:" warning
This is a backport of an upstream patch that fixes the
"Failed to set file attributes: Inappropriate ioctl for device" message
when the device exists on ext4 filesystems.

No functionality is changed, the patch just removes a potentially misleading
warning.

(From OE-Core rev: 18304e03c8ab8de94b6001a8a5677b57862da0f4)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:08 +00:00
Andre McCurdy
85532e020e curl: remove samba from PACKAGECONFIG[smb] DEPENDS
Enabling support for the smb protocol does not create
a build time dependency on samba.

(From OE-Core rev: b4c7921001a30e0162cacbe12b1a5b888b36db57)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:08 +00:00
Sona Sarmadi
4811b04f12 e2fsprogs: CVE-2015-0247
Fixes a heap buffer overflow in lib/ext2fs/openfs.c which allows
a trivial arbitrary memory write under certain conditions.

References
http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/commit/?id=f66e6ce4
http://www.ocert.org/advisories/ocert-2015-002.html

(From OE-Core rev: 572437720b6698a3a10627fcd9654ef10f827836)

Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:07 +00:00
Alexandru.Vaduva
59e01b0262 linux-yocto-rt: removed duplicated line
Seemed that the recipe contained redundant information.

(From OE-Core rev: 22c0bc1b80d87bfd4f8d1fcbbb231b994f7e03b8)

Signed-off-by: Alexandru.Vaduva <Alexandru.Vaduva@enea.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:07 +00:00
Robert Yang
f743cced19 mailx: disable parallel build
The makeconfig can't run parallelly, otherwise the checking results
might be incorrect and lead to errors:
fio.c:56:17: fatal error: ssl.h: No such file or directory

(From OE-Core rev: 99473b6668a05698ce000b142e97cce405a8a3cd)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:06 +00:00
Ross Burton
73dca1ed8c util-linux: split libraries dynamically
util-linux has a number of utility libraries and not noticing a new one being
added in an upgrade results in many of the split-out core tools depending on the
entire package for the library.  To prevent this happening in the future do the
library packaging dynamically.

As a side-effect libsmartcols.so is no longer packaged in util-linux so
util-linux-fdisk no longer depends on the full util-linux.

(From OE-Core rev: a7572d7000bbc5739a1f0bec466dbcf856606f12)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:06 +00:00
Chen Qi
b14dd6a177 util-linux: fix CVE-2014-9114
Backport a patch to fix CVE-2014-9114.
The patch has been integrated in util-linux-2.26.

[YOCTO #7180]

(From OE-Core rev: 6a5c24f22621f41b17267a6ebedecec631d0156d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:06 +00:00
Koen Kooi
e5f9a6729c sysprof: fix arm big-endian build.
Applying the existing ARM patch for armeb makes it work.

(From OE-Core rev: 33a576a85b2d37dafadabf3f1472cd3c3b42f6b6)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:05 +00:00
Rob Woolley
3e8eb2d55c logrotate: Identify CONFFILES
Some package formats explicitly track which files are configuration files
so that they are not overwritten on updates. We must use an explicit list
instead of a wildcard as logrotate also provides files under ${sysconfdir}
that are not configuration files.

Signed-off by: Rob Woolley <rob.woolley@windriver.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:05 +00:00
Rob Woolley
1cdf38677b nfs-utils: Identify CONFFILES
Some package formats explicitly track which files are configuration files
so that they are not overwritten on updates. We must use an explicit list
instead of a wildcard as nfs-utils-client provides files under
${localstatedir}/lib/nfs that are not configuration files.

Signed-off by: Rob Woolley <rob.woolley@windriver.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:04 +00:00
Rob Woolley
f6c9b4f0eb nfs-utils: Install nfsmount.conf
The file nfsmount.conf is present in nfs-utils but not installed to the
filesystem.  It has been added to nfs-utils-client as it seemed to be
missing accidentally rather than being removed intentionally.  The binary
files in nfs-utils-client have a hard-coded reference to it and we
already provide the manpage for it in nfs-utils-doc.

Signed-off by: Rob Woolley <rob.woolley@windriver.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:04 +00:00
Kai Kang
4851a67e6c msmtp: add link file /usr/lib/sendmail
Link file /usr/lib/sendmail points to /usr/sbin/sendmail is required by
LSB core test according to Linux FHS: "For historical reasons,
/usr/lib/sendmail must be a symbolic link to /usr/sbin/sendmail if the
latter exists."

Create the link file /usr/lib/sendmail if it doesn't exist.

Refs:
1 http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/normativerefs.html#STD.LSB
2 http://www.pathname.com/fhs/pub/fhs-2.3.html#SPECIFICOPTIONS13

(From OE-Core rev: 9b25de34f084076b8c8db0e938696c4f630d366b)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:04 +00:00
Kai Kang
03ba0b70de lsb: update init-functions and remove sendmail
According to LSB specification Ref1, LSB checks file
/lib/lsb/init-functions. But for 64 bits system it is installed in
/lib64. Install init-functions to /lib/lsb to conform with LSB
specification.

Link file /usr/lib/sendmail which points to /usr/sbin/sendmail is
required by LSB according to Linux FHS[Ref 2]. But it should be done by
packages which provides command sendmail such as msmtp, postfix and
esmtp etc.

Refs:
1 http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html
2 http://www.pathname.com/fhs/pub/fhs-2.3.html#SPECIFICOPTIONS13

(From OE-Core rev: e1b837ab1e1d48b73217c4f62a0f5aefc998d8bf)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:03 +00:00
Robert Yang
e67611baa5 Revert "blktrace: fix and enable parallel build"
This reverts commit 2d9763a1c8.

There are a few parallel issues:
1)
../rbtree.o: error adding symbols: Invalid operation
collect2: error: ld returned 1 exit status
Makefile:42: recipe for target 'btt' failed

2)
git/blkiomon.c:216: undefined reference to `rb_insert_color'
collect2: error: ld returned 1 exit status
Makefile:27: recipe for target 'blkparse' failed

3)
ld: rbtree.o: invalid string offset 128 >= 125 for section `.strtab'

4)
btreplay.o: file not recognized: File truncated
collect2: error: ld returned 1 exit status

btreplay/btreplay.c:47:18: fatal error: list.h: No such file or directory

(From OE-Core rev: 35bb619486d7f5721e8fa86c8744d4cea4d1746a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:03 +00:00
Robert Yang
9afc9eaa3a mtd-utils: disable parallel build
Disable parallel build because of:
git/.compr.c.dep:46: warning: NUL character seen; rest of line ignored
git/.compr.c.dep:47: *** missing separator.  Stop.

Because both mkfs.jffs2 and mkfs.ubifs depend on compr.c, and
.compr.c.dep may generate twice at the same time.

(From OE-Core rev: d7092965166af8c37bfd643becc1473f75a0712d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:02 +00:00
Mehaffey, John
40e15f07f6 lttng: Add tracing group when building lttng-tools
This prevents the "Warning: No tracing group detected" message
from lttng when there is no group 'tracing' while using lttng
on the target.

(From OE-Core rev: 8fef1e991f9ea6f0ad6110aab77bc9ab0b4e7d23)

Signed-off-by: John Mehaffey <mehaf@gedanken.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:02 +00:00
Jonathan Liu
3cbc509a5f kernel-devsrc: fix file ownership
The file ownership needs to be explicitly set otherwise it inherits
the user and group id of the build user.

(From OE-Core rev: 9ce5b600cb1663f8c2a625c7f7c08ab3e61b58c8)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:01 +00:00
Martin Jansa
c5fd5773e8 util-linux: move getopt u-a link to base_bindir
* busybox installs getopt u-a in base_bindir when GETOPT is enabled, move util-linux
  link to the same location to fix calling u-a in read-only images
* remove unused variable usrbinprogs_a

(From OE-Core rev: 8e59d9e2c9c94d8682208ee02a1566864aaf51ff)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:01 +00:00
Ross Burton
c212977a55 liberation-fonts: inherit allarch as fonts are arch-independent
(From OE-Core rev: 21bd703655a7ab53cc02b070f5d99fa93a7884fa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:00 +00:00
Robert Yang
28c986c94d resolvconf: fix SRC_URI
Fixed:
WARNING: Failed to fetch URL ftp://ftp.debian.org/debian/pool/main/r/resolvconf/resolvconf_1.76.tar.xz, attempting MIRRORS if available

(From OE-Core rev: f4db91f5228129d5e8cf65f9c4919b4fdfc5306b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:42:00 +00:00
Robert Yang
62705100f5 net-tools: fix SRC_URI
Fixed:
WARNING: Failed to fetch URL ftp://ftp.debian.org/debian/pool/main/n/net-tools/net-tools_1.60-25.diff.gz;apply=no;name=patch, attempting MIRRORS if available

(From OE-Core rev: 37481376adebab93f9c3d28a0a461c736f321ae3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:59 +00:00
Robert Yang
18c6acd911 apt: fix SRC_URI
Fixed:
WARNING: Failed to fetch URL ftp://ftp.debian.org/debian/pool/main/a/apt/apt_0.9.9.4.tar.gz, attempting MIRRORS if available

(From OE-Core rev: 490d20e1a7e6e3a0cae24af37bcb0192a3916409)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:59 +00:00
Robert Yang
de2aad0f0b libevent: fix SRC_URI
The wget reported errors for the past URI since it can't follow the redirection well:
Connecting to cloud.github.com (cloud.github.com)|54.192.140.6|:443... connected.
OpenSSL: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Unable to establish SSL connection.

(From OE-Core rev: b2d7193da713120c97a452ca56742aca15911bee)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:58 +00:00
Robert Yang
b35689b5f5 xinetd: fix HOMEPAGE and SRC_URI
The www.xinetd.org is not available, use github as the HOMEPAGE and
SRC_URI.

(From OE-Core rev: 99acffdee21925e4d25d75ab921abf94b37b6595)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:58 +00:00
Jonathan Liu
05a16911ff libunwind: backport patch to link against libgcc_s intead of libgcc
(From OE-Core rev: 9906f949627b64f9fc36bc129bb37c8dd84dc27c)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:57 +00:00
Chen Qi
38382e0f15 rootfs.py: fix logic error so that warnings are checked
The following commit caused log checking for warnings not working for RPM
rootfs.

    rootfs.py: ignore "NOTE:" when catching warnings

The problem is that checking for warnings is always skipped because the
following statement is always true.

    if 'log_check' or 'NOTE:' in line:

This patch fixes the above problem so that warning checking in RPM rootfs
can work again.

(From OE-Core rev: 3e9e2ce380a73b50cbfc1995e361cfe879de6a8a)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:57 +00:00
Robert Yang
c03c82a707 pixbufcache.bbclass: add harfbuzz-native to PIXBUFCACHE_SYSROOT_DEP
Fixed:
DEBUG: Executing shell function pixbufcache_sstate_postinst
g_module_open() failed for sysroots/x86_64-linux/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so: libharfbuzz.so.0: cannot open shared object file: No such file or directory

(From OE-Core rev: 892c8d80e7cf36b3a45dca248969d49ce78c0cbf)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Robert Yang
788fd5ac01 kernelsrc.bbclass: fix KERNEL_VERSION
The kernel-abiversion is now in STAGING_KERNEL_BUILDDIR not in S.

Fixed rpm pkg like perf: (note the None version)
perf-None-r9.qemux86.rpm

(From OE-Core rev: 85bb679f22b2f5fb308016e62356bd1d6ba455a0)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Andre McCurdy
9157c1b0aa chrpath.bbclass: handle RUNPATH as well as RPATH
Binaries linked with gold may contain a RUNPATH instead of an RPATH.
Update chrpath.bbclass process_file_linux() to handle both cases.

(From OE-Core rev: 46ceb4d035e4f49e6b4a3a83bf604944d2b991c1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Robert Yang
05a69edeb7 license.bbclass: set dirs for do_populate_lic_setscene
Fixed:
ERROR: Build of do_populate_lic failed
ERROR: Traceback (most recent call last):
  File "bitbake/lib/bb/build.py", line 497, in exec_task
    return _exec_task(fn, task, d, quieterr)
  File "bitbake/lib/bb/build.py", line 437, in _exec_task
    exec_func(func, localdata)
  File "bitbake/lib/bb/build.py", line 212, in exec_func
    exec_func_python(func, d, runfile, cwd=adir)
  File "/home/nxadm/nx/ala-blade44.1/builds-2015-03-09-163005/qemuppc_world_oe_bp/bitbake/lib/bb/build.py", line 237, in exec_func_python
    os.chdir(cwd)
OSError: [Errno 2] No such file or directory: 'bitbake_build/tmp/work/ppc7400-wrs-linux/taglib/1.9.1-r0/build'

When running setscene, the cwd is $B which maybe removed by
autotools.bbclass or cmake.bbclass when rebuild.

(From OE-Core rev: b3262af11094f93c9588f2e3edc70a5058491e6d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:55 +00:00
Ross Burton
8a9ac1de34 devshell: allow the starting directory to be overridden
Some people like to have the devshell start in ${B} instead of ${S}, so allow
this to be overridden.

(From OE-Core rev: 217af639d13258429949b14c67110650288cba7a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:55 +00:00
Khem Raj
66a4d8bf6e buildstats.bbclass: typecast argument to os.minor/os.major to long
Started to run into this error on ubuntu 15.04

ERROR: Execution of event handler 'run_buildstats' failed
Traceback (most recent call last):
  File "run_buildstats(e)", line 18, in run_buildstats(e=<bb.event.BuildStarted object at 0x7f93341c1b50>)
  File "buildstats.bbclass", line 17, in set_device(e=<bb.event.BuildStarted object at 0x7f93341c1b50>)
SystemError: ../Objects/longobject.c:998: bad argument to internal function

ERROR: Command execution failed: Traceback (most recent call last):
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/command.py", line 102, in runAsyncCommand
    commandmethod(self.cmds_async, self, options)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/command.py", line 303, in buildTargets
    command.cooker.buildTargets(pkgs_to_build, task)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/cooker.py", line 1336, in buildTargets
    bb.event.fire(bb.event.BuildStarted(buildname, fulltargetlist), self.data)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 163, in fire
    fire_class_handlers(event, d)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 102, in fire_class_handlers
    execute_handler(name, handler, event, d)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 76, in execute_handler
    ret = handler(event)
  File "run_buildstats(e)", line 18, in run_buildstats
  File "buildstats.bbclass", line 17, in set_device
SystemError: ../Objects/longobject.c:998: bad argument to internal function

similar to here
http://pycuda.2962900.n2.nabble.com/bad-argument-to-internal-function-td4063274.html

If it is right fix .. Dont know

Change-Id: I84f3a4043ad5246e080dfd7e2f066e5292d4af91
(From OE-Core rev: 5f85a7549d119177c5d39f965b949e957e07867e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:54 +00:00
Jonathan Liu
9d0feb3f29 fontcache.bbclass: prepend to PACKAGEFUNCS instead of appending
Appending to PACKAGEFUNCS results in the font packages missing the
postinst/postrm scripts and the fontconfig cache not being generated
in /var/cache/fontconfig when creating images or installing font
packages. This is because the package data has already been emitted
by emit_pkgdata in PACKAGEFUNCS. Prepend to PACKAGEFUNCS to ensure
add_fontcache_postinsts is executed before emit_pkgdata.

[YOCTO #7410]

(From OE-Core rev: f0e3db4eaacc32423934ce09b91bc619dc5dbd21)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:54 +00:00
Jonathan Liu
d03e1677d5 postinst-intercepts/update_font_cache: fix ownership of fontconfig cache
The file ownership of the cache files in /var/cache/fontconfig needs to
be set to root:root otherwise it inherits the user and group id of the
build user.

[YOCTO #7411]

(From OE-Core rev: 23393c6685860d0b1c459874d35395360d0b6d3c)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:53 +00:00
Chen Qi
a30c6a5225 nativesdk.bbclass: set PKGDATA_DIR explicitly
For now, if we enable 'multilib' and execute `bitbake uninative-tarball
-c populate_sdk', the command would fail, complaining nativesdk-glibc not
found in package feed.

The problem is that PKGDATA_DIR is not set correctly for nativesdk packages
when multilib is enabled.

For now, we have:
meta/conf/bitbake.conf:PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata"

The above is overriden by the following is multilib is enabled.
meta/conf/multilib.conf:PKGDATA_DIR = "${STAGING_DIR}/${MACHINE}/pkgdata"

This is correct for normal packages. However, for nativesdk packages, this
is not correctly. This is because nativesdk.bbclass set STAGING_DIR_HOST as
follows.

meta/classes/nativesdk.bbclass:STAGING_DIR_HOST = "${STAGING_DIR}/${MULTIMACH_HOST_SYS}"

The above overrides the value in multilib.conf.

That's why we need to also set PKGDATA_DIR explicitly in nativesdk.bbclass.

(From OE-Core rev: 2f99ee5725ffc173bf32c0b707aa90adbc4eed95)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:53 +00:00
Martin Jansa
9a712be924 test-dependencies.sh: strip only .bb suffix
* we were stripping too much when stripping recipe name from line like this:
  ERROR: Task 12016 (/some/patch/something.dot.bar.bb, do_fetch) failed with exit code '1'
  where the recipe name contains dots and doesn't end with _<version>.bb
* apply the same fix as 8c9a25ae70d249b823ab2b0385d539eb8bbc1374 while
  building individual recipes

(From OE-Core rev: f76572df61d27a7e25f8433b1bbf42a0c9032024)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:52 +00:00
Benjamin Esquivel
1d43c3c214 oe-setup-builddir: output message cleanup
Moved a Yoctoproject documentation banner to the end of the first-time
run messages section

[YOCTO #7368]

(From OE-Core rev: 49ed897c01cb3be7582f79d863110688cc46dc55)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:52 +00:00
Koen Kooi
18c1c517b3 bitbake.conf: use http:// for GNU_MIRROR instead of ftp://
The past few weeks ftp://ftp.gnu.org has been intermittently giving errors like this:

WARNING: Failed to fetch URL ftp://ftp.gnu.org/gnu/emacs/emacs-23.4.tar.gz;name=tarball, attempting MIRRORS if available
ERROR: Fetcher failure: Fetch command failed with exit code 4, output:
Cannot parse PASV response.
accept: Connection timed out
Cannot parse PASV response.
Error in server response, closing control connection.

Which is annoying because binutils lives there. Using http://ftp.gnu.org hasn't given any problems so far.

(From OE-Core rev: 25fe8d95298a457e828190412d7148470edc5592)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:52 +00:00
Randy Witt
cd5e168a8f lib/oeqa/runtime/systemd: Add a basic runtime test for the journal
The test_systemd_journal() test will fail if journalctl exits with a
non-zero exit status. The exit status is non-zero even if there are no
journal files, which is what drove the creation of this test.

[Yocto #7388]

(From OE-Core rev: 27baa182d44872f84bee3da36b95997ce0597d89)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:51 +00:00
Paul Eggleton
313ad2a5cc bitbake: bitbake-layers: use stdout instead of stderr for logging
We use logger.plain() to produce actual output which needs to go to
stdout. We could use more advanced filtering (and probably should in
future) but for the moment let's just fix the regression.

Fixes [YOCTO #7458].

(Bitbake rev: e96fc0ccfc9f5be2c41c9733c92dc81df3df5065)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:29 +00:00
Rob Woolley
855fc21ae9 bitbake: knotty: Do not log show_versions output
Every time the bitbake show versions command (bitbake -s) is run it creates
a 100k log file.

The consolelogfile is disabled for show environment and disabling show
versions would make the behaviour match.

(Bitbake rev: dee0ba94e39ea49c1e9261a5e8932356e3bb7c57)

Signed-off-by: Rob Woolley <rob.woolley@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:28 +00:00
Rob Woolley
0b5ab4d987 bitbake: knotty: Catch exceptions on broken pipes
Any exceptions that occur in calls to logging methods are automatically
suppressed, including exceptions due to broken pipes.

However, the knotty summary messages are printed directly to stdout, which
means that any broken pipes will cause an exception traceback in python.

By wrapping the summary section in a try / catch block we can check for
IOError exceptions caused by broken pipes and let them pass.

(Bitbake rev: 146e7e157f97b676858ecff583dd53800d997253)

Signed-off-by: Rob Woolley <rob.woolley@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:28 +00:00
Richard Purdie
7f30749fe0 oeqa/parselogs: Skip hda opcode errors
These occur when running images under virtualisation on machines with
high load which sometimes trigger timeouts in the kernel DMA code.
They're harmless to ignore in these cases.

Adding this since "failing" the build due to this is more annoying
thank useful.

[YOCTO #7387]

(From OE-Core rev: fb29441216435b9bae47ca9cd42db5a6b1fe77d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-12 12:50:24 +00:00
Ross Burton
0aff27522d layer.conf: bump version as error-report interface changed
The error-report tooling command-line options were changed and anyone doing
automated builds and using error-reports needs to know what options to parse.

(From OE-Core rev: 99f209a49a4390192b95184ff86bd6f973010111)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 17:45:05 +00:00
Richard Purdie
c60786cec0 poky.conf: Update for post 1.7 release versioning
[YOCTO #7325]

(From meta-yocto rev: ea78356221bb186694e67c04592c3d950cc3f975)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 14:51:29 +00:00
Robert P. J. Day
f67d4960b3 kernel-dev: Fixed missed shortcut
(From yocto-docs rev: 3f9c25820bb93f8efb6eaf415e9d7a9545832a7c)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 11:08:35 +00:00
Scott Rifenbark
78cecf7a20 kernel-dev: Updates to the "Using Kernel Metadata in a Recipe" section.
Changed out the example to use some bits from the meta-xilinx layer
instead of the emenlow layer.

Reported-by: Robert P. J. Day <crashcourse.ca>
(From yocto-docs rev: 477c62877f5882538176d0f9c8a10fc4cf878628)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 11:08:35 +00:00
Robert P. J. Day
947cc83436 kernel-dev: Correct reference to "files" directory, should be ${PN}", and update kernel version.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 11:08:35 +00:00
Scott Rifenbark
7727a1608a ref-manual: Updated the KMACHINE variable description.
The example was ancient so I consulted Bruce Ashfield for a better
example and implemented it.

(From yocto-docs rev: e737f380ca5bb36c0095f11182cd3e3a93791e61)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 11:08:34 +00:00
Scott Rifenbark
2a5344e472 yocto-project-qs: Added note to Debian package requirements section.
The note alerts users to issues building QEMU when the build system
has the oss4-dev package installed.

Fixes [YOCTO #7382]

(From yocto-docs rev: 0f189ca7567e3e646808d5360fdb1499df8605c0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 11:08:34 +00:00
Ross Burton
dae9b5fb79 xserver-xorg: don't close already-closed connections
On shutdown xserver was closing connections that were already closed, resulting
in a segfault.

(From OE-Core rev: 04ffd02a14f5e0cd2ce0288b589d4c4a0120e2f4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:52 +00:00
Saul Wold
38cdb72362 systemtap: Upgrade to 2.7
This address issues with the 3.19 kernel and the number of patches to
back port would be to great

[YOCTO #7401]

(From OE-Core rev: 7ec29a4dbcc62a928c517bd968c499e325580bfe)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:51 +00:00
Randy Witt
e75c95ceca systemd: Fix the problem of an empty journal on boot
systemd by default tries to write the journal to /var/log/journal.
But base-files has a symlink /var/log -> /var/volatile/log. And
/var/volatile is a tmpfs mount in /etc/fstab.

If the journal service started before /var/volatile was mounted (which
was the typical scenario) then the journal would appear empty since
the old location was mounted over.

This change fixes the problem by ensuring that the journal doesn't start
until after the mount happens.

[Yocto #7388]

(From OE-Core rev: 17e8595af2041cfd63adf73b344f7ccad3db7e01)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:51 +00:00
Robert Yang
d7fe8b46a5 mailx: fix SRC_URI
The old one is not available any more.

(From OE-Core rev: 3569d434e754a62ec998fbf48380d653d1524dc4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:50 +00:00
Randy Witt
1662423b8a systemd: Fix runtime failures in systemd-tmpfiles-setup.service.
There were failures at boot from systemd-tmpfiles-setup.service due to
tmpfiles.d not honoring the ordering of entries in the files.

The patch here fixes the ordering issue which subsequently fixes the
failures on boot.

[Yocto #7393]

(From OE-Core rev: f6da978c5685393c4b6ef14690fe869a80836ba2)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:50 +00:00
Benjamin Esquivel
56f010f7ac glibc: 'yes' within the path sets wrong variables
The AC_EGREP_CPP macro is looking for a 'yes' string that is likely
to be found in the path where the file is stored. This false positive
match causes variables to be mistakenly set.

The fix is to use a more elaborated string instead.

This has to be done at the configure and the configure.ac files, because
a reconfigure does not happen in the regular build flow.

[YOCTO #6614]

(From OE-Core rev: fd0bf8f95227796435d22aa7a849a74106cf1eef)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:49 +00:00
Gary Thomas
9e95469916 opkg: Fix error when recompiled
If this package were ever recompiled, i.e. do_compile is rerun
as a result of a compiler change, etc., the 'opkg.conf' file
would be incorrectly updated, leading to an error:
 * opkg_conf_set_option: Duplicate option lists_dir, using first seen value "/var/lib/opkg".

(From OE-Core rev: 40a4f83d3791658789da8559c554b93b50db81c0)

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:49 +00:00
Ross Burton
d5fb9aa9e7 gdb: add whitespace to _append
Add leading whitepace to EXTRA_OECONF_append so it doesn't rely on the original
value ending with trailing whitespace.  Spotted by Robert P. J. Day.

(From OE-Core rev: b1b9a269ff94d80622f1c2a447568641039dc9ce)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:49 +00:00
Kai Kang
44d763e0cb systemd: correct permission mode of /var/volatile/tmp
Permission mode of directory /var/volatile/tmp should be 1777,
correct it.

(From OE-Core rev: 81d3209666ed574a7af599070c65aa05114eb5bd)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:48 +00:00
Khem Raj
664c1dfe22 systemd: Create packageconfig for ldconfig support
Useful when we disable ldconfig in glibc, we need to be able to
turn it off in systemd too, otherwise systemd tries to launch
the service and it fails

Change-Id: I170307f809a13def0cafc282e88d4eafa0313c31
(From OE-Core rev: 9c2eb7f4774356fabf21ff5147a7d34601fb57c8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:48 +00:00
Saul Wold
bd0ed7ce67 image_types: Fix MIN_BTRFS_SIZE to be 1024 blocks to match ROOTFS_SIZE
[YOCTO #7392]

(From OE-Core rev: b75e23568d72aea3c508492c129c361bedd98eb4)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:47 +00:00
Dan McGregor
d6a2a54e5b systemd: fix systemd-tmpfiles ACL issues
On systems where /var/log is not a volatile systemd-tmpfiles creates
duplicate ACL entries. This causes systemd-tmpfiles service to fail.
Also quietly ignore ACL settings on filesystems that don't support ACLs.

Backport the fixes from systemd master to fix these issues.

(From OE-Core rev: 73a045a1b52d8260d60517bbb5d4c74132d03b10)

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:47 +00:00
Saul Wold
f5e4349011 openssl: Upgrade to 1.0.2
Rebased numerous patches
removed aarch64 initial work since it's part of upstream now
Imported a few additional patches from Debian to support the version-script
and blacklist additional bad certificates.

(From OE-Core rev: 10b689033551c37d6cafa284d82bdccd43f6113e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:46 +00:00
Robert Yang
7c504b44ef bash 3.2.48: disable parallel build
It's Makefile has the two rules:
$(BUILTINS_LIBRARY): $(BUILTIN_DEFS) $(BUILTIN_C_SRC) config.h ${BASHINCDIR}/memalloc.h version.h
    @(cd $(DEFDIR) && $(MAKE) $(MFLAGS) DEBUG=${DEBUG} libbuiltins.a ) || exit 1

${DEFDIR}/builtext.h: $(BUILTIN_DEFS)
    @(cd $(DEFDIR) && $(MAKE) $(MFLAGS) builtext.h ) || exit 1

which causes parallel issues:
mkbuiltins.o: file not recognized: File truncated
collect2: ld returned 1 exit status

I don't have any good ideas to fix the problem, so disable parallel
build for it.

(From OE-Core rev: efbee563af4ab56f93ac0a6238426d1d3eb80b98)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:46 +00:00
Robert Yang
370e730216 create-pull-request: fix git GIT_VERSION
If the git version is 1.7.9.5, then 1795 is bigger than 210 which causes
errors like:
fatal: No such ref: :rbt/bash
fatal: Needed a single revision
ERROR: git request-pull reported an error

Use the first 3 numbers to fix the problem.

(From OE-Core rev: d23a1d7df849a2a7d338b2805bba7694717cbe65)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:46 +00:00
Ross Burton
72ee285fbe pkg-config: strip system library paths reliably
pkg-config was skipping every other link flag due to a list manipulation bug,
backport a commit from git to fix this.

This will stop users of zlib.pc from inserting the sysroot directory indirectly
into builds.

(From OE-Core rev: df3ecaf86360a9c109b1b19bfa8a52890315bbdc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:45 +00:00
Ross Burton
8732930521 rpm: don't put LDFLAGS into the .pc file
The LDFLAGS are not generally useful with pkg-config and mean that the .pc file
contains references to the sysroot directory, so remove it.

(From OE-Core rev: f50c4c4e26edeaf01393fe7a06c42f86fd4680a5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:45 +00:00
Lucian Musat
ddc8222443 oeqa/selftest: Added a testcase to verify INCOMPATIBLE_LICENSE option.
Fixes bug 6933

(From OE-Core rev: 984884cbc177300a4fefd56cb027d50b2ff4510c)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:44 +00:00
Randy Witt
f0f6b234a7 lib/oeqa/selftest/lic-checksum: Verify failure when checksum changes.
The test added verifies that when a file with an absolute path in
LIC_FILES_CHKSUM changes without a corresponding change to the md5sum,
it triggers the license qa test again with a failure.

[Yocto #6450]

(From OE-Core rev: cab59ce08916c45c1d9da1cf9a92a67574f6c2c3)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:44 +00:00
Randy Witt
a39ce568e0 base.bbclass: Add LIC_FILES_CHKSUM files to checksum files.
Previously, files with absolute paths in LIC_FILES_CHKSUM such as
"file://${COMMON_LICENSE_DIR}/foo" would not result in a qa failure
when the license file changed.

To fix this problem, add any files with absolute paths from
LIC_FILES_CHKSUM to the file-checksums varflag, so that changes in the
license file are detected and cause the qa task for licenses to run.

[Yocto #6450]

(From OE-Core rev: 5df681259ae078c9d04d426fb5971eaa79d35ba5)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:44 +00:00
Mike Crowe
3f8ce1e755 sed: Cope with ${bindir} and ${base_bindir} being the same
${bindir} and ${base_bindir} may be the same. If they are don't try and
move files onto themselves.

(From OE-Core rev: ab1452cacce6584bab27b73fc1e22d603606ecda)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:43 +00:00
Li Zhou
9d078a14a5 libtool: put libltdl.la in the right package.
The libltdl libraries are put in libltdl-* packages, but libltdl.la
is packaged in libtool-dev. This change puts libltdl.la in libltdl-dev
package instead of libtool-dev.

(From OE-Core rev: bcf1f0e18c656f75d8d1b8bbe1607bd8c722b529)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:43 +00:00
Khem Raj
6e539bf7a5 glibc_2.21.bb: Fix condition to skip parsing the recipe for non-glibc libc
The condition should be uclibc 'or' musl then we know its not glibc
right now it checks with 'and' operator, that condition will never be
true

Change-Id: Ifc48e81fd0b3c18d8e1ef76a18c216dc6acda092
(From OE-Core rev: 6feef44751d98c55a2764d70c26d170f90b73f9d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:43 +00:00
Khem Raj
bd193a0115 libgpg-error: Add -P option to CPPFLAGS
Fixes https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1301822.html

libgpg-error FTBFS when built with gcc-5. Here is the relevant excerpt:

| Making all in src
| make[4]: Entering directory '/tmp/buildd/libgpg-error/libgpg-error-1.17/src'
| gawk -f ./mkstrtable.awk -v textidx=3 \
|         ./err-sources.h.in >err-sources.h
| gawk -f ./mkstrtable.awk -v textidx=3 \
|         ./err-codes.h.in >err-codes.h
| gawk -f ./mkerrnos.awk ./errnos.in >code-to-errno.h
| gawk -f ./mkerrcodes1.awk ./errnos.in >_mkerrcodes.h
| gcc -E -D_FORTIFY_SOURCE=2  _mkerrcodes.h | grep GPG_ERR_ | \
|                gawk -f ./mkerrcodes.awk >mkerrcodes.h
| rm _mkerrcodes.h
| gcc -I. -I. -o mkerrcodes ./mkerrcodes.c
| In file included from ./mkerrcodes.c:26:0:
| ./mkerrcodes.h:9:5: error: expected expression before ',' token
|    { , "GPG_ERR_E2BIG" },
|      ^

It makes invalid assumptions on undefined behaviour of gcc. To see why,
let us look at the contents of the intermediate steps:

_mkerrcodes.h (deleted):
| ...
| #ifdef E2BIG
| E2BIG   GPG_ERR_E2BIG
| #endif
| #ifdef WSAE2BIG
| WSAE2BIG        GPG_ERR_E2BIG
| #endif
| ...

gcc -E -D_FORTIFY_SOURCE=2  _mkerrcodes.h | grep -v '^$':
| ...
| # 26 "_mkerrcodes.h" 2
| 7
| # 31 "_mkerrcodes.h"
|      GPG_ERR_E2BIG
| # 37 "_mkerrcodes.h" 3 4
| 13
| # 37 "_mkerrcodes.h"
|       GPG_ERR_EACCES
| ...

As can be seen here, the cpp from gcc-5 can split lines and "grep
GPG_ERR_" fails to account for that.

Change-Id: I6f1476e4afc7163ebc3a05106ceaa3b83e3fab3e
(From OE-Core rev: 3993378c9a8994688fda15a5cd05e04a435d2d54)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:42 +00:00
Alexandre Belloni
1aa32a115a wic: rawcopy: support skipping
Add support for skipping the beginning of a file with the rawcopy
plugin.

(From OE-Core rev: 89db37c85ac0d0035dbeb9643d7802ca28681e76)

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:42 +00:00
Alexandre Belloni
5e2dd63d2b wic: add fsimage plugin
The fsimage plugin allows to add an already existing filesystem image in
the partition layout.

(From OE-Core rev: b49e5af8c6ef0abaabce36e5e7d8ddc399e02f53)

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:41 +00:00
Alexandre Belloni
0393438b94 wic: fix fstab generation
Commit 0a6668f6e60b4195ff4163c00fc972bacdb27b4b still included some
debug and is not working properly as the new fstab is generated too
late.

(From OE-Core rev: eea80d25c0902bb16ed3425888857d3cc5486376)

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:41 +00:00
Chen Qi
5cfac6b9e9 systemd: avoid parsing error when 'networkd' is enabled in PACKAGECONFIG
If 'networkd' is enabled in PACKAGECONFIG, the do_install variable cannot
be correctly expanded. Error message is like below.

Failure expanding variable do_install: ShellSyntaxError: LexToken(Fi,'fi',0,0)
followed by:
  LexToken(NEWLINE,'\n',0,0)

This patch fixes the above problem.

(From OE-Core rev: 060375f0fea327d2962980045666edb6eaa5d5f0)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:40 +00:00
Bian Naimeng
5818c0dc31 gcc-source: fix bug to avoid building error.
gcc-source don't do do_package_write_rpm, so we should set
PACKAGES = "" to avoid the building error if we want generate srpm,
otherwise, we get the error as below.

ERROR: Task do_deploy_archives in meta/recipes-devtools/gcc/gcc-source_4.9.bb \
       depends upon non-existent task do_package_write_rpm in \
       meta/recipes-devtools/gcc/gcc-source_4.9.bb

(From OE-Core rev: 704fd8f1efbd7fa9368cfe4f956abf24cd58664e)

Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:40 +00:00
Cristian Iorga
ca3a3c0541 meta/lib/oe/utils.py: properly implement both_contain()
oe.utils.both_contain() just does a find() on the value
rather than splitting the value and then looking in the
list of split items. The result is that if you add a
feature to MACHINE_FEATURES that itself has a substring
that matches one of the values looked for when building
COMBINED_FEATURES, you end up with an incomprehensible
error (here with "ext2i" in MACHINE_FEATURES):

ERROR: Nothing RPROVIDES 'packagegroup-base-ext2'
(but /home/balister/src/oe-core/oe-core/meta/recipes-core/
/packagegroups/packagegroup-base.bb RDEPENDS on or otherwise requires it)

Fix [YOCTO #6888].

(From OE-Core rev: e7375f73bd8052d012e35d4ebaee09a55417581f)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:39 +00:00
Michael Wood
d5a28582be report-error: Update information on the submission process
The new send-error-report will prompt for review of items and the server is
now specified by using the -s argument.

(From OE-Core rev: c195d70f35ea522854dcdd53aeae60eec6b7ad7e)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:39 +00:00
Michael Wood
a8b1dede04 scripts/send-error-report: Rework script to support new features
- Add arguments to allow for non-prompted sending, json encoded response
  and link backs.
- Add feature to check the server's max_log_size
- Add feature to allow reviewing of the final data
- Be a bit more helpful if the expected fields aren't filled in instead
  of exiting.
- Remove the redundant urlencode
- Add a user-agent so that the server can identify the encoding method.
- Remove custom proxy handling - urllib should 'just work'

[YOCTO #6736]
[YOCTO #7245]
[YOCTO #7105]

(From OE-Core rev: 5e036f3fd9caaedcd2759214766b3228299e929b)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:38 +00:00
Martin Jansa
ba78a365ee recipes: add x11 to required DISTRO_FEATURES
* it's not complete, but recipes depending on virtual/libx11 are easiest
  to spot, I've long list of PNBLACKLIST for all recipes which cannot
  be built in distro without x11 in DISTRO_FEATURES

(From OE-Core rev: 78d269fa9a586e24ef058ba5315c696f15935f56)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:38 +00:00
Richard Purdie
0467d53017 bitbake: cooker/server: Fix up 100% CPU usage at idle
The recent inotify changes are causing a 100% cpu usage issue in the
idle handlers. To avoid this, we update the idle functions to optionally
report a float value which is the delay before the function needs to be
called again. 1 second is fine for the inotify handler, in reality its
more like 0.1s due to the default idle function sleep.

This reverts performance regressions of 1.5 minutes on a kernel build
and ~5-6 minutes on a image from scratch.

(Bitbake rev: 0e0ba408c2dce14a0fabd3fdf61d8465a031495b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:37:28 +00:00
Alejandro Hernandez
8ce2f2c354 maintainers.inc: Became maintainer of python2 and python3
(From meta-yocto rev: bbfee008946efe8e3be06dc41b6b454d4d59245c)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 16:01:08 +00:00
Bernhard Reutner-Fischer
efc7f04f92 scripts/runqemu: clarify help text
(From OE-Core rev: 0542472969d0eb28fd44da97e4e01d69d864d157)

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 15:58:00 +00:00
Jonathan Liu
21e2c03a00 qt4: add patch for BMP denial-of-service vulnerability
For further details, see:
https://bugreports.qt.io/browse/QTBUG-44547

(From OE-Core rev: 840fccf8ec7691f03deeb167487cde941ebea8bf)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 15:58:00 +00:00
Jian Liu
73be8c1825 man: fix bugs of makewhatis script
- man-1.6e-whatis2.patch does not delete the tail "fi"
  fix it to avoid syntax error
- Use the command "which" to get the path of awk

(From OE-Core rev: 9383f635858e35e8fb83fba1750a8c6e4b4274b1)

Signed-off-by: Jian Liu <jian.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 15:57:59 +00:00
Clemens Lang
36e47a99ae bitbake: fetch2: Revalidate checksums, YOCTO #5571
[YOCTO #5571] -- https://bugzilla.yoctoproject.org/show_bug.cgi?id=5571

The following workflow (whether accidentally or deliberately) would
previously not result in a checksum error, but would be helpful to do
so:
 - Write a recipe with correct checksums
 - Fetch the sources for this recipe using bitbake
 - Change the checksums
Since the bitbake fetcher writes a done stamp after the initial download
and does not verify the checksums again (even if they are changed in the
recipe afterwards), the change of checksums is silently ignored.

Fix this without the overhead of computing the checksums from scratch on
every do_fetch by storing them in pickled format in the done stamp and
verifying that they still match those in the recipe.

(Bitbake rev: fbd4a0d422cf7f43db2f9eab2e47c41246a9031e)

Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:57:00 +00:00
Dave Lerner
3c641e7238 bitbake: toaster: cached outcome download button
When a task is executed successfully without using saved-state cache,
then a button appears allowing the user to download the log file for
that task.  This commit allows the user to download the log file for a
task that is completed by unpacking data from the saved-state cache, a
task with outcome 'Cached'.  The same button 'Download task log' is
shown, which when pressed downloads the '_setscene' log file for that
task.

[YOCTO #7379]

(Bitbake rev: d4ac60c41f1ee9a8c59f9ede5b0948303f793afa)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:55 +00:00
Alexandru DAMIAN
f5edfce70d bitbake: toaster: projectapp.js - clear up jslint warnings
This patch clears up jslint warnings for the project app,
and improves file readability.

(Bitbake rev: 10e58867a0231c8039f6d2523b885b9ca7c7dff6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:54 +00:00
Michael Wood
0fa38bb8e1 bitbake: toaster: libtoaster Fix a few warnings picked up by jshint
Fix warnings and items that do not conform to strict.
Also add a fairly lenient jshintrc. usage: jshint js_file

(Bitbake rev: 93a1e05a5d6bd19e689126bfef0df8caa0d8bf34)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:54 +00:00
Belen Barros Pena
41ebd5105b bitbake: toaterui: shorten the unavailable artifact message
Make it slightly shorter, and separate the 'back' action
so that is more visible and easier to hit.

(Bitbake rev: 70c8d8f471653e6832d1bbc469914b7e59372c1b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:53 +00:00
Belen Barros Pena
5a03a23bfd bitbake: toasterui: give some space to the download log button
In the build dashboard, the download build log button was
a bit too close to the build time.

(Bitbake rev: da7c450f28cdf1c851b14f7a1fac08e6cf1dd894)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:53 +00:00
Belen Barros Pena
74bb0fb3c1 bitbake: toasterui: apply correct class to latest builds targets
Failed builds were showing the target name with the .success
class applied (cognitive disonance, anyone?).

(Bitbake rev: c78a19ecd2b397ccce59c1f6b852953b04afd37a)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:52 +00:00
Belen Barros Pena
d2c9f704f2 bitbake: toasterui: fix the h1 in the project builds page
It was not displaying the number of search results.

(Bitbake rev: df8bdd357b126a0436c15cf66a13d398df273867)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:52 +00:00
Belen Barros Pena
16c03f8541 bitbake: toasterui: don't open layer details in a new tab
In the project page, the project layer links were opening
in a new tab. They should not do that.

(Bitbake rev: 45d3c27e68149bce089551539f6bbdaef98b7896)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:51 +00:00
Michael Wood
dcbfc74c3c bitbake: toaster: Enforce unique layer names
We had some clever functionality to manage duplicate layer names by
using layer versions and new revisions, unfortunately this was too
opaque to the user.

[YOCTO #7337]

(Bitbake rev: 4590cfcb2d5e26518e04f8abc8e7c2dad973f6d2)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:51 +00:00
Dave Lerner
d8ae3ac160 bitbake: toaster: commit id format on layers page
On the layers page, when a layer revision is a commit id instead of a
an upstream branch name, then follow the same format for displaying the
commit id as on the recipes page.  That format is a button with the
truncated commit SHAID which when pressed expands to the full SHAID.

[YOCTO #7191]

(Bitbake rev: 507d2a36e53ba2c1f49616d52e4700f6c1bca8fd)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:50 +00:00
Alexandru DAMIAN
4004aebb1b bitbake: toastergui: bring back base URLs for pages that need them
Some URLs, although invalid on their own, are used in JS to
build valid page pointers. Previous patch removed two of these URLs,
breaking the display of several patches.

This patch re-adds these URLs with different names, and returns
400 Bad Request empty pages on them, which is consistent with the
intended usage of these URLs.

(Bitbake rev: 73afee5ddb2e89dcec65854639b19b8860232d89)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:50 +00:00
David Reyna
ece39b4c47 bitbake: toaster: reconcile non-manage-mode landing classes
Remove obsolete manage-mode URLs, fix not-manage mode landing classes that have
obsolete non-matching parameter lists, remove orphaned landing classes..

[YOCTO #6483]

(Bitbake rev: 76c54a79c4e26cefa5e72ca1cb14bc9d46e8f9dd)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:49 +00:00
David Reyna
4f3664705c bitbake: toaster: hide special code for core vars not present, disable add button
Hide the special config variable management sections when the respective
variables are not present. Disable the variable add button after a
variable is added so that blank values cannot be added, and also when a
variable name managed in the project detail page (e.g. BBLAYERS and MACHINE)
is entered.

[YOCTO #7246]
[YOCTO #7371]

(Bitbake rev: 1f9aaa7747351f7b0063f80c56cf7fa2c9cc3cf9)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:49 +00:00
Dave Lerner
48c48a41bf bitbake: toaster: layer rev tooltip only if necessary
On the heading for the layer detail page, only show a tool tip on the
heading revision branch/shaid field if the string is too large to fit
in the 13 character field. That is, don't show a hovering tool tip
with exactly the same string that is shown without the tip.

[YOCTO #7312]

(Bitbake rev: 8a3095a33551a96176fdff83ea33cda5b30311dd)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:48 +00:00
Dave Lerner
ec8e07f8cf bitbake: toaster: add sort, search, paging to recipe package page
When selecting the packages tab on a recipe detail page, the page now
includes:
    column sort on package name and size columns,
    search on the package name, and
    pagination.

Column sort is added by splitting the recipe view/html for a recipe's
package list into a new url path, view name and template, so that
the sorting routine, views.reload_params(), interfaces similar to other
views.

Search, sorting,  and pagination are implemented for this detail page
using three new templates.
  templates/detail_pagination_bottom.html
  templates/detail_search_header.html
  templates/detail_sorted_header.html

views.recipe() is optimized since the recipe's package list is no
longer needed by the recipe template, only the recipe's package count
is required for the first page.

The recipe view and template also changes to support tabbing to the
right context on the recipe detail page from the recipe-package page.

[YOCTO #6154]

(Bitbake rev: 6cb9e853d05c2c71467af22ef459ffbe6f41de36)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:47 +00:00
Alexandru DAMIAN
e248a503ba bitbake: toaster: models.py do not use transactions
This is the counterpart patch of
	do not use transactions if the database autocommits

fix on toasterui, applied to models.py

[YOCTO #7402]

(Bitbake rev: 48d0d510816346073f135bb86fb7904fdb50bb27)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:47 +00:00
Alexandru DAMIAN
7d9dd125f1 bitbake: xmlrpc server: delete function on errors
This patch makes sure to delete an idle function that
raises an exception for the xmlrpc server.

The counterpart functionality in the process server was
added with:

commit db50630948.
duthor: Richard Purdie <richard.purdie@linuxfoundation.org>
Date:   Wed Aug 20 22:31:06 2014 +0000

    bitbake: process: Deal with infinite looping of the server

This patch fixes

[YOCTO #7316]

(Bitbake rev: e7c9a6788d969c901fd6394416ac3936e62c4c72)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:46 +00:00
Alexandru DAMIAN
b611de9429 bitbake: cooker: make sure state is properly used to accept clients
This patch fixes a bug where if the build is force stopped,
subsequent clients cannot connect to the server due to
unnecessary limits on setFeature.

Additionally, we make sure that the state is properly reset
even if the BuildCompleted event firing excepts for some reason.

(Bitbake rev: 0b66b05169688aa4ddc4c54d175bb961b2f27fec)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:46 +00:00
Alexandru DAMIAN
8d87f7040f bitbake: xmlrpcserver: do not connect client on error
We roll back the client connection if some error happens,
like during setFeatures, as to leave the server accessible
to other clients.

(Bitbake rev: 4e4a2ee2f05f8741b2e09263e328420363975b02)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:45 +00:00
Alexandru DAMIAN
69d13dc64c bitbake: toaster: delete test data
Toaster used a test fixture to verify page rendering
on known data.

This fixture is outdated due to changes in the data structure,
and we remove it to avoid confusions about its usage.

The tests using this data are now disabled.

(Bitbake rev: 8fda1b66e695ccdf98ae1c34a0bd655be2878188)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:45 +00:00
Alexandru DAMIAN
a9cd657a01 bitbake: cooker: read file watches on server idle
The inotify facility monitoring changes to the config files
could be overwhelmed by massive changes to the watched files
while server is running.

This patch adds verification the notification watches to the
server idle functions, in addition to the cooker updateCache
command which executes only infrequently, thus preventing
overflowing the notification buffer.

[YOCTO #7316]

(Bitbake rev: 996e663fd5c254292f44eca46f5fdc95af897f98)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09 14:33:43 +00:00
Scott Rifenbark
c504276d26 dev-manual, ref-manual: Replaced &dash;&dash; with "--"
Fixes [YOCTO #7386]

Apparently, copying HTML displayed commands that have a
double dash created through "&dash;&dash;" in the docbook source
causes some issues in the shell.  I have scrubbed the manual set
to replace any "&dash;&dash;" strings with "--".

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:43 +00:00
Scott Rifenbark
a889cc011c yocto-project-qs: Added a cross-link to the wiki page for YP releases.
(From yocto-docs rev: b0c30f90bc7469f3fb0686ab9ccc8b9f130af613)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:42 +00:00
Robert P. J. Day
551edbdee6 kernel-dev: Update name of build directory
Tweak the manual to refer to the name of the kernel build directory as
it is listed precisely in linux-yocto.inc.

(From yocto-docs rev: f8c762e42a67bd84b733a5ae2512581af805a76b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:41 +00:00
Robert P. J. Day
a79cdb51b8 bsp-guide, kernel-dev, ref-manual: KERNEL_FEATURES should refer to .scc files.
Tweak a number of doc lines so that the KERNEL_FEATURES variable
refers directory to .scc files, and does not take advantage of
potentially confusing shortcuts.

(From yocto-docs rev: 6236fb098fc2d518f6f4f63e16b19a06a775d2d6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:41 +00:00
Scott Rifenbark
f0b44ff4b4 kernel-dev: Applied some user-input formatting for some variables.
(From yocto-docs rev: 2aa26a4f32268997e730d48626ad074ef9fcd8bf)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:40 +00:00
Scott Rifenbark
dc56adb5fb kernel-dev: Substituted "emenlow" example for "fri2"
(From yocto-docs rev: 786f647bfb0aca98be64a5515c1cc3b645c85d3e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:40 +00:00
Scott Rifenbark
0401f07f9e kernel-dev: Added quotes around a section cross-reference.
(From yocto-docs rev: e8b4b8239c2d7ae6a5989e0f3ab82b25ccd34ae9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:39 +00:00
Scott Rifenbark
14316cf39f kernel-dev: Fixed variable formatting.
(From yocto-docs rev: f2264bc3a61c284f01e68feea86858e46bf1594d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:39 +00:00
Scott Rifenbark
42f5b116da dev-manual: Updates to the "Working Within Eclipse" section.
First edits to update this section to support the Luna version of
Eclipse.  I weeded out Juno, which leaves Luna as the preferred
version and Kepler as a second version if they don't want to update
to Luna.

(From yocto-docs rev: 4f2dc237aa3498402cdf637ac2e85fdf0c3bf8a0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:38 +00:00
Scott Rifenbark
1beb6fc738 poky.ent: Added a new variable ECLIPSE_LUNA_URL
With the support of Luna version of Eclipse, I had to create a new
variable named ECLIPSE_LUNA_URL and set it to
"&ECLIPSE_DL_URL;/releases/luna"

(From yocto-docs rev: 4c686fc8e52d608975c4fd9040fd83870419bcf0)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:38 +00:00
Robert P. J. Day
62e4d4571c ref-manual: Updated the MACHINE variable description.
Fill out missing machines for the MACHINE variable.

(From yocto-docs rev: 2b8179cfb7e3a25d95c43f9160d284ebd5deefc7)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:38 +00:00
Scott Rifenbark
4a5f13760b kernel-dev: Swapped out fri2 BSP for emenlow BSP in example.
In the "Using Kernel Metadata in a Recipe" section, the example
called out "fri2" as an example BSP that shares the same KMACHINE.
This was true last release of meta-intel but is no longer true.
I used "emenlow" now as it seems to be like "fri2" was before
the "fido" release.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:37 +00:00
Scott Rifenbark
82ad008cd2 kernel-dev: Updated "Modifying Source Code" section.
Substituted a more correct build directory path in the
example by providing
"${WORKDIR}/linux-${PACKAGE_ARCH}-${LINUX_KERNEL_TYPE}-build"

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:37 +00:00
Scott Rifenbark
86f4cf8faf yocto-project-qs: Updates to add more explanations and navigation
Added some changes based on input from a new user.  Basically,
added a bit more explanation in a few spots and some suggestions
on where to read or go next after concluding the two basic
quick-use sections.

(From yocto-docs rev: 5381f1202957e171d16d97332b40e8d363828a20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:36 +00:00
Scott Rifenbark
8951db67fd poky.ent: Changed the code name from "tbd" to "fido".
(From yocto-docs rev: 5d4d945b6454509fcc4cd35ea8d098c2996f91d5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:35 +00:00
Scott Rifenbark
0a2091376e dev-manual: Updates to Eclipse section
Modified the area from which the Eclipse Git repository is located.
This has changed.

(From yocto-docs rev: ec2bf4125877b28dae0681c8b578c7bebec5a5b6)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:35 +00:00
Scott Rifenbark
e7e533028b kernel-dev: Scrubbed out the 3.4 kernel references.
This kernel is not supported and is ancient.  Many of the examples
were referencing this kernel.  I switched to use the 3.19 version.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:34 +00:00
Robert P. J. Day
043e02c5d8 kernel-dev: Minor typo fixed and added LTSI link
Fixed a small text issue where a hypen was needed.  Also, provided
a real link to the YP LTSI page.

(From yocto-docs rev: aa8c06b79eef1855c3b5af4c8bfa47a96a86d332)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:34 +00:00
Scott Rifenbark
a8f21965eb kernel-dev, ref-manual: Edits to KBRANCH.
Applied some edits to the areas where KBRANCH is discussed.
Clarified that setting it is not optional any longer.

(From yocto-docs rev: 4d0b2d92140d066048d9ff36453c7ea589eebe55)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:33 +00:00
Scott Rifenbark
8ced82e8b2 kernel-dev, ref-manual: Scrubbed out the KBRANCH_DEFAULT variable.
This variable is out.  There were some references to deal with.

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:33 +00:00
Scott Rifenbark
fef68d378e ref-manual: Updated the KBRANCH variable description
Removed traces of the deprecated KBRANCH_DEFAULT variable.

(From yocto-docs rev: 8130f0db46be872cd857d8579323e4ad00da6380)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:32 +00:00
Robert P. J. Day
b49a5ccc5b kernel-dev: Clarify a couple minor things in kernel manual, ch 2.
Some small changes to clarify how to change the configuration.

(From yocto-docs rev: fce7c97abb69f15142dbadf90a90965a49ec3e0e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-06 10:44:31 +00:00
Ross Burton
bef8558f0e README: expand the Where To Send Patches section
(From meta-yocto rev: 20903fc4df6eed27202c2bf015d2da402191205a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-04 17:07:37 +00:00
805 changed files with 35327 additions and 148649 deletions

2
.gitignore vendored
View File

@@ -8,7 +8,7 @@ scripts/oe-git-proxy-socks
sources/
meta-*/
!meta-skeleton
!meta-hob
!meta-selftest
hob-image-*.bb
*.swp
*.orig

29
README
View File

@@ -30,20 +30,29 @@ For information about OpenEmbedded, see the OpenEmbedded website:
Where to Send Patches
=====================
As Poky is an integration repository, patches against the various components
should be sent to their respective upstreams.
As Poky is an integration repository (built using a tool called combo-layer),
patches against the various components should be sent to their respective
upstreams:
bitbake:
bitbake-devel@lists.openembedded.org
Git repository: http://git.openembedded.org/bitbake/
Mailing list: bitbake-devel@lists.openembedded.org
meta-yocto:
poky@yoctoproject.org
documentation:
Git repository: http://git.yoctoproject.org/cgit/cgit.cgi/yocto-docs/
Mailing list: yocto@yoctoproject.org
Most everything else should be sent to the OpenEmbedded Core mailing list. If
in doubt, check the oe-core git repository for the content you intend to modify.
meta-yocto(-bsp):
Git repository: http://git.yoctoproject.org/cgit/cgit.cgi/meta-yocto(-bsp)
Mailing list: poky@yoctoproject.org
Everything else should be sent to the OpenEmbedded Core mailing list. If in
doubt, check the oe-core git repository for the content you intend to modify.
Before sending, be sure the patches apply cleanly to the current oe-core git
repository.
openembedded-core@lists.openembedded.org
Note: The scripts directory should be treated with extra care as it is a mix
of oe-core and poky-specific files.
Git repository: http://git.openembedded.org/openembedded-core/
Mailing list: openembedded-core@lists.openembedded.org
Note: The scripts directory should be treated with extra care as it is a mix of
oe-core and poky-specific files.

View File

@@ -352,19 +352,22 @@ Setup instructions
------------------
You will need the following:
* NFS root setup on your workstation
* TFTP server installed on your workstation
* RJ45 -> serial ("rollover") cable connected from your PC to the CONSOLE
port on the board
port on the device
* Ethernet connected to the first ethernet port on the board
If using NFS as part of the setup process, you will also need:
* NFS root setup on your workstation
* TFTP server installed on your workstation (if fetching the kernel from
TFTP, see below).
--- Preparation ---
Build an image (e.g. core-image-minimal) using "edgerouter" as the MACHINE.
In the following instruction it is based on core-image-minimal. Another target
may be similiar with it.
--- Booting from NFS root ---
--- Booting from NFS root / kernel via TFTP ---
Load the kernel, and boot the system as follows:

View File

@@ -23,373 +23,22 @@
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys, logging
import sys
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)),
'lib'))
import optparse
import warnings
from traceback import format_exception
try:
import bb
except RuntimeError as exc:
sys.exit(str(exc))
from bb import event
import bb.msg
from bb import cooker
from bb import ui
from bb import server
from bb import cookerdata
__version__ = "1.25.0"
logger = logging.getLogger("BitBake")
# Python multiprocessing requires /dev/shm on Linux
if sys.platform.startswith('linux') and not os.access('/dev/shm', os.W_OK | os.X_OK):
sys.exit("FATAL: /dev/shm does not exist or is not writable")
# Unbuffer stdout to avoid log truncation in the event
# of an unorderly exit as well as to provide timely
# updates to log files for use with tail
try:
if sys.stdout.name == '<stdout>':
sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
except:
pass
def get_ui(config):
if not config.ui:
# modify 'ui' attribute because it is also read by cooker
config.ui = os.environ.get('BITBAKE_UI', 'knotty')
interface = config.ui
try:
# Dynamically load the UI based on the ui name. Although we
# suggest a fixed set this allows you to have flexibility in which
# ones are available.
module = __import__("bb.ui", fromlist = [interface])
return getattr(module, interface)
except AttributeError:
sys.exit("FATAL: Invalid user interface '%s' specified.\n"
"Valid interfaces: depexp, goggle, ncurses, hob, knotty [default]." % interface)
# Display bitbake/OE warnings via the BitBake.Warnings logger, ignoring others"""
warnlog = logging.getLogger("BitBake.Warnings")
_warnings_showwarning = warnings.showwarning
def _showwarning(message, category, filename, lineno, file=None, line=None):
if file is not None:
if _warnings_showwarning is not None:
_warnings_showwarning(message, category, filename, lineno, file, line)
else:
s = warnings.formatwarning(message, category, filename, lineno)
warnlog.warn(s)
warnings.showwarning = _showwarning
warnings.filterwarnings("ignore")
warnings.filterwarnings("default", module="(<string>$|(oe|bb)\.)")
warnings.filterwarnings("ignore", category=PendingDeprecationWarning)
warnings.filterwarnings("ignore", category=ImportWarning)
warnings.filterwarnings("ignore", category=DeprecationWarning, module="<string>$")
warnings.filterwarnings("ignore", message="With-statements now directly support multiple context managers")
class BitBakeConfigParameters(cookerdata.ConfigParameters):
def parseCommandLine(self):
parser = optparse.OptionParser(
version = "BitBake Build Tool Core version %s, %%prog version %s" % (bb.__version__, __version__),
usage = """%prog [options] [recipename/target ...]
Executes the specified task (default is 'build') for a given set of target recipes (.bb files).
It is assumed there is a conf/bblayers.conf available in cwd or in BBPATH which
will provide the layer, BBFILES and other configuration information.""")
parser.add_option("-b", "--buildfile", help = "Execute tasks from a specific .bb recipe directly. WARNING: Does not handle any dependencies from other recipes.",
action = "store", dest = "buildfile", default = None)
parser.add_option("-k", "--continue", help = "Continue as much as possible after an error. While the target that failed and anything depending on it cannot be built, as much as possible will be built before stopping.",
action = "store_false", dest = "abort", default = True)
parser.add_option("-a", "--tryaltconfigs", help = "Continue with builds by trying to use alternative providers where possible.",
action = "store_true", dest = "tryaltconfigs", default = False)
parser.add_option("-f", "--force", help = "Force the specified targets/task to run (invalidating any existing stamp file).",
action = "store_true", dest = "force", default = False)
parser.add_option("-c", "--cmd", help = "Specify the task to execute. The exact options available depend on the metadata. Some examples might be 'compile' or 'populate_sysroot' or 'listtasks' may give a list of the tasks available.",
action = "store", dest = "cmd")
parser.add_option("-C", "--clear-stamp", help = "Invalidate the stamp for the specified task such as 'compile' and then run the default task for the specified target(s).",
action = "store", dest = "invalidate_stamp")
parser.add_option("-r", "--read", help = "Read the specified file before bitbake.conf.",
action = "append", dest = "prefile", default = [])
parser.add_option("-R", "--postread", help = "Read the specified file after bitbake.conf.",
action = "append", dest = "postfile", default = [])
parser.add_option("-v", "--verbose", help = "Output more log message data to the terminal.",
action = "store_true", dest = "verbose", default = False)
parser.add_option("-D", "--debug", help = "Increase the debug level. You can specify this more than once.",
action = "count", dest="debug", default = 0)
parser.add_option("-n", "--dry-run", help = "Don't execute, just go through the motions.",
action = "store_true", dest = "dry_run", default = False)
parser.add_option("-S", "--dump-signatures", help = "Dump out the signature construction information, with no task execution. The SIGNATURE_HANDLER parameter is passed to the handler. Two common values are none and printdiff but the handler may define more/less. none means only dump the signature, printdiff means compare the dumped signature with the cached one.",
action = "append", dest = "dump_signatures", default = [], metavar="SIGNATURE_HANDLER")
parser.add_option("-p", "--parse-only", help = "Quit after parsing the BB recipes.",
action = "store_true", dest = "parse_only", default = False)
parser.add_option("-s", "--show-versions", help = "Show current and preferred versions of all recipes.",
action = "store_true", dest = "show_versions", default = False)
parser.add_option("-e", "--environment", help = "Show the global or per-recipe environment complete with information about where variables were set/changed.",
action = "store_true", dest = "show_environment", default = False)
parser.add_option("-g", "--graphviz", help = "Save dependency tree information for the specified targets in the dot syntax.",
action = "store_true", dest = "dot_graph", default = False)
parser.add_option("-I", "--ignore-deps", help = """Assume these dependencies don't exist and are already provided (equivalent to ASSUME_PROVIDED). Useful to make dependency graphs more appealing""",
action = "append", dest = "extra_assume_provided", default = [])
parser.add_option("-l", "--log-domains", help = """Show debug logging for the specified logging domains""",
action = "append", dest = "debug_domains", default = [])
parser.add_option("-P", "--profile", help = "Profile the command and save reports.",
action = "store_true", dest = "profile", default = False)
parser.add_option("-u", "--ui", help = "The user interface to use (e.g. knotty, hob, depexp).",
action = "store", dest = "ui")
parser.add_option("-t", "--servertype", help = "Choose which server to use, process or xmlrpc.",
action = "store", dest = "servertype")
parser.add_option("", "--token", help = "Specify the connection token to be used when connecting to a remote server.",
action = "store", dest = "xmlrpctoken")
parser.add_option("", "--revisions-changed", help = "Set the exit code depending on whether upstream floating revisions have changed or not.",
action = "store_true", dest = "revisions_changed", default = False)
parser.add_option("", "--server-only", help = "Run bitbake without a UI, only starting a server (cooker) process.",
action = "store_true", dest = "server_only", default = False)
parser.add_option("-B", "--bind", help = "The name/address for the bitbake server to bind to.",
action = "store", dest = "bind", default = False)
parser.add_option("", "--no-setscene", help = "Do not run any setscene tasks. sstate will be ignored and everything needed, built.",
action = "store_true", dest = "nosetscene", default = False)
parser.add_option("", "--remote-server", help = "Connect to the specified server.",
action = "store", dest = "remote_server", default = False)
parser.add_option("-m", "--kill-server", help = "Terminate the remote server.",
action = "store_true", dest = "kill_server", default = False)
parser.add_option("", "--observe-only", help = "Connect to a server as an observing-only client.",
action = "store_true", dest = "observe_only", default = False)
parser.add_option("", "--status-only", help = "Check the status of the remote bitbake server.",
action = "store_true", dest = "status_only", default = False)
parser.add_option("-w", "--write-log", help = "Writes the event log of the build to a bitbake event json file. Use '' (empty string) to assign the name automatically.",
action = "store", dest = "writeeventlog")
options, targets = parser.parse_args(sys.argv)
# some environmental variables set also configuration options
if "BBSERVER" in os.environ:
options.servertype = "xmlrpc"
options.remote_server = os.environ["BBSERVER"]
if "BBTOKEN" in os.environ:
options.xmlrpctoken = os.environ["BBTOKEN"]
if "BBEVENTLOG" is os.environ:
options.writeeventlog = os.environ["BBEVENTLOG"]
# fill in proper log name if not supplied
if options.writeeventlog is not None and len(options.writeeventlog) == 0:
import datetime
options.writeeventlog = "bitbake_eventlog_%s.json" % datetime.datetime.now().strftime("%Y%m%d%H%M%S")
# if BBSERVER says to autodetect, let's do that
if options.remote_server:
[host, port] = options.remote_server.split(":", 2)
port = int(port)
# use automatic port if port set to -1, means read it from
# the bitbake.lock file; this is a bit tricky, but we always expect
# to be in the base of the build directory if we need to have a
# chance to start the server later, anyway
if port == -1:
lock_location = "./bitbake.lock"
# we try to read the address at all times; if the server is not started,
# we'll try to start it after the first connect fails, below
try:
lf = open(lock_location, 'r')
remotedef = lf.readline()
[host, port] = remotedef.split(":")
port = int(port)
lf.close()
options.remote_server = remotedef
except Exception as e:
sys.exit("Failed to read bitbake.lock (%s), invalid port" % str(e))
return options, targets[1:]
def start_server(servermodule, configParams, configuration, features):
server = servermodule.BitBakeServer()
if configParams.bind:
(host, port) = configParams.bind.split(':')
server.initServer((host, int(port)))
configuration.interface = [ server.serverImpl.host, server.serverImpl.port ]
else:
server.initServer()
configuration.interface = []
try:
configuration.setServerRegIdleCallback(server.getServerIdleCB())
cooker = bb.cooker.BBCooker(configuration, features)
server.addcooker(cooker)
server.saveConnectionDetails()
except Exception as e:
exc_info = sys.exc_info()
while hasattr(server, "event_queue"):
try:
import queue
except ImportError:
import Queue as queue
try:
event = server.event_queue.get(block=False)
except (queue.Empty, IOError):
break
if isinstance(event, logging.LogRecord):
logger.handle(event)
raise exc_info[1], None, exc_info[2]
server.detach()
return server
def main():
configParams = BitBakeConfigParameters()
configuration = cookerdata.CookerConfiguration()
configuration.setConfigParameters(configParams)
ui_module = get_ui(configParams)
# Server type can be xmlrpc or process currently, if nothing is specified,
# the default server is process
if configParams.servertype:
server_type = configParams.servertype
else:
server_type = 'process'
try:
module = __import__("bb.server", fromlist = [server_type])
servermodule = getattr(module, server_type)
except AttributeError:
sys.exit("FATAL: Invalid server type '%s' specified.\n"
"Valid interfaces: xmlrpc, process [default]." % server_type)
if configParams.server_only:
if configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '--server-only' is defined, we must set the servertype as 'xmlrpc'.\n")
if not configParams.bind:
sys.exit("FATAL: The '--server-only' option requires a name/address to bind to with the -B option.\n")
if configParams.remote_server:
sys.exit("FATAL: The '--server-only' option conflicts with %s.\n" %
("the BBSERVER environment variable" if "BBSERVER" in os.environ else "the '--remote-server' option" ))
if configParams.bind and configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
if configParams.remote_server and configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '--remote-server' is defined, we must set the servertype as 'xmlrpc'.\n")
if configParams.observe_only and (not configParams.remote_server or configParams.bind):
sys.exit("FATAL: '--observe-only' can only be used by UI clients connecting to a server.\n")
if configParams.kill_server and not configParams.remote_server:
sys.exit("FATAL: '--kill-server' can only be used to terminate a remote server")
if "BBDEBUG" in os.environ:
level = int(os.environ["BBDEBUG"])
if level > configuration.debug:
configuration.debug = level
bb.msg.init_msgconfig(configParams.verbose, configuration.debug,
configuration.debug_domains)
# Ensure logging messages get sent to the UI as events
handler = bb.event.LogHandler()
if not configParams.status_only:
# In status only mode there are no logs and no UI
logger.addHandler(handler)
# Clear away any spurious environment variables while we stoke up the cooker
cleanedvars = bb.utils.clean_environment()
featureset = []
if not configParams.server_only:
# Collect the feature set for the UI
featureset = getattr(ui_module, "featureSet", [])
if not configParams.remote_server:
# we start a server with a given configuration
server = start_server(servermodule, configParams, configuration, featureset)
bb.event.ui_queue = []
else:
# we start a stub server that is actually a XMLRPClient that connects to a real server
server = servermodule.BitBakeXMLRPCClient(configParams.observe_only, configParams.xmlrpctoken)
server.saveConnectionDetails(configParams.remote_server)
if not configParams.server_only:
try:
server_connection = server.establishConnection(featureset)
except Exception as e:
if configParams.kill_server:
sys.exit(0)
bb.fatal("Could not connect to server %s: %s" % (configParams.remote_server, str(e)))
# Restore the environment in case the UI needs it
for k in cleanedvars:
os.environ[k] = cleanedvars[k]
logger.removeHandler(handler)
if configParams.status_only:
server_connection.terminate()
sys.exit(0)
if configParams.kill_server:
server_connection.connection.terminateServer()
bb.event.ui_queue = []
sys.exit(0)
try:
return ui_module.main(server_connection.connection, server_connection.events, configParams)
finally:
bb.event.ui_queue = []
server_connection.terminate()
else:
print("Bitbake server address: %s, server port: %s" % (server.serverImpl.host, server.serverImpl.port))
return 0
return 1
from bb.main import bitbake_main, BitBakeConfigParameters
if __name__ == "__main__":
try:
ret = main()
ret = bitbake_main(BitBakeConfigParameters(sys.argv),
cookerdata.CookerConfiguration())
except bb.BBHandledException:
ret = 1
except Exception:

View File

@@ -46,6 +46,12 @@ logger = logger_create('bitbake-diffsigs')
def find_compare_task(bbhandler, pn, taskname):
""" Find the most recent signature files for the specified PN/task and compare them """
def get_hashval(siginfo):
if siginfo.endswith('.siginfo'):
return siginfo.rpartition(':')[2].partition('_')[0]
else:
return siginfo.rpartition('.')[2]
if not hasattr(bb.siggen, 'find_siginfo'):
logger.error('Metadata does not support finding signature data files')
sys.exit(1)
@@ -54,7 +60,7 @@ def find_compare_task(bbhandler, pn, taskname):
taskname = 'do_%s' % taskname
filedates = bb.siggen.find_siginfo(pn, taskname, None, bbhandler.config_data)
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-2:]
latestfiles = sorted(filedates.keys(), key=lambda f: filedates[f])[-3:]
if not latestfiles:
logger.error('No sigdata files found matching %s %s' % (pn, taskname))
sys.exit(1)
@@ -62,6 +68,16 @@ def find_compare_task(bbhandler, pn, taskname):
logger.error('Only one matching sigdata file found for the specified task (%s %s)' % (pn, taskname))
sys.exit(1)
else:
# It's possible that latestfiles contain 3 elements and the first two have the same hash value.
# In this case, we delete the second element.
# The above case is actually the most common one. Because we may have sigdata file and siginfo
# file having the same hash value. Comparing such two files makes no sense.
if len(latestfiles) == 3:
hash0 = get_hashval(latestfiles[0])
hash1 = get_hashval(latestfiles[1])
if hash0 == hash1:
latestfiles.pop(1)
# Define recursion callback
def recursecb(key, hash1, hash2):
hashes = [hash1, hash2]

View File

@@ -52,7 +52,7 @@ def logger_create(name, output=sys.stderr):
logger.setLevel(logging.INFO)
return logger
logger = logger_create('bitbake-layers')
logger = logger_create('bitbake-layers', sys.stdout)
class Commands():
@@ -501,7 +501,13 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
if len(allproviders[p]) > 1 or not show_multi_provider_only:
pref = preferred_versions[p]
preffile = bb.cache.Cache.virtualfn2realfn(pref[1])[0]
realfn = bb.cache.Cache.virtualfn2realfn(pref[1])
preffile = realfn[0]
# We only display once per recipe, we should prefer non extended versions of the
# recipe if present (so e.g. in OpenEmbedded, openssl rather than nativesdk-openssl
# which would otherwise sort first).
if realfn[1] and realfn[0] in self.bbhandler.cooker.recipecache.pkg_fn:
continue
if preffile not in preffiles:
preflayer = self.get_file_layer(preffile)
multilayer = False

View File

@@ -34,7 +34,7 @@ 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"]
DEPLOYABLE_IMAGE_TYPES = ["jffs2", "cramfs", "ext2", "ext3", "ext4", "btrfs", "squashfs", "ubi", "vmdk"]
Title = "USB Image Writer"
class DeployWindow(gtk.Window):

View File

@@ -135,7 +135,7 @@
<ulink url="http://www.mail-archive.com/yocto@yoctoproject.org/msg09379.html">Mailing List post - The BitBake equivalent of "Hello, World!"</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/">Hambedded Linux blog post - From Bitbake Hello World to an Image</ulink>
<ulink url="https://web.archive.org/web/20150325165911/http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/">Hambedded Linux blog post - From Bitbake Hello World to an Image</ulink>
</para></listitem>
</itemizedlist>
</note>
@@ -270,7 +270,7 @@
and define some key BitBake variables.
For more information on the <filename>bitbake.conf</filename>,
see
<ulink url='http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#an-overview-of-bitbakeconf'></ulink>
<ulink url='https://web.archive.org/web/20150325165911/http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#an-overview-of-bitbakeconf'></ulink>
</para>
<para>Use the following commands to create the <filename>conf</filename>
directory in the project directory:
@@ -355,7 +355,7 @@ ERROR: Unable to parse base: ParseError in configuration INHERITs: Could not inh
supporting.
For more information on the <filename>base.bbclass</filename> file,
you can look at
<ulink url='http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#tasks'></ulink>.
<ulink url='https://web.archive.org/web/20150325165911/http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#tasks'></ulink>.
</para></listitem>
<listitem><para><emphasis>Run Bitbake:</emphasis>
After making sure that the <filename>classes/base.bbclass</filename>
@@ -377,7 +377,7 @@ ERROR: Unable to parse base: ParseError in configuration INHERITs: Could not inh
Thus, this example creates and uses a layer called "mylayer".
<note>
You can find additional information on adding a layer at
<ulink url='http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#adding-an-example-layer'></ulink>.
<ulink url='https://web.archive.org/web/20150325165911/http://hambedded.org/blog/2012/11/24/from-bitbake-hello-world-to-an-image/#adding-an-example-layer'></ulink>.
</note>
</para>
<para>Minimally, you need a recipe file and a layer configuration

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.25.0"
__version__ = "1.26.0"
import sys
if sys.version_info < (2, 7, 3):

View File

@@ -38,6 +38,8 @@ import bb, bb.exceptions, bb.command
from bb import utils, data, parse, event, cache, providers, taskdata, runqueue
import Queue
import signal
import subprocess
import errno
import prserv.serv
import pyinotify
@@ -133,6 +135,19 @@ class BBCooker:
self.initConfigurationData()
self.inotify_modified_files = []
def _process_inotify_updates(server, notifier_list, abort):
for n in notifier_list:
if n.check_events(timeout=0):
# read notified events and enqeue them
n.read_events()
n.process_events()
return 1.0
self.configuration.server_register_idlecallback(_process_inotify_updates, [self.confignotifier, self.notifier])
self.baseconfig_valid = True
self.parsecache_valid = False
@@ -171,11 +186,13 @@ class BBCooker:
signal.signal(signal.SIGHUP, self.sigterm_exception)
def config_notifications(self, event):
bb.parse.update_cache(event.path)
if not event.path in self.inotify_modified_files:
self.inotify_modified_files.append(event.path)
self.baseconfig_valid = False
def notifications(self, event):
bb.parse.update_cache(event.path)
if not event.path in self.inotify_modified_files:
self.inotify_modified_files.append(event.path)
self.parsecache_valid = False
def add_filewatch(self, deps, watcher=None):
@@ -214,7 +231,7 @@ class BBCooker:
def setFeatures(self, features):
# we only accept a new feature set if we're in state initial, so we can reset without problems
if self.state != state.initial and self.state != state.error:
if not self.state in [state.initial, state.shutdown, state.forceshutdown, state.stopped, state.error]:
raise Exception("Illegal state for feature set change")
original_featureset = list(self.featureset)
for feature in features:
@@ -1419,11 +1436,12 @@ class BBCooker:
raise bb.BBHandledException()
if self.state != state.parsing:
for n in [self.confignotifier, self.notifier]:
if n.check_events(timeout=0):
# read notified events and enqeue them
n.read_events()
n.process_events()
# reload files for which we got notifications
for p in self.inotify_modified_files:
bb.parse.update_cache(p)
self.inotify_modified_files = []
if not self.baseconfig_valid:
logger.debug(1, "Reloading base configuration data")
self.initConfigurationData()
@@ -1509,6 +1527,34 @@ class BBCooker:
def post_serve(self):
prserv.serv.auto_shutdown(self.data)
bb.event.fire(CookerExit(), self.expanded_data)
lockfile = self.lock.name
self.lock.close()
self.lock = None
while not self.lock:
with bb.utils.timeout(3):
self.lock = bb.utils.lockfile(lockfile, shared=False, retry=False, block=True)
if not self.lock:
# Some systems may not have lsof available
procs = None
try:
procs = subprocess.check_output(["lsof", '-w', lockfile], stderr=subprocess.STDOUT)
except OSError as e:
if e.errno != errno.ENOENT:
raise
if procs is None:
# Fall back to fuser if lsof is unavailable
try:
procs = subprocess.check_output(["fuser", '-v', lockfile], stderr=subprocess.STDOUT)
except OSError as e:
if e.errno != errno.ENOENT:
raise
msg = "Delaying shutdown due to active processes which appear to be holding bitbake.lock"
if procs:
msg += ":\n%s" % str(procs)
print(msg)
def shutdown(self, force = False):
if force:
@@ -1557,6 +1603,7 @@ class CookerExit(bb.event.Event):
class CookerCollectFiles(object):
def __init__(self, priorities):
self.appendlist = {}
self.bbappends = []
self.appliedappendlist = []
self.bbfile_config_priorities = priorities
@@ -1651,6 +1698,7 @@ class CookerCollectFiles(object):
# Build a list of .bbappend files for each .bb file
for f in bbappend:
base = os.path.basename(f).replace('.bbappend', '.bb')
self.bbappends.append((base, f))
if not base in self.appendlist:
self.appendlist[base] = []
if f not in self.appendlist[base]:
@@ -1676,11 +1724,11 @@ class CookerCollectFiles(object):
"""
filelist = []
f = os.path.basename(fn)
for bbappend in self.appendlist:
for b in self.bbappends:
(bbappend, filename) = b
if (bbappend == f) or ('%' in bbappend and bbappend.startswith(f[:bbappend.index('%')])):
self.appliedappendlist.append(bbappend)
for filename in self.appendlist[bbappend]:
filelist.append(filename)
filelist.append(filename)
return filelist
def collection_priorities(self, pkgfns, d):
@@ -1700,10 +1748,10 @@ class CookerCollectFiles(object):
unmatched.add(regex)
def findmatch(regex):
for bbfile in self.appendlist:
for append in self.appendlist[bbfile]:
if regex.match(append):
return True
for b in self.bbappends:
(bbfile, append) = b
if regex.match(append):
return True
return False
for unmatch in unmatched.copy():

View File

@@ -33,8 +33,8 @@ logger = logging.getLogger("BitBake")
parselog = logging.getLogger("BitBake.Parsing")
class ConfigParameters(object):
def __init__(self):
self.options, targets = self.parseCommandLine()
def __init__(self, argv=sys.argv):
self.options, targets = self.parseCommandLine(argv)
self.environment = self.parseEnvironment()
self.options.pkgs_to_build = targets or []
@@ -46,7 +46,7 @@ class ConfigParameters(object):
for key, val in self.options.__dict__.items():
setattr(self, key, val)
def parseCommandLine(self):
def parseCommandLine(self, argv=sys.argv):
raise Exception("Caller must implement commandline option parsing")
def parseEnvironment(self):

View File

@@ -45,6 +45,13 @@ _checksum_cache = bb.checksum.FileChecksumCache()
logger = logging.getLogger("BitBake.Fetcher")
try:
import cPickle as pickle
except ImportError:
import pickle
logger.info("Importing cPickle failed. "
"Falling back to a very slow implementation.")
class BBFetchException(Exception):
"""Class all fetch exceptions inherit from"""
def __init__(self, message):
@@ -525,7 +532,7 @@ def fetcher_compare_revisions(d):
def mirror_from_string(data):
return [ i.split() for i in (data or "").replace('\\n','\n').split('\n') if i ]
def verify_checksum(ud, d):
def verify_checksum(ud, d, precomputed={}):
"""
verify the MD5 and SHA256 checksum for downloaded src
@@ -533,13 +540,28 @@ def verify_checksum(ud, d):
the downloaded file, or if BB_STRICT_CHECKSUM is set and there are no
checksums specified.
Returns a dict of checksums that can be stored in a done stamp file and
passed in as precomputed parameter in a later call to avoid re-computing
the checksums from the file. This allows verifying the checksums of the
file against those in the recipe each time, rather than only after
downloading. See https://bugzilla.yoctoproject.org/show_bug.cgi?id=5571.
"""
if ud.ignore_checksums or not ud.method.supports_checksum(ud):
return
_MD5_KEY = "md5"
_SHA256_KEY = "sha256"
md5data = bb.utils.md5_file(ud.localpath)
sha256data = bb.utils.sha256_file(ud.localpath)
if ud.ignore_checksums or not ud.method.supports_checksum(ud):
return {}
if _MD5_KEY in precomputed:
md5data = precomputed[_MD5_KEY]
else:
md5data = bb.utils.md5_file(ud.localpath)
if _SHA256_KEY in precomputed:
sha256data = precomputed[_SHA256_KEY]
else:
sha256data = bb.utils.sha256_file(ud.localpath)
if ud.method.recommends_checksum(ud):
# If strict checking enabled and neither sum defined, raise error
@@ -589,6 +611,72 @@ def verify_checksum(ud, d):
if len(msg):
raise ChecksumError('Checksum mismatch!%s' % msg, ud.url, md5data)
return {
_MD5_KEY: md5data,
_SHA256_KEY: sha256data
}
def verify_donestamp(ud, d):
"""
Check whether the done stamp file has the right checksums (if the fetch
method supports them). If it doesn't, delete the done stamp and force
a re-download.
Returns True, if the donestamp exists and is valid, False otherwise. When
returning False, any existing done stamps are removed.
"""
if not os.path.exists(ud.donestamp):
return False
if not ud.method.supports_checksum(ud):
# done stamp exists, checksums not supported; assume the local file is
# current
return True
if not os.path.exists(ud.localpath):
# done stamp exists, but the downloaded file does not; the done stamp
# must be incorrect, re-trigger the download
bb.utils.remove(ud.donestamp)
return False
precomputed_checksums = {}
# Only re-use the precomputed checksums if the donestamp is newer than the
# file. Do not rely on the mtime of directories, though. If ud.localpath is
# a directory, there will probably not be any checksums anyway.
if (os.path.isdir(ud.localpath) or
os.path.getmtime(ud.localpath) < os.path.getmtime(ud.donestamp)):
try:
with open(ud.donestamp, "rb") as cachefile:
pickled = pickle.Unpickler(cachefile)
precomputed_checksums.update(pickled.load())
except Exception as e:
# Avoid the warnings on the upgrade path from emtpy done stamp
# files to those containing the checksums.
if not isinstance(e, EOFError):
# Ignore errors, they aren't fatal
logger.warn("Couldn't load checksums from donestamp %s: %s "
"(msg: %s)" % (ud.donestamp, type(e).__name__,
str(e)))
try:
checksums = verify_checksum(ud, d, precomputed_checksums)
# If the cache file did not have the checksums, compute and store them
# as an upgrade path from the previous done stamp file format.
if checksums != precomputed_checksums:
with open(ud.donestamp, "wb") as cachefile:
p = pickle.Pickler(cachefile, pickle.HIGHEST_PROTOCOL)
p.dump(checksums)
return True
except ChecksumError as e:
# Checksums failed to verify, trigger re-download and remove the
# incorrect stamp file.
logger.warn("Checksum mismatch for local file %s\n"
"Cleaning and trying again." % ud.localpath)
rename_bad_checksum(ud, e.checksum)
bb.utils.remove(ud.donestamp)
return False
def update_stamp(ud, d):
"""
@@ -603,8 +691,11 @@ def update_stamp(ud, d):
# Errors aren't fatal here
pass
else:
verify_checksum(ud, d)
open(ud.donestamp, 'w').close()
checksums = verify_checksum(ud, d)
# Store the checksums for later re-verification against the recipe
with open(ud.donestamp, "wb") as cachefile:
p = pickle.Pickler(cachefile, pickle.HIGHEST_PROTOCOL)
p.dump(checksums)
def subprocess_setup():
# Python installs a SIGPIPE handler by default. This is usually not what
@@ -805,7 +896,7 @@ def try_mirror_url(origud, ud, ld, check = False):
os.chdir(ld.getVar("DL_DIR", True))
if not os.path.exists(ud.donestamp) or ud.method.need_update(ud, ld):
if not verify_donestamp(ud, ld) or ud.method.need_update(ud, ld):
ud.method.download(ud, ld)
if hasattr(ud.method,"build_mirror_data"):
ud.method.build_mirror_data(ud, ld)
@@ -821,12 +912,13 @@ def try_mirror_url(origud, ud, ld, check = False):
dldir = ld.getVar("DL_DIR", True)
if origud.mirrortarball and os.path.basename(ud.localpath) == os.path.basename(origud.mirrortarball) \
and os.path.basename(ud.localpath) != os.path.basename(origud.localpath):
# Create donestamp in old format to avoid triggering a re-download
bb.utils.mkdirhier(os.path.dirname(ud.donestamp))
open(ud.donestamp, 'w').close()
dest = os.path.join(dldir, os.path.basename(ud.localpath))
if not os.path.exists(dest):
os.symlink(ud.localpath, dest)
if not os.path.exists(origud.donestamp) or origud.method.need_update(origud, ld):
if not verify_donestamp(origud, ld) or origud.method.need_update(origud, ld):
origud.method.download(origud, ld)
if hasattr(origud.method,"build_mirror_data"):
origud.method.build_mirror_data(origud, ld)
@@ -1422,7 +1514,7 @@ class Fetch(object):
try:
self.d.setVar("BB_NO_NETWORK", network)
if os.path.exists(ud.donestamp) and not m.need_update(ud, self.d):
if verify_donestamp(ud, self.d) and not m.need_update(ud, self.d):
localpath = ud.localpath
elif m.try_premirror(ud, self.d):
logger.debug(1, "Trying PREMIRRORS")
@@ -1435,7 +1527,7 @@ class Fetch(object):
os.chdir(self.d.getVar("DL_DIR", True))
firsterr = None
if not localpath and ((not os.path.exists(ud.donestamp)) or m.need_update(ud, self.d)):
if not localpath and ((not verify_donestamp(ud, self.d)) or m.need_update(ud, self.d)):
try:
logger.debug(1, "Trying Upstream")
m.download(ud, self.d)

View File

@@ -246,7 +246,7 @@ class Git(FetchMethod):
subdir = ud.parm.get("subpath", "")
if subdir != "":
readpathspec = ":%s" % (subdir)
def_destsuffix = "%s/" % os.path.basename(subdir)
def_destsuffix = "%s/" % os.path.basename(subdir.rstrip('/'))
else:
readpathspec = ""
def_destsuffix = "git/"
@@ -395,9 +395,8 @@ class Git(FetchMethod):
return ud.revisions[name]
def checkstatus(self, ud, d):
fetchcmd = "%s ls-remote %s" % (ud.basecmd, ud.url)
try:
runfetchcmd(fetchcmd, d, quiet=True)
self._lsremote(ud, d, "")
return True
except FetchError:
return False

391
bitbake/lib/bb/main.py Executable file
View File

@@ -0,0 +1,391 @@
#!/usr/bin/env python
# ex:ts=4:sw=4:sts=4:et
# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
# Copyright (C) 2003 - 2005 Michael 'Mickey' Lauer
# Copyright (C) 2005 Holger Hans Peter Freyther
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
# 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 os
import sys
import logging
import optparse
import warnings
import bb
from bb import event
import bb.msg
from bb import cooker
from bb import ui
from bb import server
from bb import cookerdata
__version__ = "1.26.0"
logger = logging.getLogger("BitBake")
class BBMainException(bb.BBHandledException):
pass
def get_ui(config):
if not config.ui:
# modify 'ui' attribute because it is also read by cooker
config.ui = os.environ.get('BITBAKE_UI', 'knotty')
interface = config.ui
try:
# Dynamically load the UI based on the ui name. Although we
# suggest a fixed set this allows you to have flexibility in which
# ones are available.
module = __import__("bb.ui", fromlist = [interface])
return getattr(module, interface)
except AttributeError:
raise BBMainException("FATAL: Invalid user interface '%s' specified.\n"
"Valid interfaces: depexp, goggle, ncurses, hob, knotty [default]." % interface)
# Display bitbake/OE warnings via the BitBake.Warnings logger, ignoring others"""
warnlog = logging.getLogger("BitBake.Warnings")
_warnings_showwarning = warnings.showwarning
def _showwarning(message, category, filename, lineno, file=None, line=None):
if file is not None:
if _warnings_showwarning is not None:
_warnings_showwarning(message, category, filename, lineno, file, line)
else:
s = warnings.formatwarning(message, category, filename, lineno)
warnlog.warn(s)
warnings.showwarning = _showwarning
warnings.filterwarnings("ignore")
warnings.filterwarnings("default", module="(<string>$|(oe|bb)\.)")
warnings.filterwarnings("ignore", category=PendingDeprecationWarning)
warnings.filterwarnings("ignore", category=ImportWarning)
warnings.filterwarnings("ignore", category=DeprecationWarning, module="<string>$")
warnings.filterwarnings("ignore", message="With-statements now directly support multiple context managers")
class BitBakeConfigParameters(cookerdata.ConfigParameters):
def parseCommandLine(self, argv=sys.argv):
parser = optparse.OptionParser(
version = "BitBake Build Tool Core version %s, %%prog version %s" % (bb.__version__, __version__),
usage = """%prog [options] [recipename/target ...]
Executes the specified task (default is 'build') for a given set of target recipes (.bb files).
It is assumed there is a conf/bblayers.conf available in cwd or in BBPATH which
will provide the layer, BBFILES and other configuration information.""")
parser.add_option("-b", "--buildfile", help = "Execute tasks from a specific .bb recipe directly. WARNING: Does not handle any dependencies from other recipes.",
action = "store", dest = "buildfile", default = None)
parser.add_option("-k", "--continue", help = "Continue as much as possible after an error. While the target that failed and anything depending on it cannot be built, as much as possible will be built before stopping.",
action = "store_false", dest = "abort", default = True)
parser.add_option("-a", "--tryaltconfigs", help = "Continue with builds by trying to use alternative providers where possible.",
action = "store_true", dest = "tryaltconfigs", default = False)
parser.add_option("-f", "--force", help = "Force the specified targets/task to run (invalidating any existing stamp file).",
action = "store_true", dest = "force", default = False)
parser.add_option("-c", "--cmd", help = "Specify the task to execute. The exact options available depend on the metadata. Some examples might be 'compile' or 'populate_sysroot' or 'listtasks' may give a list of the tasks available.",
action = "store", dest = "cmd")
parser.add_option("-C", "--clear-stamp", help = "Invalidate the stamp for the specified task such as 'compile' and then run the default task for the specified target(s).",
action = "store", dest = "invalidate_stamp")
parser.add_option("-r", "--read", help = "Read the specified file before bitbake.conf.",
action = "append", dest = "prefile", default = [])
parser.add_option("-R", "--postread", help = "Read the specified file after bitbake.conf.",
action = "append", dest = "postfile", default = [])
parser.add_option("-v", "--verbose", help = "Output more log message data to the terminal.",
action = "store_true", dest = "verbose", default = False)
parser.add_option("-D", "--debug", help = "Increase the debug level. You can specify this more than once.",
action = "count", dest="debug", default = 0)
parser.add_option("-n", "--dry-run", help = "Don't execute, just go through the motions.",
action = "store_true", dest = "dry_run", default = False)
parser.add_option("-S", "--dump-signatures", help = "Dump out the signature construction information, with no task execution. The SIGNATURE_HANDLER parameter is passed to the handler. Two common values are none and printdiff but the handler may define more/less. none means only dump the signature, printdiff means compare the dumped signature with the cached one.",
action = "append", dest = "dump_signatures", default = [], metavar="SIGNATURE_HANDLER")
parser.add_option("-p", "--parse-only", help = "Quit after parsing the BB recipes.",
action = "store_true", dest = "parse_only", default = False)
parser.add_option("-s", "--show-versions", help = "Show current and preferred versions of all recipes.",
action = "store_true", dest = "show_versions", default = False)
parser.add_option("-e", "--environment", help = "Show the global or per-recipe environment complete with information about where variables were set/changed.",
action = "store_true", dest = "show_environment", default = False)
parser.add_option("-g", "--graphviz", help = "Save dependency tree information for the specified targets in the dot syntax.",
action = "store_true", dest = "dot_graph", default = False)
parser.add_option("-I", "--ignore-deps", help = """Assume these dependencies don't exist and are already provided (equivalent to ASSUME_PROVIDED). Useful to make dependency graphs more appealing""",
action = "append", dest = "extra_assume_provided", default = [])
parser.add_option("-l", "--log-domains", help = """Show debug logging for the specified logging domains""",
action = "append", dest = "debug_domains", default = [])
parser.add_option("-P", "--profile", help = "Profile the command and save reports.",
action = "store_true", dest = "profile", default = False)
parser.add_option("-u", "--ui", help = "The user interface to use (e.g. knotty, hob, depexp).",
action = "store", dest = "ui")
parser.add_option("-t", "--servertype", help = "Choose which server to use, process or xmlrpc.",
action = "store", dest = "servertype")
parser.add_option("", "--token", help = "Specify the connection token to be used when connecting to a remote server.",
action = "store", dest = "xmlrpctoken")
parser.add_option("", "--revisions-changed", help = "Set the exit code depending on whether upstream floating revisions have changed or not.",
action = "store_true", dest = "revisions_changed", default = False)
parser.add_option("", "--server-only", help = "Run bitbake without a UI, only starting a server (cooker) process.",
action = "store_true", dest = "server_only", default = False)
parser.add_option("-B", "--bind", help = "The name/address for the bitbake server to bind to.",
action = "store", dest = "bind", default = False)
parser.add_option("", "--no-setscene", help = "Do not run any setscene tasks. sstate will be ignored and everything needed, built.",
action = "store_true", dest = "nosetscene", default = False)
parser.add_option("", "--remote-server", help = "Connect to the specified server.",
action = "store", dest = "remote_server", default = False)
parser.add_option("-m", "--kill-server", help = "Terminate the remote server.",
action = "store_true", dest = "kill_server", default = False)
parser.add_option("", "--observe-only", help = "Connect to a server as an observing-only client.",
action = "store_true", dest = "observe_only", default = False)
parser.add_option("", "--status-only", help = "Check the status of the remote bitbake server.",
action = "store_true", dest = "status_only", default = False)
parser.add_option("-w", "--write-log", help = "Writes the event log of the build to a bitbake event json file. Use '' (empty string) to assign the name automatically.",
action = "store", dest = "writeeventlog")
options, targets = parser.parse_args(argv)
# some environmental variables set also configuration options
if "BBSERVER" in os.environ:
options.servertype = "xmlrpc"
options.remote_server = os.environ["BBSERVER"]
if "BBTOKEN" in os.environ:
options.xmlrpctoken = os.environ["BBTOKEN"]
if "BBEVENTLOG" is os.environ:
options.writeeventlog = os.environ["BBEVENTLOG"]
# fill in proper log name if not supplied
if options.writeeventlog is not None and len(options.writeeventlog) == 0:
import datetime
options.writeeventlog = "bitbake_eventlog_%s.json" % datetime.datetime.now().strftime("%Y%m%d%H%M%S")
# if BBSERVER says to autodetect, let's do that
if options.remote_server:
[host, port] = options.remote_server.split(":", 2)
port = int(port)
# use automatic port if port set to -1, means read it from
# the bitbake.lock file; this is a bit tricky, but we always expect
# to be in the base of the build directory if we need to have a
# chance to start the server later, anyway
if port == -1:
lock_location = "./bitbake.lock"
# we try to read the address at all times; if the server is not started,
# we'll try to start it after the first connect fails, below
try:
lf = open(lock_location, 'r')
remotedef = lf.readline()
[host, port] = remotedef.split(":")
port = int(port)
lf.close()
options.remote_server = remotedef
except Exception as e:
raise BBMainException("Failed to read bitbake.lock (%s), invalid port" % str(e))
return options, targets[1:]
def start_server(servermodule, configParams, configuration, features):
server = servermodule.BitBakeServer()
if configParams.bind:
(host, port) = configParams.bind.split(':')
server.initServer((host, int(port)))
configuration.interface = [ server.serverImpl.host, server.serverImpl.port ]
else:
server.initServer()
configuration.interface = []
try:
configuration.setServerRegIdleCallback(server.getServerIdleCB())
cooker = bb.cooker.BBCooker(configuration, features)
server.addcooker(cooker)
server.saveConnectionDetails()
except Exception as e:
exc_info = sys.exc_info()
while hasattr(server, "event_queue"):
try:
import queue
except ImportError:
import Queue as queue
try:
event = server.event_queue.get(block=False)
except (queue.Empty, IOError):
break
if isinstance(event, logging.LogRecord):
logger.handle(event)
raise exc_info[1], None, exc_info[2]
server.detach()
cooker.lock.close()
return server
def bitbake_main(configParams, configuration):
# Python multiprocessing requires /dev/shm on Linux
if sys.platform.startswith('linux') and not os.access('/dev/shm', os.W_OK | os.X_OK):
raise BBMainException("FATAL: /dev/shm does not exist or is not writable")
# Unbuffer stdout to avoid log truncation in the event
# of an unorderly exit as well as to provide timely
# updates to log files for use with tail
try:
if sys.stdout.name == '<stdout>':
sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
except:
pass
configuration.setConfigParameters(configParams)
ui_module = get_ui(configParams)
# Server type can be xmlrpc or process currently, if nothing is specified,
# the default server is process
if configParams.servertype:
server_type = configParams.servertype
else:
server_type = 'process'
try:
module = __import__("bb.server", fromlist = [server_type])
servermodule = getattr(module, server_type)
except AttributeError:
raise BBMainException("FATAL: Invalid server type '%s' specified.\n"
"Valid interfaces: xmlrpc, process [default]." % server_type)
if configParams.server_only:
if configParams.servertype != "xmlrpc":
raise BBMainException("FATAL: If '--server-only' is defined, we must set the "
"servertype as 'xmlrpc'.\n")
if not configParams.bind:
raise BBMainException("FATAL: The '--server-only' option requires a name/address "
"to bind to with the -B option.\n")
if configParams.remote_server:
raise BBMainException("FATAL: The '--server-only' option conflicts with %s.\n" %
("the BBSERVER environment variable" if "BBSERVER" in os.environ \
else "the '--remote-server' option" ))
if configParams.bind and configParams.servertype != "xmlrpc":
raise BBMainException("FATAL: If '-B' or '--bind' is defined, we must "
"set the servertype as 'xmlrpc'.\n")
if configParams.remote_server and configParams.servertype != "xmlrpc":
raise BBMainException("FATAL: If '--remote-server' is defined, we must "
"set the servertype as 'xmlrpc'.\n")
if configParams.observe_only and (not configParams.remote_server or configParams.bind):
raise BBMainException("FATAL: '--observe-only' can only be used by UI clients "
"connecting to a server.\n")
if configParams.kill_server and not configParams.remote_server:
raise BBMainException("FATAL: '--kill-server' can only be used to terminate a remote server")
if "BBDEBUG" in os.environ:
level = int(os.environ["BBDEBUG"])
if level > configuration.debug:
configuration.debug = level
bb.msg.init_msgconfig(configParams.verbose, configuration.debug,
configuration.debug_domains)
# Ensure logging messages get sent to the UI as events
handler = bb.event.LogHandler()
if not configParams.status_only:
# In status only mode there are no logs and no UI
logger.addHandler(handler)
# Clear away any spurious environment variables while we stoke up the cooker
cleanedvars = bb.utils.clean_environment()
featureset = []
if not configParams.server_only:
# Collect the feature set for the UI
featureset = getattr(ui_module, "featureSet", [])
if not configParams.remote_server:
# we start a server with a given configuration
server = start_server(servermodule, configParams, configuration, featureset)
bb.event.ui_queue = []
else:
# we start a stub server that is actually a XMLRPClient that connects to a real server
server = servermodule.BitBakeXMLRPCClient(configParams.observe_only, configParams.xmlrpctoken)
server.saveConnectionDetails(configParams.remote_server)
if not configParams.server_only:
try:
server_connection = server.establishConnection(featureset)
except Exception as e:
if configParams.kill_server:
return 0
bb.fatal("Could not connect to server %s: %s" % (configParams.remote_server, str(e)))
# Restore the environment in case the UI needs it
for k in cleanedvars:
os.environ[k] = cleanedvars[k]
logger.removeHandler(handler)
if configParams.status_only:
server_connection.terminate()
return 0
if configParams.kill_server:
server_connection.connection.terminateServer()
bb.event.ui_queue = []
return 0
try:
return ui_module.main(server_connection.connection, server_connection.events, configParams)
finally:
bb.event.ui_queue = []
server_connection.terminate()
else:
print("Bitbake server address: %s, server port: %s" % (server.serverImpl.host, server.serverImpl.port))
return 0
return 1

View File

@@ -1155,7 +1155,7 @@ class RunQueue:
sq_taskname.append(taskname)
sq_task.append(task)
call = self.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)"
locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.data }
locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.expanded_data }
valid = bb.utils.better_eval(call, locs)
for v in valid:
valid_new.add(sq_task[v])
@@ -1242,6 +1242,8 @@ class RunQueue:
prevh = __find_md5__.search(latestmatch).group(0)
output = bb.siggen.compare_sigfiles(latestmatch, match, recursecb)
bb.plain("\nTask %s:%s couldn't be used from the cache because:\n We need hash %s, closest matching task was %s\n " % (pn, taskname, h, prevh) + '\n '.join(output))
else:
bb.plain("Error, can't find multiple tasks at divergence point? Was there a previously run task?")
class RunQueueExecute:
@@ -1331,7 +1333,7 @@ class RunQueueExecute:
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.data }
locs = { "task" : task, "taskdata" : taskdata, "notneeded" : self.scenequeue_notneeded, "d" : self.cooker.expanded_data }
valid = bb.utils.better_eval(call, locs)
return valid
@@ -1400,7 +1402,7 @@ class RunQueueExecuteTasks(RunQueueExecute):
call = self.rq.setsceneverify + "(covered, tasknames, fnids, fns, d, invalidtasks=invalidtasks)"
call2 = self.rq.setsceneverify + "(covered, tasknames, fnids, fns, d)"
locs = { "covered" : self.rq.scenequeue_covered, "tasknames" : self.rqdata.runq_task, "fnids" : self.rqdata.runq_fnid, "fns" : self.rqdata.taskData.fn_index, "d" : self.cooker.data, "invalidtasks" : invalidtasks }
locs = { "covered" : self.rq.scenequeue_covered, "tasknames" : self.rqdata.runq_task, "fnids" : self.rqdata.runq_fnid, "fns" : self.rqdata.taskData.fn_index, "d" : self.cooker.expanded_data, "invalidtasks" : invalidtasks }
# Backwards compatibility with older versions without invalidtasks
try:
covered_remove = bb.utils.better_eval(call, locs)
@@ -1820,7 +1822,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
sq_taskname.append(taskname)
sq_task.append(task)
call = self.rq.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)"
locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.data }
locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.expanded_data }
valid = bb.utils.better_eval(call, locs)
valid_new = stamppresent

View File

@@ -135,6 +135,9 @@ class ProcessServer(Process, BaseImplServer):
nextsleep = None
elif retval is True:
nextsleep = None
elif isinstance(retval, float):
if (retval < nextsleep):
nextsleep = retval
elif nextsleep is None:
continue
else:

View File

@@ -235,12 +235,16 @@ class XMLRPCServer(SimpleXMLRPCServer, BaseImplServer):
fds = [self]
nextsleep = 0.1
for function, data in self._idlefuns.items():
retval = None
try:
retval = function(self, data, False)
if retval is False:
del self._idlefuns[function]
elif retval is True:
nextsleep = 0
elif isinstance(retval, float):
if (retval < nextsleep):
nextsleep = retval
else:
fds = fds + retval
except SystemExit:
@@ -248,6 +252,9 @@ class XMLRPCServer(SimpleXMLRPCServer, BaseImplServer):
except:
import traceback
traceback.print_exc()
if retval == None:
# the function execute failed; delete it
del self._idlefuns[function]
pass
socktimeout = self.socket.gettimeout() or nextsleep
@@ -299,6 +306,8 @@ class BitBakeXMLRPCServerConnection(BitBakeBaseServerConnection):
_, error = self.connection.runCommand(["setFeatures", self.featureset])
if error:
# disconnect the client, we can't make the setFeature work
self.connection.removeClient()
# no need to log it here, the error shall be sent to the client
raise BaseException(error)

View File

@@ -315,6 +315,7 @@ class URITest(unittest.TestCase):
class FetcherTest(unittest.TestCase):
def setUp(self):
self.origdir = os.getcwd()
self.d = bb.data.init()
self.tempdir = tempfile.mkdtemp()
self.dldir = os.path.join(self.tempdir, "download")
@@ -326,6 +327,7 @@ class FetcherTest(unittest.TestCase):
self.d.setVar("PERSISTENT_DIR", persistdir)
def tearDown(self):
os.chdir(self.origdir)
bb.utils.prunedir(self.tempdir)
class MirrorUriTest(FetcherTest):
@@ -618,8 +620,8 @@ class FetchMethodTest(FetcherTest):
: "5.0",
("xserver-xorg", "http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-1.15.1.tar.bz2", "", "")
: "1.15.1",
# packages with valid REGEX_URI and REGEX
("cups", "http://www.cups.org/software/1.7.2/cups-1.7.2-source.tar.bz2", "http://www.cups.org/software.php", "(?P<name>cups\-)(?P<pver>((\d+[\.\-_]*)+))\-source\.tar\.gz")
# packages with valid UPSTREAM_CHECK_URI and UPSTREAM_CHECK_REGEX
("cups", "http://www.cups.org/software/1.7.2/cups-1.7.2-source.tar.bz2", "https://github.com/apple/cups/releases", "(?P<name>cups\-)(?P<pver>((\d+[\.\-_]*)+))\-source\.tar\.gz")
: "2.0.0",
("db", "http://download.oracle.com/berkeley-db/db-5.3.21.tar.gz", "http://www.oracle.com/technetwork/products/berkeleydb/downloads/index-082944.html", "http://download.oracle.com/otn/berkeley-db/(?P<name>db-)(?P<pver>((\d+[\.\-_]*)+))\.tar\.gz")
: "6.1.19",

View File

@@ -21,6 +21,7 @@
import unittest
import bb
import os
class VerCmpString(unittest.TestCase):
@@ -88,3 +89,19 @@ class VerCmpString(unittest.TestCase):
# Check that clearly invalid operator raises an exception
self.assertRaises(bb.utils.VersionStringException, bb.utils.vercmp_string_op, '0', '0', '$')
class Path(unittest.TestCase):
def test_unsafe_delete_path(self):
checkitems = [('/', True),
('//', True),
('///', True),
(os.getcwd().count(os.sep) * ('..' + os.sep), True),
(os.environ.get('HOME', '/home/test'), True),
('/home/someone', True),
('/home/other/', True),
('/home/other/subdir', False),
('', False)]
for arg1, correctresult in checkitems:
result = bb.utils._check_unsafe_delete_path(arg1)
self.assertEqual(result, correctresult, '_check_unsafe_delete_path("%s") != %s' % (arg1, correctresult))

View File

@@ -84,13 +84,18 @@ class Tinfoil:
else:
self.parseRecipes()
def shutdown(self):
self.cooker.shutdown(force=True)
self.cooker.post_serve()
self.cooker.unlockBitbake()
class TinfoilConfigParameters(ConfigParameters):
def __init__(self, **options):
self.initial_options = options
super(TinfoilConfigParameters, self).__init__()
def parseCommandLine(self):
def parseCommandLine(self, argv=sys.argv):
class DummyOptions:
def __init__(self, initial_options):
for key, val in initial_options.items():

View File

@@ -33,6 +33,7 @@ from toaster.orm.models import Task_Dependency, Package_Dependency
from toaster.orm.models import Recipe_Dependency
from bb.msg import BBLogFormatter as format
from django.db import models
from pprint import pformat
import logging
from django.db import transaction, connection
@@ -221,6 +222,9 @@ class ORMWrapper(object):
assert 'layer_version' in recipe_information
assert 'file_path' in recipe_information
if recipe_information['file_path'].startswith(recipe_information['layer_version'].layer.local_path):
recipe_information['file_path'] = recipe_information['file_path'][len(recipe_information['layer_version'].layer.local_path):].lstrip("/")
recipe_object, created = self._cached_get_or_create(Recipe, layer_version=recipe_information['layer_version'],
file_path=recipe_information['file_path'])
if created and must_exist:
@@ -270,15 +274,34 @@ class ORMWrapper(object):
else:
# we are under managed mode; we must match the layer used in the Project Layer
from bldcontrol.models import BuildEnvironment, BuildRequest
br, be = brbe.split(":")
br_id, be_id = brbe.split(":")
buildrequest = BuildRequest.objects.get(pk = br)
# find layer by checkout path;
from bldcontrol import bbcontroller
bc = bbcontroller.getBuildEnvironmentController(pk = be_id)
# we might have a race condition here, as the project layers may change between the build trigger and the actual build execution
# but we can only match on the layer name, so the worst thing can happen is a mis-identification of the layer, not a total failure
layer_object = buildrequest.project.projectlayer_set.get(layercommit__layer__name=layer_information['name']).layercommit.layer
return layer_object
# note that this is different
buildrequest = BuildRequest.objects.get(pk = br_id)
for brl in buildrequest.brlayer_set.all():
localdirname = os.path.join(bc.getGitCloneDirectory(brl.giturl, brl.commit), brl.dirpath)
# we get a relative path, unless running in HEAD mode where the path is absolute
if not localdirname.startswith("/"):
localdirname = os.path.join(bc.be.sourcedir, localdirname)
#logger.debug(1, "Localdirname %s lcal_path %s" % (localdirname, layer_information['local_path']))
if localdirname.startswith(layer_information['local_path']):
# we matched the BRLayer, but we need the layer_version that generated this BR; reverse of the Project.schedule_build()
#logger.debug(1, "Matched %s to BRlayer %s" % (pformat(layer_information["local_path"]), localdirname))
for pl in buildrequest.project.projectlayer_set.filter(layercommit__layer__name = brl.name):
if pl.layercommit.layer.vcs_url == brl.giturl :
layer = pl.layercommit.layer
layer.local_path = layer_information['local_path']
layer.save()
return layer
raise NotExisting("Unidentified layer %s" % pformat(layer_information))
def save_target_file_information(self, build_obj, target_obj, filedata):
@@ -396,6 +419,11 @@ class ORMWrapper(object):
errormsg = ""
for p in packagedict:
searchname = p
if p not in pkgpnmap:
logger.warning("Image packages list contains %p, but is"
" missing from all packages list where the"
" metadata comes from. Skipping...", p)
continue
if 'OPKGN' in pkgpnmap[p].keys():
searchname = pkgpnmap[p]['OPKGN']
@@ -439,16 +467,23 @@ class ORMWrapper(object):
elif deptype == 'recommends':
tdeptype = Package_Dependency.TYPE_TRECOMMENDS
packagedeps_objs.append(Package_Dependency( package = packagedict[p]['object'],
depends_on = packagedict[px]['object'],
dep_type = tdeptype,
target = target_obj))
try:
packagedeps_objs.append(Package_Dependency(
package = packagedict[p]['object'],
depends_on = packagedict[px]['object'],
dep_type = tdeptype,
target = target_obj))
except KeyError as e:
logger.warn("Could not add dependency to the package %s "
"because %s is an unknown package", p, px)
if len(packagedeps_objs) > 0:
Package_Dependency.objects.bulk_create(packagedeps_objs)
else:
logger.info("No package dependencies created")
if (len(errormsg) > 0):
raise Exception(errormsg)
logger.warn("buildinfohelper: target_package_info could not identify recipes: \n%s" % errormsg)
def save_target_image_file_information(self, target_obj, file_name, file_size):
target_image_file = Target_Image_File.objects.create( target = target_obj,
@@ -683,7 +718,10 @@ class BuildInfoHelper(object):
# Heuristics: we match the path to where the layers have been checked out
for brl in sorted(BuildRequest.objects.get(pk = br_id).brlayer_set.all(), reverse = True, key = _slkey_managed):
localdirname = os.path.join(os.path.join(bc.be.sourcedir, bc.getGitCloneDirectory(brl.giturl, brl.commit)), brl.dirpath)
localdirname = os.path.join(bc.getGitCloneDirectory(brl.giturl, brl.commit), brl.dirpath)
# we get a relative path, unless running in HEAD mode where the path is absolute
if not localdirname.startswith("/"):
localdirname = os.path.join(bc.be.sourcedir, localdirname)
if path.startswith(localdirname):
#logger.warn("-- managed: matched path %s with layer %s " % (path, localdirname))
# we matched the BRLayer, but we need the layer_version that generated this br
@@ -756,7 +794,10 @@ class BuildInfoHelper(object):
layerinfos = BuildInfoHelper._get_data_from_event(event)
self.internal_state['lvs'] = {}
for layer in layerinfos:
self.internal_state['lvs'][self.orm_wrapper.get_update_layer_object(layerinfos[layer], self.brbe)] = layerinfos[layer]['version']
try:
self.internal_state['lvs'][self.orm_wrapper.get_update_layer_object(layerinfos[layer], self.brbe)] = layerinfos[layer]['version']
except NotExisting as nee:
logger.warn("buildinfohelper: cannot identify layer exception:%s " % nee)
def store_started_build(self, event):
@@ -866,9 +907,16 @@ class BuildInfoHelper(object):
assert localfilepath.startswith("/")
recipe_information = self._get_recipe_information_from_taskfile(taskfile)
recipe_object = Recipe.objects.get(layer_version = recipe_information['layer_version'],
try:
if recipe_information['file_path'].startswith(recipe_information['layer_version'].layer.local_path):
recipe_information['file_path'] = recipe_information['file_path'][len(recipe_information['layer_version'].layer.local_path):].lstrip("/")
recipe_object = Recipe.objects.get(layer_version = recipe_information['layer_version'],
file_path__endswith = recipe_information['file_path'],
name = recipename)
except Recipe.DoesNotExist:
logger.error("Could not find recipe for recipe_information %s name %s" % (pformat(recipe_information), recipename))
raise
task_information = {}
task_information['build'] = self.internal_state['build']
@@ -979,17 +1027,21 @@ class BuildInfoHelper(object):
# for all image targets
for target in self.internal_state['targets']:
if target.is_image:
pkgdata = BuildInfoHelper._get_data_from_event(event)['pkgdata']
imgdata = BuildInfoHelper._get_data_from_event(event)['imgdata'][target.target]
filedata = BuildInfoHelper._get_data_from_event(event)['filedata'][target.target]
try:
pkgdata = BuildInfoHelper._get_data_from_event(event)['pkgdata']
imgdata = BuildInfoHelper._get_data_from_event(event)['imgdata'][target.target]
self.orm_wrapper.save_target_package_information(self.internal_state['build'], target, imgdata, pkgdata, self.internal_state['recipes'])
filedata = BuildInfoHelper._get_data_from_event(event)['filedata'][target.target]
except KeyError as e:
logger.warn("KeyError in save_target_package_information"
"%s ", e)
try:
self.orm_wrapper.save_target_file_information(self.internal_state['build'], target, filedata)
except KeyError:
# we must have not got the data for this image, nothing to save
pass
except KeyError as e:
logger.warn("KeyError in save_target_file_information"
"%s ", e)
def store_dependency_information(self, event):
assert '_depgraph' in vars(event)
@@ -1108,7 +1160,7 @@ class BuildInfoHelper(object):
Task_Dependency.objects.bulk_create(taskdeps_objects)
if (len(errormsg) > 0):
raise Exception(errormsg)
logger.warn("buildinfohelper: dependency info not identify recipes: \n%s" % errormsg)
def store_build_package_information(self, event):

View File

@@ -271,7 +271,7 @@ def main(server, eventHandler, params, tf = TerminalFilter):
server.terminateServer()
return
if consolelogfile and not params.options.show_environment:
if consolelogfile and not params.options.show_environment and not params.options.show_versions:
bb.utils.mkdirhier(os.path.dirname(consolelogfile))
conlogformat = bb.msg.BBLogFormatter(format_str)
consolelog = logging.FileHandler(consolelogfile)
@@ -536,24 +536,29 @@ def main(server, eventHandler, params, tf = TerminalFilter):
if not params.observe_only:
_, error = server.runCommand(["stateForceShutdown"])
main.shutdown = 2
summary = ""
if taskfailures:
summary += pluralise("\nSummary: %s task failed:",
"\nSummary: %s tasks failed:", len(taskfailures))
for failure in taskfailures:
summary += "\n %s" % failure
if warnings:
summary += pluralise("\nSummary: There was %s WARNING message shown.",
"\nSummary: There were %s WARNING messages shown.", warnings)
if return_value and errors:
summary += pluralise("\nSummary: There was %s ERROR message shown, returning a non-zero exit code.",
"\nSummary: There were %s ERROR messages shown, returning a non-zero exit code.", errors)
if summary:
print(summary)
try:
summary = ""
if taskfailures:
summary += pluralise("\nSummary: %s task failed:",
"\nSummary: %s tasks failed:", len(taskfailures))
for failure in taskfailures:
summary += "\n %s" % failure
if warnings:
summary += pluralise("\nSummary: There was %s WARNING message shown.",
"\nSummary: There were %s WARNING messages shown.", warnings)
if return_value and errors:
summary += pluralise("\nSummary: There was %s ERROR message shown, returning a non-zero exit code.",
"\nSummary: There were %s ERROR messages shown, returning a non-zero exit code.", errors)
if summary:
print(summary)
if interrupted:
print("Execution was interrupted, returning a non-zero exit code.")
if return_value == 0:
return_value = 1
if interrupted:
print("Execution was interrupted, returning a non-zero exit code.")
if return_value == 0:
return_value = 1
except IOError as e:
import errno
if e.errno == errno.EPIPE:
pass
return return_value

View File

@@ -41,7 +41,7 @@ import sys
import time
import xmlrpclib
featureSet = [bb.cooker.CookerFeatures.HOB_EXTRA_CACHES, bb.cooker.CookerFeatures.SEND_DEPENDS_TREE, bb.cooker.CookerFeatures.BASEDATASTORE_TRACKING]
featureSet = [bb.cooker.CookerFeatures.HOB_EXTRA_CACHES, bb.cooker.CookerFeatures.SEND_DEPENDS_TREE, bb.cooker.CookerFeatures.BASEDATASTORE_TRACKING, bb.cooker.CookerFeatures.SEND_SANITYEVENTS]
logger = logging.getLogger("BitBake")
interactive = sys.stdout.isatty()
@@ -327,9 +327,17 @@ def main(server, eventHandler, params ):
except Exception as e:
# print errors to log
import traceback
from pprint import pformat
exception_data = traceback.format_exc()
logger.error("%s\n%s" % (e, exception_data))
exc_type, exc_value, tb = sys.exc_info()
if tb is not None:
curr = tb
while curr is not None:
logger.warn("Error data dump %s\n%s\n" % (traceback.format_tb(curr,1), pformat(curr.tb_frame.f_locals)))
curr = curr.tb_next
# save them to database, if possible; if it fails, we already logged to console.
try:
buildinfohelper.store_log_exception("%s\n%s" % (str(e), exception_data))

View File

@@ -106,7 +106,12 @@ class BBUIEventQueue:
self.server.timeout = 1
while not self.server.quit:
self.server.handle_request()
try:
self.server.handle_request()
except Exception as e:
import traceback
logger.error("BBUIEventQueue.startCallbackHandler: Exception while trying to handle request: %s\n%s" % (e, traceback.format_exc(e)))
self.server.server_close()
def system_quit( self ):

View File

@@ -31,6 +31,7 @@ import subprocess
import glob
import traceback
import errno
import signal
from commands import getstatusoutput
from contextlib import contextmanager
@@ -412,10 +413,30 @@ def fileslocked(files):
for lock in locks:
bb.utils.unlockfile(lock)
def lockfile(name, shared=False, retry=True):
@contextmanager
def timeout(seconds):
def timeout_handler(signum, frame):
pass
original_handler = signal.signal(signal.SIGALRM, timeout_handler)
try:
signal.alarm(seconds)
yield
finally:
signal.alarm(0)
signal.signal(signal.SIGALRM, original_handler)
def lockfile(name, shared=False, retry=True, block=False):
"""
Use the file fn as a lock file, return when the lock has been acquired.
Returns a variable to pass to unlockfile().
Use the specified file as a lock file, return when the lock has
been acquired. Returns a variable to pass to unlockfile().
Parameters:
retry: True to re-try locking if it fails, False otherwise
block: True to block until the lock succeeds, False otherwise
The retry and block parameters are kind of equivalent unless you
consider the possibility of sending a signal to the process to break
out - at which point you want block=True rather than retry=True.
"""
dirname = os.path.dirname(name)
mkdirhier(dirname)
@@ -428,7 +449,7 @@ def lockfile(name, shared=False, retry=True):
op = fcntl.LOCK_EX
if shared:
op = fcntl.LOCK_SH
if not retry:
if not retry and not block:
op = op | fcntl.LOCK_NB
while True:
@@ -601,11 +622,30 @@ def build_environment(d):
if export:
os.environ[var] = d.getVar(var, True) or ""
def _check_unsafe_delete_path(path):
"""
Basic safeguard against recursively deleting something we shouldn't. If it returns True,
the caller should raise an exception with an appropriate message.
NOTE: This is NOT meant to be a security mechanism - just a guard against silly mistakes
with potentially disastrous results.
"""
extra = ''
# HOME might not be /home/something, so in case we can get it, check against it
homedir = os.environ.get('HOME', '')
if homedir:
extra = '|%s' % homedir
if re.match('(/|//|/home|/home/[^/]*%s)$' % extra, os.path.abspath(path)):
return True
return False
def remove(path, recurse=False):
"""Equivalent to rm -f or rm -rf"""
if not path:
return
if recurse:
for name in glob.glob(path):
if _check_unsafe_delete_path(path):
raise Exception('bb.utils.remove: called with dangerous path "%s" and recurse=True, refusing to delete!' % path)
# shutil.rmtree(name) would be ideal but its too slow
subprocess.call(['rm', '-rf'] + glob.glob(path))
return
@@ -619,6 +659,8 @@ def remove(path, recurse=False):
def prunedir(topdir):
# Delete everything reachable from the directory named in 'topdir'.
# CAUTION: This is dangerous!
if _check_unsafe_delete_path(topdir):
raise Exception('bb.utils.prunedir: called with dangerous path "%s", refusing to delete!' % topdir)
for root, dirs, files in os.walk(topdir, topdown = False):
for name in files:
os.remove(os.path.join(root, name))
@@ -953,6 +995,7 @@ def edit_metadata_file(meta_file, variables, func):
updated = False
varset_start = ''
varlines = []
newlines = []
in_var = None
full_value = ''
@@ -980,14 +1023,19 @@ def edit_metadata_file(meta_file, variables, func):
else:
newlines.append('%s "%s"\n' % (varset_start, newvalue))
return True
return False
else:
# Put the old lines back where they were
newlines.extend(varlines)
return False
with open(meta_file, 'r') as f:
for line in f:
if in_var:
value = line.rstrip()
varlines.append(line)
full_value += value[:-1]
if value.endswith('"') or value.endswith("'"):
full_value = full_value[:-1]
if handle_var_end():
updated = True
in_var = None
@@ -1001,11 +1049,13 @@ def edit_metadata_file(meta_file, variables, func):
if value.endswith('\\'):
value = value[:-1]
full_value = value
varlines = [line]
in_var = varname
if value.endswith('"') or value.endswith("'"):
full_value = full_value[:-1]
if handle_var_end():
updated = True
else:
in_var = varname
in_var = None
matched = True
break
if not matched:
@@ -1076,3 +1126,19 @@ def edit_bblayers_conf(bblayers_conf, add, remove):
return (notadded, notremoved)
def get_file_layer(filename, d):
"""Determine the collection (as defined by a layer's layer.conf file) containing the specified file"""
collections = (d.getVar('BBFILE_COLLECTIONS', True) or '').split()
collection_res = {}
for collection in collections:
collection_res[collection] = d.getVar('BBFILE_PATTERN_%s' % collection, True) or ''
# Use longest path so we handle nested layers
matchlen = 0
match = None
for collection, regex in collection_res.iteritems():
if len(regex) > matchlen and re.match(regex, filename):
matchlen = len(regex)
match = collection
return match

View File

@@ -11,7 +11,14 @@ from bs4.builder import (
)
from bs4.element import NamespacedAttribute
import html5lib
try:
# html5lib >= 0.99999999/1.0b9
from html5lib.treebuilders import base as treebuildersbase
except ImportError:
# html5lib <= 0.9999999/1.0b8
from html5lib.treebuilders import _base as treebuildersbase
from html5lib.constants import namespaces
from bs4.element import (
Comment,
Doctype,
@@ -54,7 +61,7 @@ class HTML5TreeBuilder(HTMLTreeBuilder):
return u'<html><head></head><body>%s</body></html>' % fragment
class TreeBuilderForHtml5lib(html5lib.treebuilders._base.TreeBuilder):
class TreeBuilderForHtml5lib(treebuildersbase.TreeBuilder):
def __init__(self, soup, namespaceHTMLElements):
self.soup = soup
@@ -92,7 +99,7 @@ class TreeBuilderForHtml5lib(html5lib.treebuilders._base.TreeBuilder):
return self.soup
def getFragment(self):
return html5lib.treebuilders._base.TreeBuilder.getFragment(self).element
return treebuildersbase.TreeBuilder.getFragment(self).element
class AttrList(object):
def __init__(self, element):
@@ -115,9 +122,9 @@ class AttrList(object):
return name in list(self.attrs.keys())
class Element(html5lib.treebuilders._base.Node):
class Element(treebuildersbase.Node):
def __init__(self, element, soup, namespace):
html5lib.treebuilders._base.Node.__init__(self, element.name)
treebuildersbase.Node.__init__(self, element.name)
self.element = element
self.soup = soup
self.namespace = namespace
@@ -277,7 +284,7 @@ class Element(html5lib.treebuilders._base.Node):
class TextNode(Element):
def __init__(self, element, soup):
html5lib.treebuilders._base.Node.__init__(self, None)
treebuildersbase.Node.__init__(self, None)
self.element = element
self.soup = soup

View File

@@ -82,6 +82,8 @@ class LocalhostBEController(BuildEnvironmentController):
assert self.pokydirname and os.path.exists(self.pokydirname)
self._createdirpath(self.be.builddir)
self._shellcmd("bash -c \"source %s/oe-init-build-env %s\"" % (self.pokydirname, self.be.builddir))
# delete the templateconf.cfg; it may come from an unsupported layer configuration
os.remove(os.path.join(self.be.builddir, "conf/templateconf.cfg"))
def writeConfFile(self, file_name, variable_list = None, raw = None):
@@ -115,9 +117,10 @@ class LocalhostBEController(BuildEnvironmentController):
f.seek(0, 2) # jump to the end
toaster_ui_log_filelength = f.tell()
cmd = "bash -c \"source %s/oe-init-build-env %s && bitbake --read conf/toaster-pre.conf --postread conf/toaster.conf --server-only -t xmlrpc -B 0.0.0.0:0 >toaster_server.log && DATABASE_URL=%s BBSERVER=0.0.0.0:-1 daemon -d -i -D %s -o toaster_ui.log -- %s --observe-only -u toasterui &\"" % (self.pokydirname, self.be.builddir,
cmd = "bash -c \"source %s/oe-init-build-env %s 2>&1 >toaster_server.log && bitbake --read conf/toaster-pre.conf --postread conf/toaster.conf --server-only -t xmlrpc -B 0.0.0.0:0 2>&1 >toaster_server.log && DATABASE_URL=%s BBSERVER=0.0.0.0:-1 daemon -d -i -D %s -o toaster_ui.log -- %s --observe-only -u toasterui &\"" % (self.pokydirname, self.be.builddir,
self.dburl, self.be.builddir, own_bitbake)
port = "-1"
logger.debug("localhostbecontroller: starting builder \n%s\n" % cmd)
cmdoutput = self._shellcmd(cmd)
for i in cmdoutput.split("\n"):
if i.startswith("Bitbake server address"):
@@ -144,7 +147,8 @@ class LocalhostBEController(BuildEnvironmentController):
retries += 1
if not started:
raise BuildSetupException("localhostbecontroller: Bitbake server did not start in 5 seconds, aborting (Error: '%s')" % (cmdoutput))
toaster_server_log = open(os.path.join(self.be.builddir, "toaster_server.log"), "r").read()
raise BuildSetupException("localhostbecontroller: Bitbake server did not start in 5 seconds, aborting (Error: '%s' '%s')" % (cmdoutput, toaster_server_log))
logger.debug("localhostbecontroller: Started bitbake server")

View File

@@ -39,40 +39,6 @@ class BuildEnvironment(models.Model):
created = models.DateTimeField(auto_now_add = True)
updated = models.DateTimeField(auto_now = True)
def get_artifact_type(self, path):
if self.betype == BuildEnvironment.TYPE_LOCAL:
try:
import magic
# fair warning: this is a mess; there are multiple competeing and incompatible
# magic modules floating around, so we try some of the most common combinations
try: # we try ubuntu's python-magic 5.4
m = magic.open(magic.MAGIC_MIME_TYPE)
m.load()
return m.file(path)
except AttributeError:
pass
try: # we try python-magic 0.4.6
m = magic.Magic(magic.MAGIC_MIME)
return m.from_file(path)
except AttributeError:
pass
try: # we try pip filemagic 1.6
m = magic.Magic(flags=magic.MAGIC_MIME_TYPE)
return m.id_filename(path)
except AttributeError:
pass
return "binary/octet-stream"
except ImportError:
return "binary/octet-stream"
raise Exception("FIXME: artifact type not implemented for build environment type %s" % be.get_betype_display())
def get_artifact(self, path):
if self.betype == BuildEnvironment.TYPE_LOCAL:
return open(path, "r")

View File

@@ -13,7 +13,10 @@ import json, os, re, urllib, shlex
class Tests(TestCase):
fixtures = ['orm_views_testdata.json']
# fixtures = ['orm_views_testdata.json']
def setUp(self):
raise Exception("The %s test data is not longer valid, tests disabled" % __name__)
def test_builds(self):
client = Client()

File diff suppressed because one or more lines are too long

View File

@@ -52,7 +52,7 @@ class ToasterSetting(models.Model):
value = models.CharField(max_length=255)
def __unicode__(self):
return "Setting %s" % self.name
return "Setting %s = " % (self.name, self.value)
class ProjectManager(models.Manager):
def create_project(self, name, release):
@@ -100,7 +100,7 @@ class Project(models.Model):
objects = ProjectManager()
def __unicode__(self):
return "%s (%s, %s)" % (self.name, self.release, self.bitbake_version)
return "%s (Release %s, BBV %s)" % (self.name, self.release, self.bitbake_version)
def get_current_machine_name(self):
try:
@@ -182,7 +182,7 @@ class Project(models.Model):
# returns a set of layer-equivalent set of layers already in project
def projectlayer_equivalent_set(self):
return [j for i in [x.layercommit.get_equivalents_wpriority(self) for x in self.projectlayer_set.all()] for j in i]
return [j for i in [x.layercommit.get_equivalents_wpriority(self) for x in self.projectlayer_set.all().select_related("up_branch")] for j in i]
def schedule_build(self):
from bldcontrol.models import BuildRequest, BRTarget, BRLayer, BRVariable, BRBitbake
@@ -195,14 +195,8 @@ class Project(models.Model):
dirpath = self.bitbake_version.dirpath)
for l in self.projectlayer_set.all().order_by("pk"):
commit = l.layercommit.commit
print("ii Building layer ", l.layercommit.layer.name, " at commit ", commit)
if l.layercommit.up_branch:
commit = l.layercommit.up_branch.name
print("ii Building layer ", l.layercommit.layer.name, " at upbranch ", commit)
if l.layercommit.branch:
commit = l.layercommit.branch
print("ii Building layer ", l.layercommit.layer.name, " at actual_branch ", commit)
commit = l.layercommit.get_vcs_reference()
print("ii Building layer ", l.layercommit.layer.name, " at vcs point ", commit)
BRLayer.objects.create(req = br, name = l.layercommit.layer.name, giturl = l.layercommit.layer.vcs_url, commit = commit, dirpath = l.layercommit.dirpath)
for t in self.projecttarget_set.all():
BRTarget.objects.create(req = br, target = t.target, task = t.task)
@@ -534,7 +528,7 @@ class Package_File(models.Model):
size = models.IntegerField()
class Recipe(models.Model):
search_allowed_fields = ['name', 'version', 'file_path', 'section', 'description', 'license', 'layer_version__layer__name', 'layer_version__branch', 'layer_version__commit', 'layer_version__layer__local_path', 'layer_version__layer_source__name']
search_allowed_fields = ['name', 'version', 'file_path', 'section', 'summary', 'description', 'license', 'layer_version__layer__name', 'layer_version__branch', 'layer_version__commit', 'layer_version__layer__local_path', 'layer_version__layer_source__name']
layer_source = models.ForeignKey('LayerSource', default = None, null = True) # from where did we get this recipe
up_id = models.IntegerField(null = True, default = None) # id of entry in the source
@@ -551,11 +545,6 @@ class Recipe(models.Model):
bugtracker = models.URLField(blank=True)
file_path = models.FilePathField(max_length=255)
def get_vcs_link_url(self):
if self.layer_version.layer.vcs_web_file_base_url is None:
return ""
return self.layer_version.layer.vcs_web_file_base_url.replace('%path%', self.file_path).replace('%branch%', self.layer_version.up_branch.name)
def get_layersource_view_url(self):
if self.layer_source is None:
return ""
@@ -714,8 +703,6 @@ class LayerIndexLayerSource(LayerSource):
self.sourcetype = LayerSource.TYPE_LAYERINDEX
def get_object_view(self, branch, objectype, upid):
if self != branch.layer_source:
raise Exception("Invalid branch specification")
return self.apiurl + "../branch/" + branch.name + "/" + objectype + "/?q=" + str(upid)
def update(self):
@@ -724,7 +711,7 @@ class LayerIndexLayerSource(LayerSource):
"""
assert self.apiurl is not None
from django.db import IntegrityError
from django.db import transaction
from django.db import transaction, connection
import httplib, urlparse, json
import os
@@ -789,7 +776,8 @@ class LayerIndexLayerSource(LayerSource):
# update layers
layers_info = _get_json_response(apilinks['layerItems'])
transaction.set_autocommit(False)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(False)
for li in layers_info:
l, created = Layer.objects.get_or_create(layer_source = self, name = li['name'])
l.up_id = li['id']
@@ -801,7 +789,8 @@ class LayerIndexLayerSource(LayerSource):
l.summary = li['summary']
l.description = li['description']
l.save()
transaction.set_autocommit(True)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(True)
# update layerbranches/layer_versions
print "Fetching layer information"
@@ -809,7 +798,8 @@ class LayerIndexLayerSource(LayerSource):
+ "?filter=branch:%s" % "OR".join(map(lambda x: str(x.up_id), [i for i in Branch.objects.filter(layer_source = self) if i.up_id is not None] ))
)
transaction.set_autocommit(False)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(False)
for lbi in layerbranches_info:
lv, created = Layer_Version.objects.get_or_create(layer_source = self,
up_id = lbi['id'],
@@ -822,12 +812,14 @@ class LayerIndexLayerSource(LayerSource):
lv.commit = lbi['actual_branch']
lv.dirpath = lbi['vcs_subdir']
lv.save()
transaction.set_autocommit(True)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(True)
# update layer dependencies
layerdependencies_info = _get_json_response(apilinks['layerDependencies'])
dependlist = {}
transaction.set_autocommit(False)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(False)
for ldi in layerdependencies_info:
try:
lv = Layer_Version.objects.get(layer_source = self, up_id = ldi['layerbranch'])
@@ -846,7 +838,8 @@ class LayerIndexLayerSource(LayerSource):
LayerVersionDependency.objects.filter(layer_version = lv).delete()
for lvd in dependlist[lv]:
LayerVersionDependency.objects.get_or_create(layer_version = lv, depends_on = lvd)
transaction.set_autocommit(True)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(True)
# update machines
@@ -854,21 +847,26 @@ class LayerIndexLayerSource(LayerSource):
machines_info = _get_json_response(apilinks['machines']
+ "?filter=layerbranch:%s" % "OR".join(map(lambda x: str(x.up_id), Layer_Version.objects.filter(layer_source = self)))
)
transaction.set_autocommit(False)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(False)
for mi in machines_info:
mo, created = Machine.objects.get_or_create(layer_source = self, up_id = mi['id'], layer_version = Layer_Version.objects.get(layer_source = self, up_id = mi['layerbranch']))
mo.up_date = mi['updated']
mo.name = mi['name']
mo.description = mi['description']
mo.save()
transaction.set_autocommit(True)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(True)
# update recipes; paginate by layer version / layer branch
print "Fetching target information"
recipes_info = _get_json_response(apilinks['recipes']
+ "?filter=layerbranch:%s" % "OR".join(map(lambda x: str(x.up_id), Layer_Version.objects.filter(layer_source = self)))
)
transaction.set_autocommit(False)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(False)
for ri in recipes_info:
try:
ro, created = Recipe.objects.get_or_create(layer_source = self, up_id = ri['id'], layer_version = Layer_Version.objects.get(layer_source = self, up_id = ri['layerbranch']))
@@ -886,7 +884,8 @@ class LayerIndexLayerSource(LayerSource):
except:
#print "Duplicate Recipe, ignoring: ", vars(ro)
pass
transaction.set_autocommit(True)
if not connection.features.autocommits_when_autocommit_is_off:
transaction.set_autocommit(True)
pass
class BitbakeVersion(models.Model):
@@ -897,7 +896,7 @@ class BitbakeVersion(models.Model):
dirpath = models.CharField(max_length=255)
def __unicode__(self):
return "%s (%s)" % (self.name, self.branch)
return "%s (Branch: %s)" % (self.name, self.branch)
class Release(models.Model):
@@ -1038,14 +1037,6 @@ class Layer_Version(models.Model):
def get_equivalents_wpriority(self, project):
""" Returns an ordered layerversion list that satisfies a LayerVersionDependency using the layer name and the current Project Releases' LayerSource priority """
def _get_ls_priority(ls):
try:
# if there is no layer source, we have minus infinite priority, as we don't want this layer selected
if ls == None:
return -10000
return ls.releaselayersourcepriority_set.get(release=project.release).priority
except ReleaseLayerSourcePriority.DoesNotExist:
raise
# layers created for this project, or coming from a build inthe project
query = Q(project = project) | Q(build__project = project)
@@ -1056,8 +1047,29 @@ class Layer_Version(models.Model):
# or we have a layer in the project that's similar to mine (See the layer.name constraint below)
query |= Q(projectlayer__project=project)
return sorted(
Layer_Version.objects.filter(layer__name = self.layer.name).filter(query).select_related('layer_source', 'layer').order_by("-id"),
candidate_layer_versions = list(Layer_Version.objects.filter(layer__name = self.layer.name).filter(query).select_related('layer_source', 'layer', 'up_branch').order_by("-id"))
# optimization - if we have only one, we don't need no stinking sort
if len(candidate_layer_versions) == 1:
return candidate_layer_versions
# raise Exception(candidate_layer_versions)
release_priorities = {}
for ls_id, prio in map(lambda x: (x.layer_source_id, x.priority), project.release.releaselayersourcepriority_set.all().order_by("-priority")):
release_priorities[ls_id] = prio
def _get_ls_priority(ls):
# if there is no layer source, we have minus infinite priority, as we don't want this layer selected
if ls == None:
return -10000
try:
return release_priorities[ls.id]
except IndexError:
raise Exception("Unknown %d %s" % (ls.id, release_priorities))
return sorted( candidate_layer_versions ,
key = lambda x: _get_ls_priority(x.layer_source),
reverse = True)
@@ -1068,10 +1080,10 @@ class Layer_Version(models.Model):
return self.branch
if self.up_branch is not None:
return self.up_branch.name
raise Exception("Cannot determine the vcs_reference for layer version %s" % vars(self))
return ("Cannot determine the vcs_reference for layer version %s" % vars(self))
def __unicode__(self):
return str(self.layer) + "(%s,%s)" % (self.get_vcs_reference(), self.build.project if self.build is not None else "None")
return "%d %s (VCS %s, Project %s)" % (self.pk, str(self.layer), self.get_vcs_reference(), self.build.project if self.build is not None else "No project")
class Meta:
unique_together = ("layer_source", "up_id")

View File

@@ -120,6 +120,7 @@ select { width: auto; }
.top-air { margin-top: 40px;}
.progress { margin-bottom: 0px; }
.lead .badge { font-size: 18px; font-weight: normal; border-radius: 15px; padding: 9px; }
.lead ol, .lead ul { padding: 10px 0 0 20px; }
.lead ol > li, .lead ul > li {
line-height: 35px;
}
@@ -129,10 +130,19 @@ select { width: auto; }
.task-name { margin-left: 7px; }
.icon-hand-right {color: #CCCCCC; }
.help-inline { margin: 5px; }
.dashboard-section { background-color: transparent; }
/* styles for landing page - analysis mode */
.hero-unit { margin: 20px 0 30px; }
.hero-unit > .close { font-size:40px; }
.hero-actions { margin-top: 30px; }
.dashboard-section { background-color: transparent; }
/* styles for landing page - build mode */
.hero-unit p { line-height: 25px; }
.hero-unit p, .hero-unit .btn-large { margin-top: 15px; }
.hero-unit ul { margin-top: 20px; }
.hero-unit li { line-height: 30px; }
.hero-unit img { background-color: #eee; margin-top: 15px; }
/* make tables Chrome-happy (me, not so much) */
#otable { table-layout: fixed; word-wrap: break-word; }
@@ -214,6 +224,7 @@ dl textarea { resize: vertical; }
.new-build .input-append { margin-bottom: 0; }
#build-selected { margin-top: 15px; }
div.add-deps { margin-top: 15px; }
.btn.log { margin-left: 20px; }
.animate-repeat {

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,5 @@
/*! jQuery UI - v1.11.4 - 2015-03-15
* http://jqueryui.com
* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,11 @@
{
"curly" : false,
"predef" : [ "$","libtoaster", "prettyPrint" ],
"eqnull": true,
"plusplus" : false,
"browser" : true,
"jquery" : true,
"devel" : true,
"unused" : true,
"maxerr" : 60
}

View File

@@ -0,0 +1,95 @@
"use strict"
// The disable removes the 'datepicker' attribute and
// settings, so you have to re-initialize it each time
// the date range is selected and enabled
// DOM is used instead of jQuery to find the elements
// in all contexts
function date_enable (key, action) {
var elemFrom=document.getElementById("date_from_"+key);
var elemTo=document.getElementById("date_to_"+key);
if ('enable' == action) {
elemFrom.removeAttribute("disabled");
elemTo.removeAttribute("disabled");
$(elemFrom).datepicker();
$(elemTo).datepicker();
$(elemFrom).datepicker( "option", "dateFormat", "dd/mm/yy" );
$(elemTo).datepicker( "option", "dateFormat", "dd/mm/yy" );
$(elemFrom).datepicker( "setDate", elemFrom.getAttribute( "data-setDate") );
$(elemTo).datepicker( "setDate", elemTo.getAttribute( "data-setDate") );
$(elemFrom).datepicker( "option", "minDate", elemFrom.getAttribute( "data-minDate"));
$(elemTo).datepicker( "option", "minDate", elemTo.getAttribute( "data-minDate"));
$(elemFrom).datepicker( "option", "maxDate", elemFrom.getAttribute( "data-maxDate"));
$(elemTo).datepicker( "option", "maxDate", elemTo.getAttribute( "data-maxDate"));
} else {
elemFrom.setAttribute("disabled","disabled");
elemTo.setAttribute("disabled","disabled");
}
}
// Initialize the date picker elements with their default state variables, and
// register the radio button and form actions
function date_init (key, from_date, to_date, min_date, max_date, initial_enable) {
var elemFrom=document.getElementById("date_from_"+key);
var elemTo=document.getElementById("date_to_"+key);
// Were there any daterange filters instantiated? (e.g. no builds found)
if (null == elemFrom) {
return;
}
// init the datepicker context data
elemFrom.setAttribute( "data-setDate", from_date );
elemTo.setAttribute( "data-setDate", to_date );
elemFrom.setAttribute( "data-minDate", min_date);
elemTo.setAttribute( "data-minDate", min_date);
elemFrom.setAttribute( "data-maxDate", max_date);
elemTo.setAttribute( "data-maxDate", max_date);
// does the date set start enabled?
if (key == initial_enable) {
date_enable (key, "enable");
} else {
date_enable (key, "disable");
}
// catch the radio button selects for enable/disable
$('input:radio[name="filter"]').change(function(){
if ($(this).val() == 'daterange') {
key=$(this).attr("data-key");
date_enable (key, 'enable');
} else {
key=$(this).attr("data-key");
date_enable (key, 'disable');
}
});
// catch any new 'from' date as minDate for 'to' date
$("#date_from_"+key).change(function(){
from_date = $("#date_from_"+key).val();
$("#date_to_"+key).datepicker( "option", "minDate", from_date );
});
// catch the submit (just once)
$("form").unbind('submit');
$("form").submit(function(e) {
// format a composite daterange filter value so that it can be parsed and post-processed in the view
var key=e.originalEvent.explicitOriginalTarget.getAttribute("data-key")
if (typeof key != "undefined") {
if ($("#date_from_"+key).length) {
var filter=key+"__gte!"+key+"__lt:"+$("#date_from_"+key).val()+"!"+$("#date_to_"+key).val()+"_daterange";
$("#last_date_from_"+key).val($("#date_from_"+key).val());
$("#last_date_to_"+key).val($("#date_to_"+key).val());
$("#filter_value_"+key).val(filter);
}
}
return true;
});
};

View File

@@ -148,7 +148,6 @@ function importLayerPageInit (ctx) {
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (data) {
if (data.error != "ok") {
show_error_message(data, layerData);
console.log(data.error);
} else {
/* Success layer import now go to the project page */
@@ -164,59 +163,7 @@ function importLayerPageInit (ctx) {
}
});
function show_error_message(error, layerData) {
var errorMsg = $("#import-error").fadeIn();
var errorType = error.error;
var body = errorMsg.children("p");
var title = errorMsg.children("h3");
var optionsList = errorMsg.children("ul");
var invalidLayerRevision = $("#invalid-layer-revision-hint");
var layerRevisionCtrl = $("#layer-revision-ctrl");
/* remove any existing items */
optionsList.children().each(function(){ $(this).remove(); });
body.text("");
title.text("");
invalidLayerRevision.hide();
layerNameCtrl.removeClass("error");
layerRevisionCtrl.removeClass("error");
switch (errorType){
case 'hint-layer-version-exists':
title.text("This layer already exists");
body.html("A layer <strong>"+layerData.name+"</strong> already exists with this Git repository URL and this revision. You can:");
optionsList.append("<li>Import <strong>"+layerData.name+"</strong> with a different revision </li>");
optionsList.append("<li>or <a href=\""+ctx.layerDetailsUrl+error.existing_layer_version+"/\" >change the revision of the existing layer</a></li>");
layerRevisionCtrl.addClass("error");
invalidLayerRevision.html("A layer <strong>"+layerData.name+"</strong> already exists with this revision.<br />You can import <strong>"+layerData.name+"</strong> with a different revision");
invalidLayerRevision.show();
break;
case 'hint-layer-exists-with-different-url':
title.text("This layer already exists");
body.html("A layer <strong>"+layerData.name+"</strong> already exists with a different Git repository URL:<p style='margin-top:10px;'><strong>"+error.current_url+"</strong></p><p>You can:</p>");
optionsList.append("<li>Import the layer under a different name</li>");
optionsList.append("<li>or <a href=\""+ctx.layerDetailsUrl+error.current_id+"/\" >change the Git repository URL of the existing layer</a></li>");
duplicatedLayerName.html("A layer <strong>"+layerData.name+"</strong> already exists with a different Git repository URL.<br />To import this layer give it a different name.");
duplicatedLayerName.show();
layerNameCtrl.addClass("error");
break;
case 'hint-layer-exists':
title.text("This layer already exists");
body.html("A layer <strong>"+layerData.name+"</strong> already exists. You can:");
optionsList.append("<li>Import the layer under a different name</li>");
break;
default:
title.text("Error")
body.text(data.error);
}
}
function enable_import_btn (enabled) {
function enable_import_btn(enabled) {
var importAndAddHint = $("#import-and-add-hint");
if (enabled) {
@@ -244,6 +191,38 @@ function importLayerPageInit (ctx) {
enable_import_btn(true);
}
function layerExistsError(layer){
var dupLayerInfo = $("#duplicate-layer-info");
dupLayerInfo.find(".dup-layer-name").text(layer.name);
dupLayerInfo.find(".dup-layer-link").attr("href", layer.layerdetailurl);
dupLayerInfo.find("#dup-layer-vcs-url").text(layer.giturl);
dupLayerInfo.find("#dup-layer-revision").text(layer.revision);
$(".fields-apart-from-layer-name").fadeOut(function(){
dupLayerInfo.fadeIn();
});
}
layerNameInput.on('blur', function() {
if (!$(this).val()){
return;
}
var name = $(this).val();
/* Check if the layer name exists */
$.getJSON(ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: ctx.projectId, include_added: "true" , value: name }, function(layer) {
if (layer.list.length > 0) {
for (var i in layer.list){
if (layer.list[i].name == name) {
console.log(layer.list[i])
layerExistsError(layer.list[i]);
}
}
}
});
});
vcsURLInput.on('input', function() {
check_form();
});
@@ -260,6 +239,13 @@ function importLayerPageInit (ctx) {
return;
}
if ($("#duplicate-layer-info").css("display") != "None"){
$("#duplicate-layer-info").fadeOut(function(){
$(".fields-apart-from-layer-name").show();
});
}
/* Don't remove the error class if we're displaying the error for another
* reason.
*/

File diff suppressed because one or more lines are too long

View File

@@ -155,7 +155,7 @@ function layerDetailsPageInit (ctx) {
if (!ctx.layerVersion.inCurrentPrj){
if (ctx.numTargets > 0) {
var text = " Add the "+ctx.layerVersion.name+" layer to your project "+
"to enable these targets";
"to enable these recipes";
addRmLayerBtn.text(text);
addRmLayerBtn.prepend("<span class=\"icon-plus\"></span>");
} else {
@@ -382,6 +382,11 @@ function layerDetailsPageInit (ctx) {
}
});
/* Hide the right column if it contains no information */
if ($("dl.item-info").children(':visible').length == 0) {
$("dl.item-info").parent().hide();
}
/* Clear the current search selection and reload the results */
$(".target-search-clear").click(function(){
$("#target-search").val("");

View File

@@ -1,3 +1,4 @@
"use strict";
/* All shared functionality to go in libtoaster object.
* This object really just helps readability since we can then have
* a traceable namespace.
@@ -19,7 +20,7 @@ var libtoaster = (function (){
source: function(query, process){
xhrParams.value = query;
$.getJSON(xhrUrl, this.options.xhrParams, function(data){
if (data.error != "ok") {
if (data.error !== "ok") {
console.log("Error getting data from server "+data.error);
return;
}
@@ -61,7 +62,7 @@ var libtoaster = (function (){
}
jQElement.data('typeahead').render = customRenderFunc;
};
}
/*
* url - the url of the xhr build */
@@ -79,10 +80,10 @@ var libtoaster = (function (){
data: data,
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error != "ok") {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess != undefined) onsuccess(_data);
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
@@ -90,7 +91,34 @@ var libtoaster = (function (){
console.warn(_data);
if (onfail) onfail(data);
} });
};
}
/* cancelABuild:
* url: xhr_projectbuild
* builds_ids: space separated list of build request ids
* onsuccess: callback for successful execution
* onfail: callback for failed execution
*/
function _cancelABuild(url, build_ids, onsuccess, onfail){
$.ajax( {
type: "POST",
url: url,
data: { 'buildCancel': build_ids },
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn("Call failed");
console.warn(_data);
if (onfail) onfail(data);
}
});
}
/* Get a project's configuration info */
function _getProjectInfo(url, projectId, onsuccess, onfail){
@@ -100,18 +128,18 @@ var libtoaster = (function (){
data: { project_id : projectId },
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error != "ok") {
if (_data.error !== "ok") {
console.warn(_data.error);
} else {
if (onsuccess != undefined) onsuccess(_data);
if (onsuccess !== undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn(_data);
if (onfail) onfail(data);
if (onfail) onfail(_data);
}
});
};
}
/* Properties for data can be:
* layerDel (csv)
@@ -129,10 +157,10 @@ var libtoaster = (function (){
success: function (data) {
if (data.error != "ok") {
console.log(data.error);
if (onFail != undefined)
if (onFail !== undefined)
onFail(data);
} else {
if (onSuccess != undefined)
if (onSuccess !== undefined)
onSuccess(data);
}
},
@@ -141,7 +169,7 @@ var libtoaster = (function (){
console.log(data);
}
});
};
}
function _getLayerDepsForProject(xhrDataTypeaheadUrl, projectId, layerId, onSuccess, onFail){
/* Check for dependencies not in the current project */
@@ -150,7 +178,7 @@ var libtoaster = (function (){
function(data) {
if (data.error != "ok") {
console.log(data.error);
if (onFail != undefined)
if (onFail !== undefined)
onFail(data);
} else {
onSuccess(data);
@@ -158,22 +186,22 @@ var libtoaster = (function (){
}, function() {
console.log("E: Failed to make request");
});
};
}
/* parses the query string of the current window.location to an object */
function _parseUrlParams() {
string = window.location.search
var string = window.location.search;
string = string.substr(1);
stringArray = string.split ("&");
obj = {};
var stringArray = string.split ("&");
var obj = {};
for (i in stringArray) {
keyVal = stringArray[i].split ("=");
for (var i in stringArray) {
var keyVal = stringArray[i].split ("=");
obj[keyVal[0]] = keyVal[1];
}
return obj;
};
}
/* takes a flat object and outputs it as a query string
* e.g. the output of dumpsUrlParams
@@ -181,7 +209,7 @@ var libtoaster = (function (){
function _dumpsUrlParams(obj) {
var str = "?";
for (key in obj){
for (var key in obj){
if (!obj[key])
continue;
@@ -190,12 +218,13 @@ var libtoaster = (function (){
}
return str;
};
}
return {
reload_params : reload_params,
startABuild : _startABuild,
cancelABuild : _cancelABuild,
makeTypeahead : _makeTypeahead,
getProjectInfo: _getProjectInfo,
getLayerDepsForProject : _getLayerDepsForProject,
@@ -203,23 +232,23 @@ var libtoaster = (function (){
debug: false,
parseUrlParams : _parseUrlParams,
dumpsUrlParams : _dumpsUrlParams,
}
};
})();
/* keep this in the global scope for compatability */
function reload_params(params) {
uri = window.location.href;
splitlist = uri.split("?");
url = splitlist[0], parameters=splitlist[1];
var uri = window.location.href;
var splitlist = uri.split("?");
var url = splitlist[0];
var parameters = splitlist[1];
// deserialize the call parameters
if(parameters){
cparams = parameters.split("&");
}else{
cparams = []
}
nparams = {}
for (i = 0; i < cparams.length; i++) {
temp = cparams[i].split("=");
var cparams = [];
if(parameters)
cparams = parameters.split("&");
var nparams = {};
for (var i = 0; i < cparams.length; i++) {
var temp = cparams[i].split("=");
nparams[temp[0]] = temp[1];
}
// update parameter values
@@ -227,7 +256,7 @@ function reload_params(params) {
nparams[encodeURIComponent(i)] = encodeURIComponent(params[i]);
}
// serialize the structure
callparams = []
var callparams = [];
for (i in nparams) {
callparams.push(i+"="+nparams[i]);
}
@@ -238,7 +267,7 @@ function reload_params(params) {
/* Things that happen for all pages */
$(document).ready(function() {
/* If we don't have a console object which might be the case in some
/* If we don't have a console object which might be the case in some
* browsers, no-op it to avoid undefined errors.
*/
if (!window.console) {
@@ -271,7 +300,7 @@ $(document).ready(function() {
// .btn class applied, and make sure popovers work on click, are mutually
// exclusive and they close when your click outside their area
$('html').click(function(e){
$('html').click(function(){
$('td > a.btn').popover('hide');
});
@@ -323,9 +352,9 @@ $(document).ready(function() {
// linking directly to tabs
$(function(){
var hash = window.location.hash;
hash && $('ul.nav a[href="' + hash + '"]').tab('show');
$('ul.nav a[href="' + hash + '"]').tab('show');
$('.nav-tabs a').click(function (e) {
$('.nav-tabs a').click(function () {
$(this).tab('show');
$('body').scrollTop();
});

View File

@@ -61,7 +61,7 @@ angular_formpost = function($httpProvider) {
$httpProvider.defaults.transformRequest = [function(data) {
return angular.isObject(data) && String(data) !== '[object File]' ? param(data) : data;
}];
}
};
/**
@@ -77,14 +77,14 @@ angular_formpost = function($httpProvider) {
function _diffArrays(existingArray, newArray, compareElements, onAdded, onDeleted ) {
var added = [];
var removed = [];
newArray.forEach( function( newElement, newIndex, _newArray) {
var existingIndex = existingArray.findIndex(function ( existingElement, _existingIndex, _existingArray ) {
newArray.forEach( function( newElement ) {
var existingIndex = existingArray.findIndex(function ( existingElement ) {
return compareElements(newElement, existingElement);
});
if (existingIndex < 0 && onAdded) { added.push(newElement); }
});
existingArray.forEach( function( existingElement, existingIndex, _existingArray) {
var newIndex = newArray.findIndex(function ( newElement, _newIndex, _newArray ) {
existingArray.forEach( function( existingElement ) {
var newIndex = newArray.findIndex(function ( newElement ) {
return compareElements(newElement, existingElement);
});
if (newIndex < 0 && onDeleted) { removed.push(existingElement); }
@@ -108,7 +108,7 @@ if (Array.prototype.findIndex === undefined) {
for ( i = 0; i < this.length; i++ )
if (callback(this[i], i, this)) return i;
return -1;
}
};
}
var projectApp = angular.module('project', ['ngCookies', 'ngAnimate', 'ui.bootstrap', 'ngRoute', 'ngSanitize'], angular_formpost);
@@ -124,7 +124,7 @@ projectApp.config(function($interpolateProvider) {
projectApp.filter('timediff', function() {
return function(input) {
function pad(j) {
if (parseInt(j) < 10) {return "0" + j}
if (parseInt(j) < 10) {return "0" + j;}
return j;
}
seconds = parseInt(input);
@@ -133,7 +133,7 @@ projectApp.filter('timediff', function() {
hours = Math.floor(seconds / 3600);
seconds = seconds - hours * 3600;
return pad(hours) + ":" + pad(minutes) + ":" + pad(seconds);
}
};
});
// add "time to future" eta that computes time from now to a point in the future
@@ -143,7 +143,7 @@ projectApp.filter('toeta', function() {
diff = (parseInt(input) - crtmiliseconds ) / 1000;
console.log("Debug: future time ", input, "crt time", crtmiliseconds, ":", diff);
return diff < 0 ? 300 : diff;
}
};
});
/**
@@ -169,7 +169,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
});
return deffered.promise;
}
};
var inXHRcall = false;
@@ -194,7 +194,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
}
var deffered = $q.defer();
if (undefined === callparams.headers) { callparams.headers = {} };
if (undefined === callparams.headers) { callparams.headers = {}; }
callparams.headers['X-CSRFToken'] = $cookies.csrftoken;
$http(callparams).success(function(_data, _status, _headers, _config) {
@@ -239,12 +239,14 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
// step 3 - display alerts.
if (addedLayers.length > 0) {
$scope.displayAlert($scope.zone2alerts, "You have added <b>"+addedLayers.length+"</b> layer" + ((addedLayers.length>1)?"s: ":": ") + addedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>" }).join(", "), "alert-info");
$scope.displayAlert($scope.zone2alerts,
"You have added <b>"+addedLayers.length+"</b> layer" + ((addedLayers.length>1)?"s: ":": ") + addedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>"; }).join(", "),
"alert-info");
// invalidate error layer data based on current layers
$scope.layersForTargets = {};
}
if (deletedLayers.length > 0) {
$scope.displayAlert($scope.zone2alerts, "You have deleted <b>"+deletedLayers.length+"</b> layer" + ((deletedLayers.length>1)?"s: ":": ") + deletedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>" }).join(", "), "alert-info");
$scope.displayAlert($scope.zone2alerts, "You have deleted <b>"+deletedLayers.length+"</b> layer" + ((deletedLayers.length>1)?"s: ":": ") + deletedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>"; }).join(", "), "alert-info");
// invalidate error layer data based on current layers
$scope.layersForTargets = {};
}
@@ -323,9 +325,9 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
deffered.resolve(_data);
}
}).error(function(_data, _status, _headers, _config) {
if (_status == 0) {
if (_status === 0) {
// the server has gone away
alert("The server is not responding. The application will terminate now")
// alert("The server is not responding. The application will terminate now");
$interval.cancel($scope.pollHandle);
}
else {
@@ -336,7 +338,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
});
return deffered.promise;
}
};
$scope.layeralert = undefined;
/**
@@ -344,33 +346,34 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
*/
$scope.validateData = function () {
if ($scope.layers.length == 0) {
if ($scope.layers.length === 0) {
$scope.layeralert = $scope.displayAlert($scope.zone1alerts, "You need to add some layers to this project. <a href=\""+$scope.urls.layers+"\">View all layers available in Toaster</a> or <a href=\""+$scope.urls.importlayer+"\">import a layer</a>");
} else {
if ($scope.layeralert != undefined) {
if ($scope.layeralert !== undefined) {
$scope.layeralert.close();
$scope.layeralert = undefined;
}
}
}
};
$scope.buildExistingTarget = function(targets) {
$scope.buildTargetList(targets.map(function(v,i,a){return v.target}));
}
$scope.buildTargetList(targets.map(function(v){return v.target;}));
};
$scope.buildTargetList = function(targetlist) {
var oldTargetName = $scope.targetName;
$scope.targetName = targetlist.join(' ');
$scope.buildNamedTarget();
$scope.targetName = oldTargetName;
}
};
$scope.buildNamedTarget = function(target) {
$scope.buildNamedTarget = function() {
if ($scope.targetName === undefined && $scope.targetName1 === undefined){
console.warn("No target defined, please type in a target name");
return;
}
// this writes the $scope.safeTargetName variable
$scope.sanitizeTargetName();
$scope._makeXHRCall({
@@ -379,6 +382,8 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
targets: $scope.safeTargetName,
}
}).then(function (data) {
// make sure nobody re-uses the current $safeTargetName
delete $scope.safeTargetName;
console.warn("TRC3: received ", data);
$scope.targetName = undefined;
$scope.targetName1 = undefined;
@@ -386,7 +391,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
// call $anchorScroll()
$anchorScroll();
});
}
};
$scope.sanitizeTargetName = function() {
$scope.safeTargetName = undefined;
@@ -396,7 +401,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
if (undefined === $scope.safeTargetName) return;
$scope.safeTargetName = $scope.safeTargetName.replace(/\[.*\]/, '').trim();
}
};
$scope.buildCancel = function(build) {
$scope._makeXHRCall({
@@ -405,25 +410,25 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
buildCancel: build.id,
}
}).then( function () {
build['status'] = "deleted";
build.status = "deleted";
$scope.canceledBuilds.push(build);
});
}
};
$scope.buildDelete = function(build) {
$scope.canceledBuilds.splice($scope.canceledBuilds.indexOf(build), 1);
}
};
$scope.onLayerSelect = function (item, model, label) {
$scope.onLayerSelect = function (item) {
$scope.layerAddId = item.id;
}
};
$scope.layerAddById = function (id) {
$scope.layerAddId = id;
$scope.layerAdd();
}
};
$scope.layerAdd = function() {
@@ -439,7 +444,12 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
controller: function ($scope, $modalInstance, items, layerAddName) {
$scope.items = items;
$scope.layerAddName = layerAddName;
$scope.selectedItems = (function () { s = {}; for (var i = 0; i < items.length; i++) { s[items[i].id] = true; };return s; })();
$scope.selectedItems = (function () {
s = {};
for (var i = 0; i < items.length; i++)
{ s[items[i].id] = true; }
return s;
})();
$scope.ok = function() {
console.warn("TRC4: scope selected is ", $scope.selectedItems);
@@ -474,11 +484,13 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
layerAdd: selectedArray.join(","),
}
}).then(function () {
$scope.adjustMostBuiltItems(selectedArray.length);
$scope.layerAddName = undefined;
});
});
}
else {
$scope.adjustMostBuiltItems(1);
$scope._makeXHRCall({
method: "POST", url: $scope.urls.xhr_edit,
data: {
@@ -490,16 +502,25 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
}
}
});
}
};
$scope.layerDel = function(id) {
$scope.adjustMostBuiltItems(-1);
$scope._makeXHRCall({
method: "POST", url: $scope.urls.xhr_edit,
data: {
layerDel: id,
}
});
}
};
$scope.adjustMostBuiltItems = function(listDelta) {
$scope.layerCount += listDelta;
$scope.mutedtargets = ($scope.layerCount == 0 ? "muted" : "");
};
/*
*/
/**
@@ -522,9 +543,10 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
// activate modal
var modalInstance = $modal.open({
templateUrl: 'change_version_modal',
controller: function ($scope, $modalInstance, items, releaseName) {
controller: function ($scope, $modalInstance, items, releaseName, releaseDescription) {
$scope.items = items;
$scope.releaseName = releaseName;
$scope.releaseDescription = releaseDescription;
$scope.ok = function() {
$modalInstance.close();
@@ -542,16 +564,19 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
releaseName: function () {
return $scope.releases.filter(function (e) { if (e.id == $scope.projectVersion) return e;})[0].name;
},
releaseDescription: function () {
return $scope.releases.filter(function (e) { if (e.id == $scope.projectVersion) return e;})[0].description;
},
}
});
modalInstance.result.then(function () { $scope.editProjectSettings(elementid)});
modalInstance.result.then(function () { $scope.editProjectSettings(elementid); });
} else {
$scope.editProjectSettings(elementid);
}
}
});
}
};
/**
* Performs changes to project settings, and updates the user interface accordingly.
@@ -560,23 +585,23 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
$scope.editProjectSettings = function(elementid) {
var data = {};
console.warn("TRC7: editProjectSettings with ", elementid);
var alertText = undefined;
var alertZone = undefined;
var alertText;
var alertZone;
var oldLayers = [];
switch(elementid) {
case '#select-machine':
alertText = "You have changed the machine to: <strong>" + $scope.machineName + "</strong>";
alertZone = $scope.zone2alerts;
data['machineName'] = $scope.machineName;
data.machineName = $scope.machineName;
break;
case '#change-project-name':
data['projectName'] = $scope.projectName;
data.projectName = $scope.projectName;
alertText = "You have changed the project name to: <strong>" + $scope.projectName + "</strong>";
alertZone = $scope.zone3alerts;
break;
case '#change-project-version':
data['projectVersion'] = $scope.projectVersion;
data.projectVersion = $scope.projectVersion;
alertText = "You have changed the release to: ";
alertZone = $scope.zone3alerts;
// save old layers
@@ -590,15 +615,14 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
method: "POST", url: $scope.urls.xhr_edit, data: data,
}).then( function (_data) {
$scope.toggle(elementid);
if (data['projectVersion'] != undefined) {
if (data.projectVersion !== undefined) {
alertText += "<strong>" + $scope.project.release.desc + "</strong>. ";
}
if (elementid == '#change-project-version') {
$scope.layersForTargets = {}; // invalidate error layers for the targets, since layers changed
// requirement https://bugzilla.yoctoproject.org/attachment.cgi?id=2229, notification for changed version to include layers
$scope.zone2alerts.forEach(function (e) { e.close() });
alertText += "This has caused the following changes in your project layers:<ul>"
$scope.zone2alerts.forEach(function (e) { e.close(); });
// warnings - this is executed AFTER the generic XHRCall handling is done; at this point,
@@ -606,14 +630,18 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
// show added/deleted layer notifications; scope.layers is already updated by this point.
var addedLayers = [];
var deletedLayers = [];
_diffArrays( oldLayers, $scope.layers, function (e, f) { return e.id == f.id },
_diffArrays( oldLayers, $scope.layers, function (e, f) { return e.id == f.id; },
function (e) {addedLayers.push(e); },
function (e) {deletedLayers.push(e); });
var hasDifferentLayers = (addedLayers.length || deletedLayers.length)
if (hasDifferentLayers) {
alertText += "This has caused the following changes in your project layers:<ul>";
}
// some of the deleted layers are actually replaced (changed) layers
var changedLayers = [];
deletedLayers.forEach(function (e) {
if ( -1 < addedLayers.findIndex(function (f) { return f.name == e.name })) {
if ( -1 < addedLayers.findIndex(function (f) { return f.name == e.name; })) {
changedLayers.push(e);
}
});
@@ -623,18 +651,20 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
});
if (addedLayers.length > 0) {
alertText += "<li><strong>"+addedLayers.length+"</strong> layer" + ((addedLayers.length>1)?"s changed: ":" changed: ") + addedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>" }).join(", ") + "</li>";
alertText += "<li><strong>"+addedLayers.length+"</strong> layer" + ((addedLayers.length>1)?"s":"") + " changed to the <strong> " + $scope.project.release.name + " </strong> branch: " + addedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>"; }).join(", ") + "</li>";
}
if (deletedLayers.length > 0) {
alertText += "<li><strong>"+deletedLayers.length+"</strong> layer" + ((deletedLayers.length>1)?"s deleted: ":"deleted: ") + deletedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>" }).join(", ") + "</li>";
alertText += "<li><strong>"+deletedLayers.length+"</strong> layer" + ((deletedLayers.length>1)?"s":"") + " deleted: " + deletedLayers.map(function (e) { return "<a href=\""+e.layerdetailurl+"\">"+e.name+"</a>"; }).join(", ") + "</li>";
}
}
alertText += "</ul>";
if (hasDifferentLayers) {
alertText += "</ul>";
}
}
$scope.displayAlert(alertZone, alertText, "alert-info");
});
}
};
/**
@@ -642,18 +672,18 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
*/
$scope.updateDisplayWithCommands = function() {
cmd = $location.path();
function _cmdExecuteWithParam(param, f) {
if (cmd.indexOf(param)==0) {
var cmd = $location.path();
if (cmd.indexOf(param) === 0) {
if (cmd.indexOf("=") > -1) {
var parameter = cmd.split("=", 2)[1];
if (parameter != undefined && parameter.length > 0) {
if (parameter !== undefined && parameter.length > 0) {
f(parameter);
}
} else {
f();
};
}
}
}
@@ -674,14 +704,14 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
});
});
_cmdExecuteWithParam("/layerimported", function (layer) {
_cmdExecuteWithParam("/layerimported", function () {
var imported = $cookieStore.get("layer-imported-alert");
var text;
if (!imported)
return;
if (imported.deps_added.length == 0) {
if (imported.deps_added.length === 0) {
text = "You have imported <strong><a href=\""+$scope.urls.layer+
imported.imported_layer.id+"\">"+imported.imported_layer.name+
"</a></strong> and added it to your project.";
@@ -694,7 +724,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
links +="<a href=\""+$scope.urls.layer+item.id+"\" >"+item.name+
"</a>";
/*If we're at the last element we don't want the trailing comma */
if (imported.deps_added[index+1] != undefined)
if (imported.deps_added[index+1] !== undefined)
links += ", ";
});
@@ -715,8 +745,9 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
_cmdExecuteWithParam("/targetbuild=", function (targets) {
var oldTargetName = $scope.targetName;
$scope.targetName = targets.split(",").join(" ");
$scope.targetNamedBuild();
$scope.buildNamedTarget();
$scope.targetName = oldTargetName;
$location.path('');
});
_cmdExecuteWithParam("/machineselect=", function (machine) {
@@ -731,7 +762,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
$scope.layerAdd();
});
});
}
};
/**
* Utility function to display an alert to the user
@@ -740,16 +771,21 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
$scope.displayAlert = function(zone, text, type) {
if (zone.maxid === undefined) { zone.maxid = 0; }
var crtid = zone.maxid ++;
angular.forEach(zone, function (o) { o.close() });
angular.forEach(zone, function (o) { o.close(); });
o = {
id: crtid, text: text, type: type,
close: function() {
zone.splice((function(id){ for (var i = 0; i < zone.length; i++) if (id == zone[i].id) { return i}; return undefined;})(crtid), 1);
zone.splice((function(id) {
for (var i = 0; i < zone.length; i++)
if (id == zone[i].id)
{ return i; }
return undefined;
}) (crtid), 1);
},
}
};
zone.push(o);
return o;
}
};
/**
* Toggles display items between label and input box (the edit pencil icon) on selected settings in project page
@@ -762,7 +798,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
angular.element(id).toggle();
angular.element(id+"-opposite").toggle();
}
};
/**
* Functionality related to "Most build targets"
@@ -770,44 +806,56 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
$scope.enableBuildSelectedTargets = function () {
var keys = Object.keys($scope.mostBuiltTargets);
keys = keys.filter(function (e) { if ($scope.mostBuiltTargets[e]) return e });
return keys.length == 0;
keys = keys.filter(function (e) { if ($scope.mostBuiltTargets[e]) return e; });
return keys.length === 0;
};
$scope.disableBuildCheckbox = function(t) {
if ( $scope.layerCount == 0 ) {
$scope.mostBuiltTargets[t] = 0;
return true;
};
return false;
}
$scope.buildSelectedTargets = function () {
var keys = Object.keys($scope.mostBuiltTargets);
keys = keys.filter(function (e) { if ($scope.mostBuiltTargets[e]) return e });
keys = keys.filter(function (e) { if ($scope.mostBuiltTargets[e]) return e; });
$scope.buildTargetList(keys);
for (var i = 0; i < keys.length; i++)
{
$scope.mostBuiltTargets[keys[i]] = 0;
}
}
};
/**
* Helper function to deal with error string recognition and manipulation
*/
$scope.getTargetNameFromErrorMsg = function (msg) {
targets = msg.split(" ").splice(2).map(function (v) { return v.replace(/'/g, '')})
return targets;
}
return msg.split(" ").splice(2).map(function (v) { return v.replace(/'/g, ''); });
};
/**
* Utility function to retrieve which layers can be added to the project if the target was not
* provided by any of the existing project layers
*/
$scope.fetchLayersForTargets = function () {
$scope.builds.forEach(function (buildrequest) {
buildrequest.errors.forEach(function (error) {
if (error.msg.indexOf("Nothin") == 0) {
if (error.msg.indexOf("Nothin") === 0) {
$scope.getTargetNameFromErrorMsg(error.msg).forEach(function (target) {
if ($scope.layersForTargets[target] === undefined)
$scope.getAutocompleteSuggestions("layers4target", target).then( function (list) {
$scope.layersForTargets[target] = list;
})
})
});
});
}
})
})
}
});
});
};
/**
@@ -819,16 +867,16 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc
$scope.layersForTargets = {};
$scope.fetchLayersForTargets();
$scope.pollHandle = $interval(function () { $scope._makeXHRCall({method: "GET", url: $scope.urls.xhr_edit, data: undefined});}, 2000, 0);
}
};
});
var s = undefined;
var _testing_scope;
function test_set_alert(text) {
s = angular.element("div#main").scope();
s.displayAlert(s.zone3alerts, text);
console.warn("TRC8: zone3alerts", s.zone3alerts);
s.$digest();
_testing_scope = angular.element("div#main").scope();
_testing_scope.displayAlert(_testing_scope.zone3alerts, text);
console.warn("TRC8: zone3alerts", _testing_scope.zone3alerts);
_testing_scope.$digest();
}

View File

@@ -34,7 +34,7 @@
var ctx = {};
ctx.xhrDataTypeaheadUrl = "{% url 'xhr_datatypeahead' %}";
ctx.projectBuildUrl = "{% url 'xhr_build' %}";
ctx.projectPageUrl = "{% url 'project' %}";
ctx.projectPageUrl = "{% url 'base_project' %}";
ctx.projectInfoUrl = "{% url 'xhr_projectinfo' %}";
ctx.numProjects = {{projects|length}};
{% if project %}
@@ -64,7 +64,7 @@
<i class="icon-info-sign" title="<strong>Toaster version information</strong>" data-content="<dl><dt>Branch</dt><dd>{{TOASTER_BRANCH}}</dd><dt>Revision</dt><dd>{{TOASTER_REVISION}}</dd><dt>Mode</dt><dd>{%if MANAGED%}Build{%else%}Analysis{%endif%}</dd></dl>"></i>
{% endif %}
</span>
<a class="pull-right manual" target="_blank" href="http://www.yoctoproject.org/documentation/toaster-manual">
<a class="pull-right manual" target="_blank" href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html">
<i class="icon-book"></i>
Toaster manual
</a>
@@ -100,9 +100,9 @@
<p><a href="{% if project.id %}{% url 'project' project.id %}{% endif %}">View project configuration</a></p>
</div>
<li id="targets-form">
<h6>Target(s):</h6>
<h6>Recipe(s):</h6>
<form>
<input type="text" class="input-xlarge" id="build-target-input" placeholder="Type a target name" autocomplete="off" data-minLength="1" data-autocomplete="off" data-provide="typeahead" />
<input type="text" class="input-xlarge" id="build-target-input" placeholder="Type a recipe name" autocomplete="off" data-minLength="1" data-autocomplete="off" data-provide="typeahead" />
<div>
<a class="btn btn-primary" id="build-button" disabled="disabled" data-project-id="{{project.id}}">Build</a>
</div>

View File

@@ -11,10 +11,16 @@
<li><a href="{% url 'all-builds' %}">All builds</a></li>
{% block parentbreadcrumb %}
{% if project %}
{% if project_html %}
<li>
{{project.name}}
</li>
{% else %}
<li>
<a href="{%url 'project' project.id %}"><span id="project_name">{{project.name}}</span>
</a>
</li>
{% endif %}
{% endif %}
{% endblock %}
{% block localbreadcrumb %}{% endblock %}

View File

@@ -4,7 +4,24 @@
{% load projecttags %}
{% load humanize %}
{% block extraheadcontent %}
<link rel="stylesheet" href="/static/css/jquery-ui.min.css" type='text/css'>
<link rel="stylesheet" href="/static/css/jquery-ui.structure.min.css" type='text/css'>
<link rel="stylesheet" href="/static/css/jquery-ui.theme.min.css" type='text/css'>
<script src="/static/js/jquery-ui.min.js"></script>
<script src="/static/js/filtersnippet.js"></script>
{% endblock %}
{% block pagecontent %}
<script>
// intiialize the date range controls
$(document).ready(function () {
date_init('started_on','{{last_date_from}}','{{last_date_to}}','{{dateMin_started_on}}','{{dateMax_started_on}}','{{daterange_selected}}');
date_init('completed_on','{{last_date_from}}','{{last_date_to}}','{{dateMin_completed_on}}','{{dateMax_completed_on}}','{{daterange_selected}}');
});
</script>
<div class="row-fluid">
{% include "mrb_section.html" %}

View File

@@ -36,9 +36,9 @@
{% endif %}
<span > <i class="icon-warning-sign yellow"></i><strong><a href="#warnings" class="warning show-warnings"> {{build.warnings_no}} warning{{build.warnings_no|pluralize}}</a></strong></span>
{% endif %}
<span class="pull-right">Build time: <a href="{% url 'buildtime' build.pk %}">{{ build.timespent|sectohms }}</a> &nbsp;
<span class="pull-right">Build time: <a href="{% url 'buildtime' build.pk %}">{{ build.timespent|sectohms }}</a>
{% if MANAGED and build.project %}
<a class="btn {%if build.outcome == build.SUCCEEDED%}btn-success{%else%}btn-danger{%endif%} pull-right" href="{% url 'build_artifact' build.id "cookerlog" build.id %}">Download build log</a>
<a class="btn {%if build.outcome == build.SUCCEEDED%}btn-success{%else%}btn-danger{%endif%} pull-right log" href="{% url 'build_artifact' build.id "cookerlog" build.id %}">Download build log</a>
{% endif %}
</span>
{%endif%}

View File

@@ -55,7 +55,7 @@
<td class="variable_value"><a data-toggle="modal" href="#variable-{{variable.pk}}">{{variable.variable_value|truncatechars:153}}</a></td>
<td class="file"><a data-toggle="modal" href="#variable-{{variable.pk}}">
{% if variable.vhistory.all %} {% autoescape off %}
{{variable.vhistory.all | filter_setin_files:file_filter }}
{{variable.vhistory.all | filter_setin_files:file_filter | cut_layer_path_prefix:layer_names}}
{% endautoescape %} {% endif %}
</a></td>
<td class="description">
@@ -115,7 +115,7 @@
<tbody>
{% for vh in variable.vhistory.all %}
<tr>
<td>{{forloop.counter}}</td><td>{{vh.file_name}}</td><td>{{vh.operation}}</td><td>{{vh.line_number}}</td>
<td>{{forloop.counter}}</td><td>{{vh.file_name|cut_layer_path_prefix:layer_names}}</td><td>{{vh.operation}}</td><td>{{vh.line_number}}</td>
</tr>
{%endfor%}
</tbody>

View File

@@ -0,0 +1,60 @@
{% comment %}
Show pagination controls as per search/pagination table detail spec.
Input: objects, setup for pagination using the standard method in views.
object_count, count for complete list of objects, (all pages, no pattern)
{% endcomment %}
{# only paginate if 10 or more rows unfiltered, all pages #}
{% if object_count >= 10 %}
<div class="pagination">
<ul>
{%if objects.has_previous %}
<li><a href="javascript:reload_params({'page':{{objects.previous_page_number}}})">&laquo;</a></li>
{%else%}
<li class="disabled"><a href="#">&laquo;</a></li>
{%endif%}
{% for i in objects.page_range %}
<li{%if i == objects.number %} class="active" {%endif%}><a href="javascript:reload_params({'page':{{i}}})">{{i}}</a></li>
{% endfor %}
{%if objects.has_next%}
<li><a href="javascript:reload_params({'page':{{objects.next_page_number}}})">&raquo;</a></li>
{%else%}
<li class="disabled"><a href="#">&raquo;</a></li>
{%endif%}
</ul>
<div class="pull-right">
<span class="help-inline" style="padding-bottom:10px;">Show rows:</span>
<select class="pagesize">
{% with "10 25 50 100 150" as list%}
{% for i in list.split %}
<option value="{{i}}">{{i}}</option>
{% endfor %}
{% endwith %}
</select>
</div>
</div>
<!-- Update page display settings -->
<script>
$(document).ready(function() {
// load cookie for number of entries to be displayed on page
if ({{request.GET.count}} != "") {
pagesize = {{request.GET.count}};
} else {
pagesize = $.cookie('_count');
}
$('.pagesize option').prop('selected', false)
.filter('[value="' + pagesize + '"]')
.attr('selected', true);
$(".pagesize").change(function () {
// save cookie with pagesize
$.cookie("_count", $(this).val(), { path : $(location).attr('pathname') });
reload_params({"count":$(this).val()});
});
});
</script>
{% endif %}

View File

@@ -0,0 +1,68 @@
{% comment %}
Show a detail table Search field and Rows per page.
Input:
objects, our boilerplated paginated with search fields set.
object_count, count of full, unfiltered, objects list
search_what, fills in "Search ___"
Only show the search form if we have more than 10 results,
or if return from a previous search.
{% endcomment %}
<script>
$(document).ready(function() {
/* Clear the current search selection and reload the results */
$(".search-clear").click(function(){
$("#search").val("");
$(this).parents("form").submit();
});
});
</script>
<div class="row-fluid">
{% if objects.paginator.count > 10 or request.GET.search %}
{% if objects.paginator.count == 0 %}
<div class="alert">
<h3>No {{search_what}} found</h3>
<form id="searchform" class="input-append">
{% else %}
<form id="searchform" class="navbar-search input-append pull-left">
{% endif %}
<input id="search" class="input-xlarge" type="text" placeholder="Search {{search_what}}" name="search" value="{{request.GET.search}}">
<input type="hidden" value="name:+" name="orderby">
<input type="hidden" value="l" name="page">
{% if request.GET.search %}
<a class="add-on btn search-clear">
<i class="icon-remove"></i>
</a>
{% endif %}
<button type="submit" class="btn">Search</button>
{% if objects.paginator.count == 0 %}
<button type="submit" class="btn btn-link search-clear">
Show all {{search_what}}
</button>
{% endif %}
</form>
{% endif %}
{% if objects.paginator.count == 0 %}
</div> {# end alert #}
{% else %}
{% if object_count > 10 %}
<div class="pull-right">
<span class="help-inline" style="padding-top:5px;">Show rows:</span>
<select style="margin-top:5px;margin-bottom:0px;" class="pagesize">
{% with "10 25 50 100 150" as list%}
{% for i in list.split %}
{% if request.session.limit == i %}
<option value="{{i}}" selected>{{i}}</option>
{% else %}
<option value="{{i}}">{{i}}</option>
{% endif %}
{% endfor %}
{% endwith %}
</select>
</div>
{% endif %}
{% endif %}
</div> {# row-fluid #}

View File

@@ -0,0 +1,25 @@
{% comment %}
Adds sorted columns to a detail table.
Must be preceded by <table class="table table-bordered table-hover tablesorter" id="otable">
Must be followed by <tbody>...</tbody></table>.
Requires tablecols setup column fields dclass, clclass, qhelp, orderfield.
{% endcomment %}
{% load projecttags %}
{# <table class="table table-bordered table-hover tablesorter" id="otable"> #}
<thead>
<!-- Table header row; generated from "tablecols" entry in the context dict -->
<tr>
{% for tc in tablecols %}<th class="{{tc.dclass}} {{tc.clclass}}">
{%if tc.qhelp%}<i class="icon-question-sign get-help" title="{{tc.qhelp}}"></i>{%endif%}
{%if tc.orderfield%}<a {%if tc.ordericon%} class="sorted" {%endif%}href="javascript:reload_params({'page': 1, 'orderby' : '{{tc.orderfield}}' })" onclick="saveOrderCookie('{{tc.orderfield}}')">{{tc.name}}</a>{%else%}<span class="muted">{{tc.name}}</span>{%endif%}
{%if tc.ordericon%} <i class="icon-caret-{{tc.ordericon}}"></i>{%endif%}
{% if request.GET.search and forloop.first %}
<span class="badge badge-info">{{objects.paginator.count}}</span>
{% endif %}
{%if tc.filter%}<div class="btn-group pull-right">
<a href="#filter_{{tc.filter.class}}" role="button" class="btn btn-mini {%if request.GET.filter%}{{tc.filter.options|filtered_icon:request.GET.filter}} {%endif%}" {%if request.GET.filter and tc.filter.options|filtered_tooltip:request.GET.filter %} title="<p>{{tc.filter.options|filtered_tooltip:request.GET.filter}}</p><p><a class='btn btn-small btn-primary' href=javascript:reload_params({'filter':''})>Show all {% if filter_search_display %}{{filter_search_display}}{% else %}{{objectname}}{% endif %}</a></p>" {%endif%} data-toggle="modal"> <i class="icon-filter filtered"></i> </a>
</div>{%endif%}
</th>{% endfor %}
</tr>
</thead>

View File

@@ -1,5 +1,6 @@
{% load projecttags %}
<!-- '{{f.class}}' filter -->
{% with f.class as key %}
<form id="filter_{{f.class}}" class="modal hide fade" tabindex="-1" role="dialog" aria-hidden="true">
<input type="hidden" name="search" value="{{request.GET.search}}"/>
<div class="modal-header">
@@ -13,22 +14,37 @@
<div class="modal-body">
<p>{{f.label}}</p>
<label class="radio">
<input type="radio" name="filter" {%if request.GET.filter%}{{f.options|check_filter_status:request.GET.filter}} {%else%} checked {%endif%} value=""> All {%if filter_search_display%}{{filter_search_display|title}}{%else%}{{objectname|title}}{%endif%} ({{total_count}})
<input type="radio" name="filter" {%if request.GET.filter%}{{f.options|check_filter_status:request.GET.filter}} {%else%} checked {%endif%} value="" data-key="{{key}}"> All {%if filter_search_display%}{{filter_search_display|title}}{%else%}{{objectname|title}}{%endif%}
</label>
{% for option in f.options %}
{% if option.2 %}
<label class="radio">
<input type="radio" name="filter" {%if request.GET.filter == option.1 %}checked{%endif%} value="{{option.1}}"> {{option.0}} (<span id="{{option.1}}_count">{{option.2}}</span>)
{% if option.1 == 'daterange' %}
<div class="form-inline">
<label class="radio">
<input type="radio" name="filter" id="filter_value_{{key}}" {%if key == daterange_selected %}checked{%endif%} value="{{option.1}}" data-key="{{key}}"> {{option.0}}
{% else %}
<label class="radio muted">
<input type="radio" name="filter" disabled {%if request.GET.filter == option.1 %}checked{%endif%} value="{{option.1}}"> {{option.0}} (<span id="{{option.1}}_count">{{option.2}}</span>)
{% if 1 %}
<label class="radio">
<input type="radio" name="filter" {%if request.GET.filter == option.1 %}checked{%endif%} value="{{option.1}}" data-key="{{key}}"> {{option.0}}
{% comment "do not disable radio selections by count for now" %}{% else %}
<label class="radio muted">
<input type="radio" name="filter" disabled {%if request.GET.filter == option.1 %}checked{%endif%} value="{{option.1}}" data-key="{{key}}"> {{option.0}}
{% endcomment %}{% endif %}
{% endif %}
{% if option.3 %}<i class="icon-question-sign get-help" data-placement="right" title="{{option.3}}"></i>{% endif %}
</label>
</label>
{% if option.1 == 'daterange' %}
<input type="text" id="date_from_{{key}}" name="date_from_{{key}}" disabled class="input-small" /><label class="help-inline">to</label>
<input type="text" id="date_to_{{key}}" name="date_to_{{key}}" disabled class="input-small" />
<label class="help-inline get-help" >(dd/mm/yyyy)</label>
</div>
{% endif %}
{% endfor %}
<!-- daterange persistence -->
<input type="hidden" id="last_date_from_{{key}}" name="last_date_from" value="{{last_date_from}}"/>
<input type="hidden" id="last_date_to_{{key}}" name="last_date_to" value="{{last_date_to}}"/>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">Apply</button>
<button type="submit" class="btn btn-primary" data-key="{{key}}">Apply</button>
{% if request.GET.filter %}
{% if request.GET.filter|string_remove_regex:':.*' != f.options.0.1|string_remove_regex:':.*' %}
<span class="help-inline pull-left">You can only apply one filter to the table. This filter will override the current filter.</span>
@@ -36,4 +52,4 @@
{% endif %}
</div>
</form>
{% endwith %}

View File

@@ -14,7 +14,7 @@
$(document).ready(function (){
var ctx = {
xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}",
layerDetailsUrl : "{% url 'layerdetails' %}",
layerDetailsUrl : "{% url 'base_layerdetails' %}",
xhrImportLayerUrl : "{% url 'xhr_importlayer' %}",
xhrEditProjectUrl : "{% url 'xhr_projectedit' project.id %}",
projectPageUrl : "{% url 'project' project.id %}",
@@ -51,26 +51,51 @@
<div class="control-group" id="layer-name-ctrl">
<label class="control-label" for="import-layer-name">
Layer name
<span class="icon-question-sign get-help" title="Something like 'meta-mylayer'. Your layer name must be unique and can only include letters, numbers and dashes" />
<span class="icon-question-sign get-help" title="Something like 'meta-mylayer'. Your layer name must be unique and can only include letters, numbers and dashes"></span>
</label>
<div class="controls">
<input id="import-layer-name" type="text" required autofocus>
<input id="import-layer-name" type="text" required autofocus data-autocomplete="off" data-provide="typeahead">
<span class="help-inline" style="display: none;" id="invalid-layer-name-hint">A valid layer name can only include letters, numbers and dashes</span>
<span class="help-inline" style="display: none;" id="duplicated-layer-name-hint"></span>
</div>
</div>
<span id="duplicate-layer-info" style="display:none">
<div class="alert warning">
<h3>A layer called <a href="" class="dup-layer-link"><span class="dup-layer-name"></span></a> already exists</h3>
<p>Layer names must be unqiue. Please use a different layer name.</p>
</div>
<dl>
<dt>
The <span class="dup-layer-name"></span> repository url is
</dt>
<dd>
<span id="dup-layer-vcs-url"></span>
</dd>
<dt>
The <span class="dup-layer-name"></span> revision is
</dt>
<dd>
<span id="dup-layer-revision"></span>
</dd>
</dl>
<p><a href="" class="dup-layer-link">View the <span class="dup-layer-name"></span> layer information</a></p>
</span>
<span class="fields-apart-from-layer-name">
<label for="layer-git-repo-url" class="project-form">
Git repository URL
<span class="icon-question-sign get-help" title="Fetch/clone URL of the repository. Currently, Toaster only supports Git repositories." />
<span class="icon-question-sign get-help" title="Fetch/clone URL of the repository. Currently, Toaster only supports Git repositories." ></span>
</label>
<input type="text" id="layer-git-repo-url" class="input-xxlarge" required>
<label class="project-form" for="layer-subdir">
Repository subdirectory
<span class="muted">(optional)</span>
<span class="icon-question-sign get-help" title="Subdirectory within the repository where the layer is located, if not in the root (usually only used if the repository contains more than one layer)" />
<span class="icon-question-sign get-help" title="Subdirectory within the repository where the layer is located, if not in the root (usually only used if the repository contains more than one layer)"></span>
</label>
<input type="text" id="layer-subdir">
@@ -83,13 +108,16 @@
<span class="help-inline" style="diaply:none;" id="invalid-layer-revision-hint"></span>
</div>
</div>
</span>
</fieldset>
<span class="fields-apart-from-layer-name">
<fieldset class="air">
<legend>
Layer dependencies
<span class="muted">(optional)</span>
<span class="icon-question-sign get-help heading-help" title="Other layers this layer depends upon" />
<span class="icon-question-sign get-help heading-help" title="Other layers this layer depends upon"></span>
</legend>
<ul class="unstyled configuration-list" id="layer-deps-list">
</ul>
@@ -105,6 +133,7 @@
<button class="btn btn-primary btn-large" data-toggle="modal" id="import-and-add-btn" data-target="#dependencies-message" disabled>Import and add to project</button>
<span class="help-inline" id="import-and-add-hint" style="vertical-align: middle;">To import a layer, you need to enter a repository URL, a branch, tag or commit and a layer name</span>
</div>
</span>
</form>
{% endblock %}

View File

@@ -9,80 +9,64 @@
<div class="container-fluid">
<div class="row-fluid">
<!-- Empty - no data in database -->
<div class="hero-unit span12" {%if MANAGED%}style="background-color: white"{%endif%}>
{% if not MANAGED %}
<button class="close" data-dismiss="alert" type="button">
×
</button>
{% endif %}
<div class="hero-unit span12 {%if MANAGED%}well-transparent{%endif%}">
<div class="row-fluid">
<div class="span6">
<h1>
This is Toaster
</h1>
<p>
A web interface to
<a href="http://www.yoctoproject.org/tools-resources/projects/bitbake">
BitBake
</a>
, the
<a href="http://www.yoctoproject.org">
Yocto Project
</a>
build system.
</p>
<p>A web interface to <a href="http://www.yoctoproject.org/tools-resources/projects/bitbake">BitBake</a>, the <a href="http://www.yoctoproject.org">Yocto Project</a> build system.</p>
{% if MANAGED %}
{% if lvs_nos %}
<p class="hero-actions">
<a class="btn btn-primary btn-large" href="{% url 'newproject' %}">
To start building, create your first Toaster project
</a>
</p>
<p class="hero-actions">
<a class="btn btn-primary btn-large" href="{% url 'newproject' %}">
To start building, create your first Toaster project
</a>
</p>
{% else %}
<div class="alert alert-info">
<p>
Toaster has no layer information; without layer information, you cannot run builds. To generate layer information you can:
</p>
<ul>
<li> <a href="https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster#LayerSources">Configure a layer source</a>
</li>
<li> <a href="{% url 'newproject' %}">Create a project</a>, then import layers
</ul>
</div>
{% endif %}
<div class="alert alert-info lead air">
Toaster has no layer information. Without layer information, you cannot run builds. To generate layer information you can:
<ul>
<li>
<a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#layer-source">Configure a layer source</a>
</li>
<li>
<a href="{% url 'newproject' %}">Create a project</a>, then import layers
</li>
</ul>
</div>
{% endif %}
<p style="margin-top: 2em">
<a href="https://www.yoctoproject.org/documentation/toaster-manual">
Read the Toaster manual
</a> <br/>
<a href="https://wiki.yoctoproject.org/wiki/Contribute_to_Toaster">
Contribute to Toaster
</a>
</p>
<ul class="unstyled">
<li>
<a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html">Read the Toaster manual</a>
</li>
<li>
<a href="https://wiki.yoctoproject.org/wiki/Contribute_to_Toaster">Contribute to Toaster</a>
</li>
</ul>
{% else %}
{% else %}
<p class="hero-actions">
<a class="btn btn-primary btn-large" href="https://www.yoctoproject.org/documentation/toaster-manual">
Show me the manual
</a>
<a class="btn btn-large" href="https://wiki.yoctoproject.org/wiki/Contribute_to_Toaster">
I want to contribute
</a>
</p>
<p class="hero-actions">
<a class="btn btn-primary btn-large" href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html">
Show me the manual
</a>
<a class="btn btn-large" href="https://wiki.yoctoproject.org/wiki/Contribute_to_Toaster">
I want to contribute
</a>
</p>
{% endif %}
{% endif %}
</div>
<div class="span5">
<a href="http://www.yoctoproject.org">
<div class="span6">
{% if MANAGED %}
<img alt="Yocto Project" class="thumbnail" src="{% static 'img/toaster_1.7.png' %}"/>
{% else %}
<img alt="Yocto Project" class="thumbnail" src="{% static 'img/toaster.png' %}"/>
{% endif %}
</a>
<img alt="Yocto Project" class="thumbnail" src="{% static 'img/toaster_1.7.png' %}"/>
{% else %}
<img alt="Yocto Project" class="thumbnail" src="{% static 'img/toaster.png' %}"/>
{% endif %}
</div>
</div>
</div>

View File

@@ -11,17 +11,17 @@
<!-- Empty - no build module -->
<div class="page-header top-air">
<h1>
This page only works with the Toaster 'Build' mode
This page only works with Toaster in 'Build' mode
</h1>
</div>
<div class="alert alert-info">
<p class="lead">
The 'Build' mode allows you to configure and run your Yocto Project builds from Toaster
<div class="alert alert-info lead">
<p">
The 'Build' mode allows you to configure and run your Yocto Project builds from Toaster.
<ul>
<li class="lead"><a href="https://wiki.yoctoproject.org/wiki/Toaster#Modes">
<li><a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#intro-modes">
Read about the 'Build' mode
</a></li>
<li class="lead"><a href="/">
<li><a href="/">
View your builds
</a></li>
</ul>

View File

@@ -17,7 +17,7 @@
$(document).ready(function (){
var ctx = {
projectBuildUrl : "{% url 'xhr_build' %}",
layerDetailsUrl : "{% url 'layerdetails' %}",
layerDetailsUrl : "{% url 'base_layerdetails' %}",
projectPageUrl : "{% url 'project' project.id %}",
xhrEditProjectUrl : "{% url 'xhr_projectedit' project.id %}",
xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}",
@@ -66,7 +66,11 @@
{% include "layers_dep_modal.html" %}
<div class="row-fluid span11">
<div class="page-header">
<h1>{{layerversion.layer.name}} <small class="commit" data-toggle="tooltip" title="{{layerversion.get_vcs_reference}}">({{layerversion.get_vcs_reference|truncatechars:13}})</small></h1>
<h1>{{layerversion.layer.name}} <small class="commit"
{% if layerversion.get_vcs_reference|length > 13 %}
data-toggle="tooltip" title="{{layerversion.get_vcs_reference}}"
{% endif %}>
({{layerversion.get_vcs_reference|truncatechars:13}})</small></h1>
</div>
</div>
@@ -80,7 +84,7 @@
<a data-toggle="tab" href="#information" id="details-tab">Layer details</a>
</li>
<li>
<a data-toggle="tab" href="#targets" id="targets-tab">Targets ({{total_targets}})</a>
<a data-toggle="tab" href="#targets" id="targets-tab">Recipes ({{total_targets}})</a>
</li>
<li>
<a data-toggle="tab" href="#machines" id="machines-tab">Machines ({{total_machines}})</a>
@@ -186,7 +190,8 @@
<div name="targets" id="targets" class="tab-pane">
{% if total_targets == 0 %}
<div class="alert alert-info">
There is no target information for the <strong> {{layerversion.layer.name}} </strong> layer.
<p>Toaster does not have recipe information for the <strong> {{layerversion.layer.name}} </strong> layer.</p>
<p>Toaster learns about layers when you build them. If this layer provides any recipes, they will be listed here after you build the <strong> {{layerversion.layer.name}} </strong> layer.</p>
</div>
{% else %}
@@ -205,7 +210,7 @@
<form class="navbar-search input-append pull-left">
{% endif %}
<input type="text" id="target-search" name="targets_search" placeholder="Search targets" class="input-xlarge" value="{{request.GET.targets_search}}">
<input type="text" id="target-search" name="targets_search" placeholder="Search recipes" class="input-xlarge" value="{{request.GET.targets_search}}">
{% if request.GET.targets_search %}
<a class="add-on btn target-search-clear">
<i class="icon-remove"></i>
@@ -248,17 +253,17 @@
<tr>
<th>
<i class="icon-question-sign get-help" title="Information about a single piece of software, including where to download the source, configuration options, how to compile the source files and how to package the compiled output"></i>
Target
Recipe
{% if request.GET.targets_search %}
<span class="badge badge-info">{{targets.paginator.count}}</span>
{% endif %}
</th>
<th>
<i class="icon-question-sign get-help" title="The recipe version and revision"></i>
Target version
Recipe version
</th>
<th class="span4">Summary</th>
<th class="span2">Build target</th>
<th class="span2">Build recipe</th>
</tr>
</thead>
<tbody>
@@ -272,7 +277,7 @@
</td>
<td>{{target.version}}</td>
<td>{{target.summary}}</td>
<td><button class="btn btn-block build-target-btn" data-target-name="{{target.name}}" {% if layer_in_project == 0 %}disabled="disabled"{% endif %} >Build target</button></td>
<td><button class="btn btn-block build-target-btn" data-target-name="{{target.name}}" {% if layer_in_project == 0 %}disabled="disabled"{% endif %} >Build recipe</button></td>
</tr>
{% endfor %}
</tbody>
@@ -320,7 +325,8 @@
<div name="machines" id="machines" class="tab-pane">
{% if total_machines == 0 %}
<div class="alert alert-info">
There is no machine information for the <strong>{{layerversion.layer.name}}</strong> layer.
<p>Toaster does not have machine information for the <strong> {{layerversion.layer.name}} </strong> layer.</p>
<p>Toaster learns about layers when you build them. If this layer provides any machines, they will be listed here after you build the <strong> {{layerversion.layer.name}} </strong> layer.</p>
</div>
{% else %}

View File

@@ -9,9 +9,9 @@
{% block projectinfomain %}
<div class="page-header">
<h1>
{% if request.GET.filter and total_count > 0 or request.GET.search and total_count > 0 %}
{{total_count}} layer{{total_count|pluralize}} found
{% elif request.GET.filter and total_count == 0 or request.GET.search and total_count == 0 %}
{% if request.GET.filter and objects.paginator.count > 0 or request.GET.search and objects.paginator.count > 0 %}
{{objects.paginator.count}} layer{{objects.paginator.count|pluralize}} found
{% elif request.GET.filter and objects.paginator.count == 0 or request.GET.search and objects.paginator.count == 0 %}
No layers found
{%else%}
All compatible layers
@@ -24,6 +24,7 @@
</div>
{% if objects.paginator.count == 0 %}
{% if request.GET.filter or request.GET.search %}
<div class="row-fluid">
<div class="alert">
<form class="no-results input-append" id="searchform">
@@ -33,6 +34,15 @@
</form>
</div>
</div>
{% else %}
<div class="alert alert-info lead">
<p>Toaster has no layer information. To generate layer information you can:</p>
<ul>
<li><a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#layer-source">Configure a layer source</a></li>
<li><a href="{% url 'importlayer' %}">Import a layer</a></li>
</ul>
</div>
{% endif %}
{% else %}
@@ -52,12 +62,15 @@
{% endif %}
</td>
<td class="branch">
{% if o.branch %}
{{o.branch}}
{% else %}
{{o.up_branch.name}}
<i class="icon-question-sign get-help hover-help" title="Your builds will use the tip of the branch you have cloned or downloaded to your computer, so nothing will be fetched"></i>
{% endif %}
{% with vcs_ref=o.get_vcs_reference %}
{% if vcs_ref|is_shaid %}
<a class="btn" data-content="<ul class='unstyled'> <li>{{vcs_ref}}</li> </ul>">
{{vcs_ref|truncatechars:10}}
</a>
{% else %}
{{vcs_ref}}
{% endif %}
{% endwith %}
</td>
<td class="dependencies">
{% with ods=o.dependencies.all%}

View File

@@ -59,10 +59,8 @@
</form>
</div>
{% else %}
<div class="alert alert-info">
<p class="lead">
Toaster has no machine information. To fetch machine information you should <a href="https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster#LayerSources">configure a layer source</a>
</p>
<div class="alert alert-info lead">
Toaster has no machine information. To generate machine information you should <a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#layer-source">configure a layer source</a>
</div>
{% endif %}

View File

@@ -4,7 +4,24 @@
{% load projecttags %}
{% load humanize %}
{% block extraheadcontent %}
<link rel="stylesheet" href="/static/css/jquery-ui.min.css" type='text/css'>
<link rel="stylesheet" href="/static/css/jquery-ui.structure.min.css" type='text/css'>
<link rel="stylesheet" href="/static/css/jquery-ui.theme.min.css" type='text/css'>
<script src="/static/js/jquery-ui.min.js"></script>
<script src="/static/js/filtersnippet.js"></script>
{% endblock %}
{% block pagecontent %}
<script>
// initialize the date range controls
$(document).ready(function () {
date_init('created','{{last_date_from}}','{{last_date_to}}','{{dateMin_created}}','{{dateMax_created}}','{{daterange_selected}}');
date_init('updated','{{last_date_from}}','{{last_date_to}}','{{dateMin_updated}}','{{dateMax_updated}}','{{daterange_selected}}');
});
</script>
<div class="row-fluid">
{% include "managed_mrb_section.html" %}
@@ -47,7 +64,7 @@
{% for buildrequest in objects %}{% if buildrequest.build %} {% with build=buildrequest.build %} {# if we have a build, just display it #}
<tr class="data">
<td class="outcome"><a href="{% url "builddashboard" build.id %}">{%if build.outcome == build.SUCCEEDED%}<i class="icon-ok-sign success"></i>{%elif build.outcome == build.FAILED%}<i class="icon-minus-sign error"></i>{%else%}{%endif%}</a>
{% if build.project %}
{% if build.project %}
&nbsp; <a href="{% url 'build_artifact' build.id "cookerlog" build.id %}">
<i class="icon-download-alt" title="" data-original-title="Download build log"></i>
</a>

View File

@@ -3,6 +3,7 @@
{% load humanize %}
{%if mru|length > 0%}
{# Template provides the latest builds section requires mru in the context which can be added from _managed_get_latest_builds #}
<div class="page-header top-air">
<h1>
Latest builds
@@ -54,8 +55,7 @@
Build time: <a href="{% url 'buildtime' build.pk %}">{{ build.timespent|sectohms }}</a>
</span>
{% if build.project %}
<button class="btn {%if build.outcome == build.SUCCEEDED%}btn-success{%elif build.outcome == build.FAILED%}btn-danger{%else%}btn-info{%endif%} pull-right" onclick='scheduleBuild({% url 'xhr_projectbuild' build.project.id as bpi%}{{bpi|json}}, {{build.project.name|json}},
{% url 'project' buildrequest.project.id as bpurl%}{{bpurl|json}}, {{build.get_sorted_target_list|mapselect:'target'|json}})'>Run again</button>
<button class="btn {%if build.outcome == build.SUCCEEDED%}btn-success{%elif build.outcome == build.FAILED%}btn-danger{%else%}btn-info{%endif%} pull-right" onclick='scheduleBuild({% url 'xhr_projectbuild' build.project.id as bpi%}{{bpi|json}}, {{build.project.name|json}}, {% url 'project' buildrequest.project.id as bpurl%}{{bpurl|json}}, {{build.get_sorted_target_list|mapselect:'target'|json}})'>Run again</button>
{% endif %}
</div>
{%endif%}
@@ -65,7 +65,7 @@
<div style="width: {{build.completeper}}%;" class="bar"></div>
</div>
</div>
<div class="lead pull-right">ETA: in {{build.eta|naturaltime}}</div>
<div class="lead pull-right">{{build.completeper}}% tasks completed</div>
{%endif%}
</div>
</div>
@@ -105,7 +105,7 @@
<span class="lead{%if not MANAGED or not buildrequest.project%} pull-right{%endif%}">
Build time: {{ buildrequest.get_duration|sectohms }}
</span>
<button class="btn btn-danger pull-right" onclick='scheduleBuild({% url 'xhr_projectbuild' buildrequest.project.id as bpi%}{{bpi|json}}, {{buildrequest.project.name|json}}, {% url 'project' buildrequest.project.id as bpurl%}|{{bpurl|json}}, {{buildrequest.get_sorted_target_list|mapselect:'target'|json}})'>Run again</button>
<button class="btn btn-danger pull-right" onclick='scheduleBuild({% url 'xhr_projectbuild' buildrequest.project.id as bpi%}{{bpi|json}}, {{buildrequest.project.name|json}}, {% url 'project' buildrequest.project.id as bpurl%}{{bpurl|json}}, {{buildrequest.get_sorted_target_list|mapselect:'target'|json}})'>Run again</button>
</div>
@@ -119,6 +119,7 @@
<div class="span4 lead">Build queued
<i title="This build will start as soon as a build server is available" class="icon-question-sign get-help get-help-blue heading-help" data-toggle="tooltip"></i>
</div>
<button class="btn btn-info pull-right cancel-build-btn" data-build-id="{{buildrequest.id}}" data-request-url="{% url 'xhr_projectbuild' buildrequest.project.id %}" >Cancel</button>
{% elif buildrequest.state == buildrequest.REQ_CREATED %}
@@ -156,38 +157,26 @@
<script>
/* ensure csrf cookie exists {% csrf_token %} */
function _makeXHRBuildCall(url, data, onsuccess, onfail) {
$.ajax( {
type: "POST",
url: url,
data: data,
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error != "ok") {
alert(_data.error);
} else {
if (onsuccess != undefined) onsuccess(_data);
}
},
error: function (_data) {
alert("Call failed");
console.log(_data);
if (onfail) onfail(data);
} });
}
function scheduleBuild(url, projectName, projectUrl, buildlist) {
console.log("scheduleBuild");
_makeXHRBuildCall(url, {targets: buildlist.join(" ")}, function (_data) {
$('#latest-builds').prepend("<div class=\"alert alert-info project-name\"><span class=\"label label-info\"><a href=\""+projectUrl+"\">"+projectName+"</a></span><div class=\"row-fluid\">" +
"<div class=\"span5 lead\">" + buildlist.join(" ") +
"</div><div class=\"span4 lead\">Build queued <i title=\"This build will start as soon as a build server is available\" class=\"icon-question-sign get-help get-help-blue heading-help\"></i></div></div></div>");
});
libtoaster.startABuild(url, null, buildlist.join(" "), function(){
window.location.reload();
}, null);
}
$(document).ready(function(){
$(".cancel-build-btn").click(function (){
var url = $(this).data('request-url');
var buildIds = $(this).data('build-id');
var btn = $(this);
libtoaster.cancelABuild(url, buildIds, function(){
btn.parents(".alert").fadeOut();
}, null);
});
});
</script>
{%endif%}

View File

@@ -50,9 +50,6 @@
<span class="lead{%if not MANAGED or not build.project%} pull-right{%endif%}">
Build time: <a href="{% url 'buildtime' build.pk %}">{{ build.timespent|sectohms }}</a>
</span>
{% if MANAGED and build.project %}
<a class="btn {%if build.outcome == build.SUCCEEDED%}btn-success{%elif build.outcome == build.FAILED%}btn-danger{%else%}btn-info{%endif%} pull-right" onclick="scheduleBuild({% url 'xhr_projectbuild' build.project.id as bpi%}{{bpi|json}}, {{build.project.name|json}}, {{build.get_sorted_target_list|mapselect:'target'|json}})">Run again</a>
{% endif %}
</div>
{%endif%}
{%if build.outcome == build.IN_PROGRESS %}
@@ -68,41 +65,5 @@
{% endfor %}
</div>
<script>
function _makeXHRBuildCall(url, data, onsuccess, onfail) {
$.ajax( {
type: "POST",
url: url,
data: data,
headers: { 'X-CSRFToken' : $.cookie('csrftoken')},
success: function (_data) {
if (_data.error != "ok") {
console.warn(_data.error);
} else {
if (onsuccess != undefined) onsuccess(_data);
}
},
error: function (_data) {
console.warn("Call failed");
console.warn(_data);
if (onfail) onfail(data);
} });
}
function scheduleBuild(url, projectName, buildlist) {
console.warn("scheduleBuild");
_makeXHRBuildCall(url, {targets: buildlist.join(" ")}, function (_data) {
$('#latest-builds').prepend('<div class="alert alert-info" style="padding-top:0px">' + '<span class="label label-info" style="font-weight: normal; margin-bottom: 5px; margin-left:-15px; padding-top:5px;">'+projectName+'</span><div class="row-fluid">' +
'<div class="span4 lead">' + buildlist.join(" ") +
'</div><div class="span4 lead pull-right">Build queued. Your build will start shortly.</div></div></div>');
});
}
</script>
{%endif%}

View File

@@ -15,22 +15,22 @@ vim: expandtab tabstop=2
<script src="{% static "js/angular-sanitize.min.js" %}"></script>
<script src="{% static "js/ui-bootstrap-tpls-0.11.0.js" %}"></script>
{% if lvs_nos == 0 %}
<div class="alert alert-info">
<p>
Toaster has no layer information; without layer information, you cannot run builds.<br/> To generate layer information you can:
</p>
<ul>
<li> <a href="https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster#LayerSources">Configure a layer source</a>
</li>
<li> <a href="{% url 'importlayer' %}">Import a layer</a>
</ul>
<div class="page-header">
<h1> {{ project.name }} </h1>
</div>
<div class="alert alert-info lead">
<p>Toaster has no layer information. Without layer information, you cannot run builds. To generate layer information you can:</p>
<ul>
<li> <a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#layer-source">Configure a layer source</a></li>
<li> <a href="{% url 'importlayer' %}">Import a layer</a></li>
</ul>
</div>
{%else%}
<div id="main" role="main" ng-app="project" ng-controller="prjCtrl" class="top-padded">
<div id="main" role="main" ng-app="project" ng-controller="prjCtrl" class="top-padded">
<!-- project name -->
<div class="page-header">
@@ -77,14 +77,14 @@ vim: expandtab tabstop=2
<script type="text/ng-template" id="change_version_modal">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">x</button>
<h3>Changing release to {[releaseName]}</h3>
<h3>Changing release to {[releaseDescription]}</h3>
</div>
<div class="modal-body">
<p>The following project layers do not exist for {[releaseName]}:</p>
<p>The following project layers do not exist for the {[releaseDescription]} release:</p>
<ul>
<li ng-repeat="i in items"><span class="layer-info" data-toggle="tooltip" tooltip="{[i.detail]}">{[i.name]}</span></li>
</ul>
<p>If you change the release to {[releaseName]}, the above layers will be deleted from your project layers.</p>
<p>If you change the release to {[releaseDescription]}, the above layers will be deleted from your project.</p>
</div>
<div class="modal-footer">
<button class="btn btn-primary" ng-click="ok()">Change release and delete layers</button>
@@ -104,15 +104,15 @@ vim: expandtab tabstop=2
<div class="well">
<form class="build-form" ng-submit="buildNamedTarget()">
<div class="input-append controls">
<input type="text" class="huge input-xxlarge" placeholder="Type the target(s) you want to build" autocomplete="off" ng-model="targetName" typeahead="e.name for e in getAutocompleteSuggestions('targets', $viewValue)|filter:$viewValue" typeahead-template-url="suggestion_details" ng-disabled="!layers.length"/>
<input type="text" class="huge input-xxlarge" placeholder="Type the recipe(s) you want to build" autocomplete="off" ng-model="targetName" typeahead="e.name for e in getAutocompleteSuggestions('targets', $viewValue)|filter:$viewValue" typeahead-template-url="suggestion_details" ng-disabled="!layers.length"/>
<button type="submit" class="btn btn-large btn-primary" ng-disabled="!targetName.length">
Build
</button>
</div>
<i class="icon-question-sign get-help get-help-blue" title="Type the name of one or more targets you want to build, separated by a space. You can also specify a task by appending a semicolon and a task name to a target name, like so: <code>core-image-minimal:do_build</code>"></i>
<i class="icon-question-sign get-help get-help-blue" title="Type the name of one or more recipes you want to build, separated by a space. You can also specify a task by appending a semicolon and a task name to a recipe name, like so: <code>core-image-minimal:do_build</code>"></i>
<p>
<a href="{% url 'all-targets' %}">View all compatible targets</a>
<i class="icon-question-sign get-help get-help-blue heading-help" title="View all the targets you can build with the release selected for this project, which is {[project.release.desc]}"></i>
<a href="{% url 'all-targets' %}">View all compatible recipes</a>
<i class="icon-question-sign get-help get-help-blue heading-help" title="View all the recipes you can build with the release selected for this project, which is {[project.release.desc]}"></i>
{% if completedbuilds.count %}
| <a href="{% url 'projectbuilds' project.id %}">View all project builds ({{completedbuilds.count}})</a>
{% endif %}
@@ -130,29 +130,35 @@ vim: expandtab tabstop=2
<switch ng-switch="b.status">
<case ng-switch-when="failed">
<div class="lead span3"> <span ng-repeat="t in b.targets" ng-include src="'target_display'"></span></div>
<div >
<button class="btn pull-right btn-danger" ng-click="buildExistingTarget(b.targets)">Run again</button>
<div class="lead span3">
<a ng-class="{'succeeded': 'success', 'failed': 'error'}[b.status]" href="{[b.br_page_url]}">
<span ng-repeat="t in b.targets" ng-include src="'target_display'"></span>
</a>
</div>
<div class="row-fluid">
<div class="air well" ng-repeat="e in b.errors">
<pre>{[e.msg]}</pre>
<ngif ng-if="e.msg.indexOf('Nothin') == 0">
<div ng-repeat="t in getTargetNameFromErrorMsg(e.msg)">
<p class="lead">The target <strong>{[t]}</strong> is not provided by any of your project layers.</p>
<p> Your build has failed because the target <strong>{[t]}</strong> is not provided by any of your project layers.</p>
<ngif ng-if="layersForTargets[t].length > 0">
<p>The following layers provide this target. You could add one of them to your project.</p>
<button class="btn btn-danger add-layer-with-dependencies" ng-repeat="l in layersForTargets[t]" ng-click="layerAddById(l.id)">Add {[l.name]}</button>
</ngif>
</div>
</ngif>
<ngif ng-if="e.msg.indexOf('Nothin') != 0">
<p>
Please contact your system administrator to help troubleshoot this error.
</p>
</ngif>
</div>
<div class="span2 lead">
<ngif ng-if="b.updated - todaydate > 0">
{[b.updated|date:'HH:mm']}
</ngif>
<ngif ng-if="b.updated - todaydate < 0">
{[b.updated|date:'dd/MM/yy HH:mm']}
</ngif>
</div>
<div class="span2">
<ngif ng-if="b.errors.length">
<span>
<i class="icon-minus-sign red lead"></i>
<a href="{[b.br_page_url]}#errors" class="lead error">{[b.errors.length]}
<ng-pluralize count="b.errors.length" when="{'1':'error','other':'errors'}"></ng-pluralize></a>
</span>
</ngif>
</div>
<div class="span2">
<!-- we don't have warnings in this case -->
</div>
<div> <span class="lead">Build time: {[b.command_time|timediff]}</span>
<button class="btn pull-right" ng-class="{'succeeded': 'btn-success', 'failed': 'btn-danger'}[b.status]"
ng-click="buildExistingTarget(b.targets)">Run again</button>
</div>
</case>
@@ -196,13 +202,17 @@ vim: expandtab tabstop=2
<div style="width: {[b.build[0].completeper]}%;" class="bar"></div>
</div>
</div>
<div class="text-right lead">ETA in {[b.build[0].eta|toeta|timediff]}</div>
<div class="text-right lead">{[b.build[0].completeper]}% tasks completed</div>
</case>
</case>
<case ng-switch-when="completed">
<div class="lead span3"><a class="success" href="{[b.build[0].build_page_url]}"><span ng-repeat="t in b.targets" ng-include src="'target_display'"></span></a></div>
<div class="lead span3">
<a ng-class="{'Succeeded': 'success', 'Failed': 'error'}[b.build[0].status]" href="{[b.build[0].build_page_url]}">
<span ng-repeat="t in b.targets" ng-include src="'target_display'"></span>
</a>
</div>
<div class="span2 lead">
<ngif ng-if="b.build[0].completed_on - todaydate > 0">
{[b.build[0].completed_on|date:'HH:mm']}
@@ -261,7 +271,7 @@ vim: expandtab tabstop=2
<div id="layer-container" class="well well-transparent span4">
<h3>
Layers <span class="muted counter">({[layers.length]})</span>
<i class="icon-question-sign get-help heading-help" title="OpenEmbedded organises metadata into modules called 'layers'. Layers allow you to isolate different types of customizations from each other. <a href='http://www.yoctoproject.org/docs/current/dev-manual/dev-manual.html#understanding-and-creating-layers' target='_blank'>More on layers</a>"></i>
<i class="icon-question-sign get-help heading-help" title="Bitbake reads metadata files from modules called 'layers'. Layers allow you to isolate different types of customizations from each other. <a href='http://www.yoctoproject.org/docs/current/dev-manual/dev-manual.html#understanding-and-creating-layers' target='_blank'>More on layers</a>"></i>
</h3>
<div class="alert" ng-if="!layers.length">
<b>You need to add some layers </b>
@@ -289,7 +299,7 @@ vim: expandtab tabstop=2
<a href="{% url 'importlayer' %}">Import layer</a></p>
<ul class="unstyled configuration-list">
<li ng-repeat="l in layers track by l.id" class="animate-repeat">
<a href="{[l.layerdetailurl]}" target="_#" class="layer-info" data-toggle="tooltip" tooltip="{[l.giturl]} | {[l.branch.name]}">{[l.name]}</a>
<a href="{[l.layerdetailurl]}" class="layer-info" data-toggle="tooltip" tooltip-placement="right" tooltip="{[l.giturl]} | {[l.branch.name]}">{[l.name]}</a>
<i class="icon-trash" ng-click="layerDel(l.id)" tooltip="Delete"></i>
</li>
</ul>
@@ -299,33 +309,33 @@ vim: expandtab tabstop=2
<!-- project targets -->
<div id="target-container" class="well well-transparent span4">
<h3>
Targets
<i class="icon-question-sign get-help heading-help" title="What you build, often a recipe producing a root file system file (an image). Something like <code>core-image-minimal</code> or <code>core-image-sato</code>"></i>
Recipes
<i class="icon-question-sign get-help heading-help" title="What you build, often an image recipe that produces a root file system file. Something like <code>core-image-minimal</code> or <code>core-image-sato</code>"></i>
</h3>
<form ng-submit="buildNamedTarget()">
<div class="input-append">
<input type="text" class="input-xlarge" placeholder="Type the target(s) you want to build" autocomplete="off" data-minLength="1" ng-model="targetName1" typeahead="e.name for e in getAutocompleteSuggestions('targets', $viewValue)|filter:$viewValue" typeahead-template-url="suggestion_details" ng-disabled="!layers.length">
<input type="text" class="input-xlarge" placeholder="Type the recipe(s) you want to build" autocomplete="off" data-minLength="1" ng-model="targetName1" typeahead="e.name for e in getAutocompleteSuggestions('targets', $viewValue)|filter:$viewValue" typeahead-template-url="suggestion_details" ng-disabled="!layers.length">
<button type="submit" class="btn btn-primary" ng-disabled="!targetName1.length">
Build </button>
</div>
{% csrf_token %}
</form>
<p>
<a href="{% url 'all-targets' %}">View all compatible targets</a>
<i class="icon-question-sign get-help" title="View all the targets you can build with the release selected for this project, which is {[project.release.desc]}"></i>
<a href="{% url 'all-targets' %}">View all compatible recipes</a>
<i class="icon-question-sign get-help" title="View all the recipes you can build with the release selected for this project, which is {[project.release.desc]}"></i>
</p>
<div ng-if="frequenttargets.length">
<h4 class="air">
Most built targets
Most built recipes
</h4>
<ul class="unstyled configuration-list">
<ul class="unstyled configuration-list {[mutedtargets]}">
<li ng-repeat="t in frequenttargets">
<label class="checkbox">
<input type="checkbox" ng-model="mostBuiltTargets[t]">{[t]}
<input type="checkbox" ng-model="mostBuiltTargets[t]" ng-disabled="disableBuildCheckbox(t)" ng-checked="mostBuiltTargets[t] && !disableBuildCheckbox(t)">{[t]}
</label>
</li>
</ul>
<button class="btn btn-large btn-primary" ng-disabled="enableBuildSelectedTargets()" ng-click="buildSelectedTargets()">Build selected targets</button>
<button class="btn btn-large btn-primary" ng-disabled="enableBuildSelectedTargets()" ng-click="buildSelectedTargets()">Build selected recipes</button>
</div>
</div>
@@ -345,7 +355,7 @@ vim: expandtab tabstop=2
You cannot really compare the builds for the new machine with the previous ones.
</div>
<form ng-submit="editProjectSettings('#select-machine')" class="input-append">
<input type="text" id="machine" autocomplete="off" ng-model="machineName" typeahead="m.name for m in getAutocompleteSuggestions('machines', $viewValue)"/>
<input type="text" id="machine" autocomplete="off" ng-model="machineName" value="{[machine.name]}" typeahead="m.name for m in getAutocompleteSuggestions('machines', $viewValue)" typeahead-template-url="suggestion_details" />
<input type="submit" id="apply-change-machine" class="btn" type="button" ng-disabled="machineName == machine.name || machineName.length == 0" value="Save"></input>
<input type="reset" id="cancel-machine" class="btn btn-link" ng-click="toggle('#select-machine')" value="Cancel"></input>
{% csrf_token %}
@@ -381,18 +391,17 @@ vim: expandtab tabstop=2
</p>
<div id="change-project-name" style="display:none;">
<form ng-submit="editProjectSettings('#change-project-name')" class="input-append">
<input type="text" class="input-xlarge" id="type-project-name" ng-model="projectName">
<input type="text" class="input-xlarge" id="type-project-name" ng-model="projectName" value="{[project.name]}">
<input type="submit" class="btn" value="Save" ng-disabled="project.name == projectName"/>
<input type="reset" class="btn btn-link" value="Cancel" ng-click="toggle('#change-project-name')">
</form>
</div>
<h3>
<h3 ng-if="releases.length > 1">
Release
<i class="icon-question-sign get-help heading-help" title="The version of the build system you want to use"></i>
</h3>
<p class="lead" id="change-project-version-opposite">
<p ng-if="releases.length > 1" class="lead" id="change-project-version-opposite">
<span id="project-version">{[project.release.desc]}</span>
<i id="change-version" class="icon-pencil" ng-click="toggle('#change-project-version')" ></i>
</p>
@@ -402,7 +411,7 @@ vim: expandtab tabstop=2
<option ng-repeat="r in releases" value="{[r.id]}" ng-selected="r.id == project.release.id">{[r.description]}</option>
</select>
<input type="submit" class="btn" style="margin-left:5px;" value="Save" ng-disabled="project.release.id == projectVersion"/>
<input type="reset" class="btn btn-link" value="Cancel" ng-click="toggle('#change-project-version')" ng-disabled="project.release.id == projectVersion"/>
<input type="reset" class="btn btn-link" value="Cancel" ng-click="toggle('#change-project-version')"/>
</form>
</div>
@@ -424,9 +433,9 @@ angular.element(document).ready(function() {
scope.urls.xhr_edit = "{% url 'xhr_projectedit' project.id %}";
scope.urls.xhr_datatypeahead = "{% url 'xhr_datatypeahead' %}";
scope.urls.layers = "{% url 'layers' %}";
scope.urls.targets = "{% url 'targets' %}";
scope.urls.targets = "{% url 'all-targets' %}";
scope.urls.importlayer = "{% url 'importlayer'%}";
scope.urls.layer = "{% url 'layerdetails' %}";
scope.urls.layer = "{% url 'base_layerdetails' %}";
scope.project = {{prj|json}};
scope.builds = {{builds|json}};
scope.layers = {{layers|json}};
@@ -434,7 +443,8 @@ angular.element(document).ready(function() {
scope.frequenttargets = {{freqtargets|json}};
scope.machine = {{machine|json}};
scope.releases = {{releases|json}};
scope.layerCount = scope.layers.length;
scope.mutedtargets = (scope.layerCount == 0 ? "muted" : "")
var now = (new Date()).getTime();
scope.todaydate = now - (now % 86400000);

View File

@@ -7,21 +7,19 @@
{% endblock %}
{% block projectinfomain %}
<div class="page-header">
<h1>
{% if objects.paginator.count == 0 and request.GET.filter or request.GET.search %}
No builds found
{% else %}
{% if request.GET.filter or request.GET.search %}
{{objects.paginator.count}} builds found
{% else %}
Project builds <small>({{objects.paginator.count}})</small>
{% endif %}
{% endif %}
<i class="icon-question-sign get-help heading-help" title="This page lists all the builds for the current project"></i>
</h1>
</div>
<div class="page-header">
<h1>
{% if request.GET.filter and objects.paginator.count > 0 or request.GET.search and objects.paginator.count > 0 %}
{{objects.paginator.count}} build{{objects.paginator.count|pluralize}} found
{%elif request.GET.filter and objects.paginator.count == 0 or request.GET.search and objects.paginator.count == 0 %}
No builds found
{%else%}
All builds
{%endif%}
<i class="icon-question-sign get-help heading-help" title="This page lists all the builds for the current project"></i>
</h1>
</div>
{% if objects.paginator.count == 0 %}

View File

@@ -14,6 +14,7 @@
<div style="padding-left:19px;">
<dl class="dl-vertical">
{% if distro_defined %}
<dt>
<span class="js-config-var-name js-config-var-managed-name">DISTRO</span>
<i class="icon-question-sign get-help" title="The short name of the distribution. If the variable is blank, meta/conf/distro/defaultsetup.conf will be used. <br /><a href='http://www.yoctoproject.org/docs/1.6.1/ref-manual/ref-manual.html#var-DISTRO' target='_blank'>Read more in the manual</a>"></i>
@@ -32,6 +33,9 @@
</div>
</form>
</dd>
{% endif %}
{% if fstypes_defined %}
<dt>
<span class="js-config-var-name js-config-var-managed-name">IMAGE_FSTYPES</span>
<i class="icon-question-sign get-help" title="Formats of root file system images that you want to have created <br /><a href='http://www.yoctoproject.org/docs/1.6.1/ref-manual/ref-manual.html#var-IMAGE_FSTYPES' target='_blank'>Read more in the manual</a>"></i>
@@ -47,6 +51,9 @@
<button id="cancel-change-image_fstypes" type="button" class="btn btn-link">Cancel</button>
</form>
</dd>
{% endif %}
{% if image_install_append_defined %}
<dt>
<span class="js-config-var-name js-config-var-managed-name">IMAGE_INSTALL_append</span>
<i class="icon-question-sign get-help" title="Specifies additional packages to install into an image. If your build creates more than one image, the packages will be installed in <strong>all of them</strong> <br /><a href='http://www.yoctoproject.org/docs/1.6.1/ref-manual/ref-manual.html#var-IMAGE_INSTALL' target='_blank'>Read more in the manual</a>"></i>
@@ -66,6 +73,9 @@
</div>
</form>
</dd>
{% endif %}
{% if package_classes_defined %}
<dt>
<span class="js-config-var-name js-config-var-managed-name">PACKAGE_CLASSES</span>
<i class="icon-question-sign get-help" title="Specifies the package manager to use when packaging data <br /><a href='http://www.yoctoproject.org/docs/1.6.1/ref-manual/ref-manual.html#var-PACKAGE_CLASSES' target='_blank'>Read more in the manual</a>"></i>
@@ -79,7 +89,7 @@
<i class="icon-question-sign get-help" title="The package format used to generate the root file system. Options are <code>dev</code>, <code>ipk</code> and <code>rpm</code>"></i>
</label>
<select id="package_classes-select">
<option>package_dev</option>
<option>package_deb</option>
<option>package_ipk</option>
<option>package_rpm</option>
</select>
@@ -88,7 +98,7 @@
<i class="icon-question-sign get-help" title="Extra package formats to build"></i>
</label>
<label class="checkbox" id="package_class_1">
<input type="checkbox" id="package_class_1_input"> package_dev
<input type="checkbox" id="package_class_1_input"> package_deb
</label>
<label class="checkbox" id="package_class_2">
<input type="checkbox" id="package_class_2_input"> package_ipk
@@ -99,6 +109,9 @@
</div>
</form>
</dd>
{% endif %}
{% if sdk_machine_defined %}
<dt>
<span class="js-config-var-name js-config-var-managed-name">SDKMACHINE</span>
<i class="icon-question-sign get-help" title="Specifies the architecture (i.e. i686 or x86_64) for which to build SDK and ADT items <br /><a href='http://www.yoctoproject.org/docs/1.6.1/ref-manual/ref-manual.html#var-SDKMACHINE' target='_blank'>Read more in the manual</a>"></i>
@@ -121,6 +134,7 @@
</div>
</form>
</dd>
{% endif %}
</dl>
@@ -137,7 +151,7 @@
<input type="hidden" class="js-config-blacklist-name" value="{{b}}">
{% endfor %}
{% for b in vars_managed %}
<input type="hidden" class="js-config-var-managed-name" value="{{b}}">
<input type="hidden" class="js-config-managed-name" value="{{b}}">
{% endfor %}
<div class="row-fluid">
@@ -158,7 +172,7 @@
</span>
<label>Value</label>
<input id="value" type="text" placeholder="Type variable value"><p>
<div class="input-append" style="display:block;margin-top:10px;">
<div>
<button id="add-configvar-button" class="btn save" type="button" disabled>Add variable</button>
</div>
</div>
@@ -187,6 +201,9 @@
<script>
// global variables
var do_reload=false;
// validate new variable name
function validate_new_variable() {
var variable = $("input#variable").val();
@@ -210,6 +227,13 @@
}
}
var managed_configvars = document.getElementsByClassName('js-config-managed-name');
for (var i = 0, length = managed_configvars.length; i < length; i++) {
if (managed_configvars[i].value.toUpperCase() == variable.toUpperCase()) {
error_msg = "You cannot set this variable here. Please set it in the <a href=\"{% url 'project' project.id %}\">project main page</a>";
}
}
var bad_chars = /[^a-zA-Z0-9\-_]/.test(variable);
var has_spaces = (0 <= variable.indexOf(" "));
var only_spaces = (0 < variable.length) && (0 == variable.trim().length);
@@ -223,16 +247,22 @@
}
if ("" != error_msg) {
$('#new-variable-error-message').text(error_msg);
$('#new-variable-error-message').html(error_msg);
$(".save").attr("disabled","disabled");
// add one (and only one) error class append
var d = document.getElementById("add-configvar-name-div");
d.className = d.className + " control-group error";
d.className = d.className.replace(" error","");
d.className = d.className + " error";
return false;
} else if (0 == variable.length) {
$(".save").attr("disabled","disabled");
return false;
}
var d = document.getElementById("add-configvar-name-div");
d.className = d.className.replace(" control-group error","");
d.className = d.className.replace(" error","");
// now set the "Save" enablement if 'value' also passes
if (value.trim().length > 0) {
@@ -264,14 +294,16 @@
$('#distro-error-message').text(error_msg);
$("#apply-change-distro").attr("disabled","disabled");
// add one (and only one) error class append
var d = document.getElementById("edit-distro-name-div");
d.className = d.className + " control-group error";
d.className = d.className.replace(" error","");
d.className = d.className + " error";
return false;
}
var d = document.getElementById("edit-distro-name-div");
d.className = d.className.replace(" control-group error","");
d.className = d.className.replace(" error","");
$("#apply-change-distro").removeAttr("disabled");
return true;
}
@@ -293,16 +325,16 @@
// Preset or reset the Package Class checkbox labels
function updatePackageClassCheckboxes() {
$('#package_class_1, #package_class_2').hide();
if ($('select').val() == 'package_dev') {
if ($('select').val() == 'package_deb') {
$('#package_class_1').html('<input type="checkbox" id="package_class_1_input"> package_ipk');
$('#package_class_2').html('<input type="checkbox" id="package_class_2_input"> package_rpm');
}
if ($('select').val() == 'package_ipk') {
$('#package_class_1').html('<input type="checkbox" id="package_class_1_input"> package_dev');
$('#package_class_1').html('<input type="checkbox" id="package_class_1_input"> package_deb');
$('#package_class_2').html('<input type="checkbox" id="package_class_2_input"> package_rpm');
}
if ($('select').val() == 'package_rpm') {
$('#package_class_1').html('<input type="checkbox" id="package_class_1_input"> package_dev');
$('#package_class_1').html('<input type="checkbox" id="package_class_1_input"> package_deb');
$('#package_class_2').html('<input type="checkbox" id="package_class_2_input"> package_ipk');
}
$('#package_class_1, #package_class_2').fadeIn(1500);
@@ -421,7 +453,14 @@
alert("error on request:\n" + data.error);
return;
}
onEditPageUpdate(data);
// delayed page reload?
if (do_reload) {
do_reload=false;
location.reload(true);
} else {
onEditPageUpdate(data);
}
}
function onEditAjaxError(jqXHR, textstatus, error) {
@@ -429,7 +468,7 @@
// re-assert the event handlers
}
/* ensure cookie exists {% csrf_token %} */
/* ensure cookie exists {% csrf_token %} */
function postEditAjaxRequest(reqdata) {
var ajax = $.ajax({
type:"POST",
@@ -454,6 +493,7 @@
// Register handlers for static elements
//
{% if distro_defined %}
// change distro variable
$('#change-distro-icon').click(function() {
$('#change-distro-icon, #distro').hide();
@@ -468,7 +508,7 @@
// reset any dangling error state
$('#distro-error-message').text("");
var d = document.getElementById("edit-distro-name-div");
d.className = d.className.replace(" control-group error","");
d.className = d.className.replace(" error","");
});
});
@@ -486,11 +526,12 @@
$('#distro, #change-distro-icon').show();
});
});
{% endif %}
// init IMAGE_FSTYPES trash icon
setDeleteTooltip($('#delete-image_install-icon'));
{% if fstypes_defined %}
// change IMAGE_FSTYPES variable
$('#change-image_fstypes-icon').click(function() {
$('#change-image_fstypes-icon, #image_fstypes').hide();
$("#change-image_fstypes-form").slideDown();
@@ -525,7 +566,6 @@
$("input#filter-image_fstypes").val("");
});
$('#cancel-change-image_fstypes').click(function(){
$("#change-image_fstypes-form").slideUp(function() {
$('#image_fstypes, #change-image_fstypes-icon').show();
@@ -570,15 +610,24 @@
$('#image_fstypes, #change-image_fstypes-icon').show();
});
});
{% endif %}
{% if image_install_append_defined %}
// init IMAGE_INSTALL_append trash icon
setDeleteTooltip($('#delete-image_install-icon'));
// change IMAGE_INSTALL_append variable
$('#change-image_install-icon').click(function() {
// preset the edit value
var current_val = $("span#image_install").text();
var current_val = $("span#image_install").text().trim();
if (current_val == "Not set") {
current_val="";
$("#apply-change-image_install").attr("disabled","disabled");
} else {
// insure these non-empty values have single space prefix
current_val=" " + current_val;
}
$("input#new-image_install").val(current_val);
@@ -597,7 +646,7 @@
});
$("#new-image_install").on('input', function(){
if ($(this).val().length == 0) {
if ($(this).val().trim().length == 0) {
$("#apply-change-image_install").attr("disabled","disabled");
}
else {
@@ -606,13 +655,14 @@
});
$('#apply-change-image_install').click(function(){
var name = $('#new-image_install').val();
postEditAjaxRequest({"configvarChange" : 'IMAGE_INSTALL_append:'+name});
$('#image_install').text(name);
// insure these non-empty values have single space prefix
var value = " " + $('#new-image_install').val().trim();
postEditAjaxRequest({"configvarChange" : 'IMAGE_INSTALL_append:'+value});
$('#image_install').text(value);
$('#image_install').removeClass('muted');
$("#change-image_install-form").slideUp(function () {
$('#image_install, #change-image_install-icon').show();
if (name.length > -1) {
if (value.length > -1) {
$('#delete-image_install-icon').show();
setDeleteTooltip($('#delete-image_install-icon'));
}
@@ -630,32 +680,48 @@
$('#image_install').parent().fadeIn(1000);
});
});
{% endif %}
{% if package_classes_defined %}
// change PACKAGE_CLASSES variable
$('#change-package_classes-icon').click(function() {
$('#change-package_classes-icon, #package_classes').hide();
$("#change-package_classes-form").slideDown();
// initialize the pulldown and checkboxes
var value = document.getElementById("package_classes").innerHTML;
if (0 == value.indexOf("package_dev")) {
$('select').selectedIndex = 0;
var value = $("#package_classes").text();
if ( value.indexOf("package_deb") == 0 ) {
$("#package_classes-select").prop('selectedIndex', 0);
updatePackageClassCheckboxes();
if (0 < value.indexOf("package_ipk")) {document.getElementById("package_class_1_input").checked = true};
if (0 < value.indexOf("package_rpm")) {document.getElementById("package_class_2_input").checked = true};
if ( value.indexOf("_ipk") > 0 ) {
$("#package_class_1_input").attr("checked",true);
}
if ( value.indexOf("_rpm") > 0 ) {
$("#package_class_2_input").attr("checked",true);
}
}
if (0 == value.indexOf("package_ipk")) {
$('select').selectedIndex = 1;
if ( value.indexOf("package_ipk") == 0 ) {
$("#package_classes-select").prop('selectedIndex', 1);
updatePackageClassCheckboxes();
if (0 < value.indexOf("package_dev")) {document.getElementById("package_class_1_input").checked = true;};
if (0 < value.indexOf("package_rpm")) {document.getElementById("package_class_2_input").checked = true;};
if ( value.indexOf("_deb") > 0 ) {
$("#package_class_1_input").attr("checked",true);
}
if ( value.indexOf("_rpm") > 0 ) {
$("#package_class_2_input").attr("checked",true);
}
}
if (0 == value.indexOf("package_rpm")) {
$('select').selectedIndex = 2;
if ( value.indexOf("package_rpm") == 0 ) {
$("#package_classes-select").prop('selectedIndex', 2);
updatePackageClassCheckboxes();
if (0 < value.indexOf("package_dev")) {document.getElementById("#package_class_1_input").checked = true;};
if (0 < value.indexOf("package_ipk")) {document.getElementById("#package_class_2_input").checked = true;};
if ( value.indexOf("_deb") > 0 ) {
$("#package_class_1_input").attr("checked",true);
}
if ( value.indexOf("_ipk") > 0 ) {
$("#package_class_2_input").attr("checked",true);
}
}
});
@@ -675,16 +741,16 @@
pc1_checked = document.getElementById("package_class_1_input").checked;
pc2_checked = document.getElementById("package_class_2_input").checked;
if (val == "package_dev") {
if (val == "package_deb") {
if (pc1_checked) val = val + " package_ipk";
if (pc2_checked) val = val + " package_rpm";
}
if (val == "package_ipk") {
if (pc1_checked) val = val + " package_dev";
if (pc1_checked) val = val + " package_deb";
if (pc2_checked) val = val + " package_rpm";
}
if (val == "package_rpm") {
if (pc1_checked) val = val + " package_dev";
if (pc1_checked) val = val + " package_deb";
if (pc2_checked) val = val + " package_ipk";
}
@@ -695,8 +761,10 @@
$('#package_classes, #change-package_classes-icon').show();
});
});
{% endif %}
{% if sdk_machine_defined %}
// change SDKMACHINE variable
$('#change-sdkmachine-icon').click(function() {
var current_value = document.getElementById("sdkmachine").innerHTML;
@@ -734,6 +802,7 @@
});
});
{% endif %}
// add new variable
@@ -746,6 +815,14 @@
// clear the previous values
$("input#variable").val("");
$("input#value").val("");
// Disable add button
$(".save").attr("disabled","disabled");
// Reload page if admin-removed core managed value is manually added back in
if (0 <= " DISTRO IMAGE_FSTYPES IMAGE_INSTALL_append PACKAGE_CLASSES SDKMACHINE ".indexOf( " "+variable+" " )) {
// delayed reload to avoid race condition with postEditAjaxRequest
do_reload=true;
}
});
// validate new variable name and value

View File

@@ -7,7 +7,7 @@
{% block pagecontent %}
{% include "mrb_section.html" %}
{% include "managed_mrb_section.html" %}
<div class="page-header top-air">
@@ -38,11 +38,11 @@
{% for o in objects %}
<tr class="data">
<td><a href="{% url 'project' o.id %}">{{o.name}}</a></td>
<td class="updated"><a href="{% url 'project' o.id %}">{{o.updated|date:"d/m/y H:i"}}</a></td>
<td><a href="{% url 'project' o.id %}#project-details">{{o.release.name}}</a></td>
<td><a href="{% url 'project' o.id %}#machine-distro">{{o.get_current_machine_name}}</a></td>
{% if o.get_number_of_builds == 0 %}
<td class="muted">{{o.get_number_of_builds}}</td>
<td class="updated"></td>
<td class="loutcome"></td>
<td class="ltarget"></td>
<td class="lerrors"></td>
@@ -50,7 +50,6 @@
<td class="limagefiles"></td>
{% else %}
<td><a href="{% url 'projectbuilds' o.id %}">{{o.get_number_of_builds}}</a></td>
<td class="updated"><a href="{% url "builddashboard" o.get_last_build_id %}">{{o.updated|date:"d/m/y H:i"}}</a></td>
<td class="loutcome"><a href="{% url "builddashboard" o.get_last_build_id %}">{%if o.get_last_outcome == build_SUCCEEDED%}<i class="icon-ok-sign success"></i>{%elif o.get_last_outcome == build_FAILED%}<i class="icon-minus-sign error"></i>{%else%}{%endif%}</a></td>
<td class="ltarget"><a href="{% url "builddashboard" o.get_last_build_id %}">{{o.get_last_target}} </a></td>
<td class="lerrors">{% if o.get_last_errors %}<a class="errors_no error" href="{% url "builddashboard" o.get_last_build_id %}#errors">{{o.get_last_errors}} error{{o.get_last_errors|pluralize}}</a>{%endif%}</td>

View File

@@ -19,25 +19,25 @@
<div class="row span7 tabbable">
<ul class="nav nav-pills">
<li class="active">
<li class="{{tab_states.1}}">
<a href="#information" data-toggle="tab">
<i class="icon-question-sign get-help" title="Build-related information about the recipe"></i>
Recipe details
</a>
</li>
<li>
<a href="#packages-built" data-toggle="tab">
<a href="{% url "recipe_packages" build.pk object.id %}">
<i class="icon-question-sign get-help" title="The packaged output resulting from building the recipe"></i>
Packages ({{packages.count}})
Packages ({{package_count}})
</a>
</li>
<li>
<li class="{{tab_states.3}}">
<a href="#dependencies" data-toggle="tab">
<i class="icon-question-sign get-help" title="The recipe build-time dependencies (i.e. other recipes)"></i>
Build dependencies ({{object.r_dependencies_recipe.all.count}})
</a>
</li>
<li>
<li class="{{tab_states.4}}">
<a href="#brought-in-by" data-toggle="tab">
<i class="icon-question-sign get-help" title="The recipe build-time reverse dependencies (i.e. the recipes that depend on this recipe)"></i>
Reverse build dependencies ({{object.r_dependencies_depends.all.count}})
@@ -45,7 +45,7 @@
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="information" name="information">
<div class="tab-pane {{tab_states.1}}" id="information" name="information">
<dl class="dl-horizontal">
<dt>
<i class="icon-question-sign get-help" title="The name of the layer providing the recipe"></i>
@@ -144,43 +144,7 @@
</table>
{% endif %}
</div>
<div class="tab-pane" id="packages-built" name="packages-built">
{% if not packages %}
<div class="alert alert-info">
<strong>{{object.name}}_{{object.version}}</strong> does not build any packages.
</div>
{% else %}
<table class="table table-bordered table-hover" style="margin-top:10px;">
<thead>
<tr>
<th>
Package
</th>
<th>
Version
</th>
<th class="sizecol span2">
Size
</th>
</tr>
</thead>
<tbody>
{% for package in packages|dictsort:"name" %}
<tr>
<td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.name}}</a></td>
<td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.version}}_{{package.revision}}</a></td>
<td class="sizecol"><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.size|filtered_filesizeformat}}</a></td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
<div class="tab-pane" id="dependencies" name="dependencies">
<div class="tab-pane {{tab_states.3}}" id="dependencies" name="dependencies">
{% if not object.r_dependencies_recipe.all %}
<div class="alert alert-info">
@@ -212,7 +176,7 @@
{% endif %}
</div>
<div class="tab-pane" id="brought-in-by" name="brought-in-by">
<div class="tab-pane {{tab_states.4}}" id="brought-in-by" name="brought-in-by">
{% if not object.r_dependencies_depends.all %}
<div class="alert alert-info">

View File

@@ -0,0 +1,123 @@
{% extends "basebuilddetailpage.html" %}
{% load projecttags %}
{% load humanize %}
{% block localbreadcrumb %}
<li><a href="{% url 'recipes' build.pk %}">Recipes</a></li>
<li>{{recipe.name}}_{{recipe.version}} </li>
{% endblock %}
{% block pagedetailinfomain %}
<!-- Begin container -->
<div class="row-fluid span11">
<div class="page-header">
<h1>{{recipe.name}}_{{recipe.version}}</h1>
</div>
</div>
<div class="row-fluid span7 tabbable">
<ul class="nav nav-pills">
<li>
<a href="{% url "recipe" build.pk recipe.id "1" %}">
<i class="icon-question-sign get-help" title="Build-related information about the recipe"></i>
Recipe details
</a>
</li>
<li class="active">
<a href="#packages-built" data-toggle="tab">
<i class="icon-question-sign get-help" title="The packaged output resulting from building the recipe"></i>
Packages ({{object_count}})
</a>
</li>
<li>
<a href="{% url "recipe" build.pk recipe.id "3" %}">
<i class="icon-question-sign get-help" title="The recipe build-time dependencies (i.e. other recipes)"></i>
Build dependencies ({{recipe.r_dependencies_recipe.all.count}})
</a>
</li>
<li>
<a href="{% url "recipe" build.pk recipe.id "4" %}">
<i class="icon-question-sign get-help" title="The recipe build-time reverse dependencies (i.e. the recipes that depend on this recipe)"></i>
Reverse build dependencies ({{recipe.r_dependencies_depends.all.count}})
</a>
</li>
</ul>
<div class="tab-content">
{# <div class="tab-pane active" id="packages-built" name="packages-built">#}
<div class="tab-pane active" id="packages-built">
{% if not objects and not request.GET.search %}
<div class="alert alert-info">
<strong>{{recipe.name}}_{{recipe.version}}</strong> does not build any packages.
</div>
{% elif not objects %}
{# have empty search results, no table nor pagination #}
{% with "packages" as search_what %}
{% include "detail_search_header.html" %}
{% endwith %}
{% else %}
{% with "packages" as search_what %}
{% include "detail_search_header.html" %}
{% endwith %}
<table class="table table-bordered table-hover tablesorter" id="otable">
{% include "detail_sorted_header.html" %}
<tbody>
{% for package in objects %}
<tr>
<td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.name}}</a></td>
<td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.version}}_{{package.revision}}</a></td>
<td class="sizecol"><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.size|filtered_filesizeformat}}</a></td>
</tr>
{% endfor %}
{% endif %}
{% if objects %}
</tbody>
</table>
{% include "detail_pagination_bottom.html" %}
{% endif %}
</div> {# tab-pane #}
</div> {# tab-content #}
</div> {# span7 #}
<div class="row span4 well">
<h2>About {{recipe.name}}</h2>
<dl class="item-info">
{% if recipe.summary %}
<dt>Summary</dt>
<dd>{{recipe.summary}}</dd>
{% endif %}
{% if recipe.description %}
<dt>Description</dt>
<dd>{{recipe.description}}</dd>
{% endif %}
{% if recipe.homepage %}
<dt>Homepage</dt>
<dd><a href="{{recipe.homepage}}">{{recipe.homepage}}</a></dd>
{% endif %}
{% if recipe.bugtracker %}
<dt>Bugtracker</dt>
<dd><a href="{{recipe.bugtracker}}">{{recipe.bugtracker}}</a></dd>
{% endif %}
{% if recipe.section %}
<dt>
Section
<i class="icon-question-sign get-help" title="The section in which recipes should be categorized"></i>
</dt>
<dd>{{recipe.section}}</dd>
{% endif %}
{% if recipe.license %}
<dt>License</dt>
<dd>{{recipe.license}}</dd>
{% endif %}
</dl>
</div>
{% endblock pagedetailinfomain %}

View File

@@ -3,20 +3,20 @@
{% load humanize %}
{% block localbreadcrumb %}
<li>All compatible targets</li>
<li>All compatible recipes</li>
{% endblock %}
{% block projectinfomain %}
<div class="page-header">
<h1>
{% if request.GET.filter and objects.paginator.count > 0 or request.GET.search and objects.paginator.count > 0 %}
{{objects.paginator.count}} target{{objects.paginator.count|pluralize}} found
{{objects.paginator.count}} recipe{{objects.paginator.count|pluralize}} found
{% elif request.GET.filter and objects.paginator.count == 0 or request.GET.search and objects.paginator.count == 0 %}
No targets found
No recipes found
{%else%}
All compatible targets
All compatible recipes
{%endif%}
<i class="icon-question-sign get-help heading-help" title="This page lists all the targets compatible with the release selected for this project, which is {{project.release.description}}"></i>
<i class="icon-question-sign get-help heading-help" title="This page lists all the recipes compatible with the release selected for this project, which is {{project.release.description}}"></i>
</h1>
</div>
@@ -31,19 +31,17 @@
<form class="no-results input-append" id="searchform">
<input id="search" name="search" class="input-xxlarge" type="text" value="{{request.GET.search}}"/>{% if request.GET.search %}<a href="javascript:$('#search').val('');searchform.submit()" class="add-on btn" tabindex="-1"><i class="icon-remove"></i></a>{% endif %}
<button class="btn" type="submit" value="Search">Search</button>
<button class="btn btn-link" onclick="javascript:$('#search').val('');searchform.submit()">Show all targets</button>
<button class="btn btn-link" onclick="javascript:$('#search').val('');searchform.submit()">Show all recipes</button>
</form>
</div>
</div>
{% else %}
<div class="alert alert-info">
<p class="lead">
Toaster has not target information. To generate target information you can:<br/>
<ul class="lead">
<li style="margin-top: 10px"> <a href="https://wiki.yoctoproject.org/wiki/Setting_up_a_hosted_managed_mode_for_Toaster#LayerSources">Configure a layer source</a></li>
<li style="margin-top: 10px"> <a href="{% url 'importlayer' %}">Import a layer</a></li>
</ul>
</p>
<div class="alert alert-info lead">
<p>Toaster has no recipe information. To generate recipe information you can:</p>
<ul>
<li><a href="http://www.yoctoproject.org/docs/latest/toaster-manual/toaster-manual.html#layer-source">Configure a layer source</a></li>
<li><a href="{% url 'importlayer' %}">Import a layer</a>, then run a build</li>
</ul>
</div>
{% endif %}
@@ -60,7 +58,7 @@
<td class="description">{% if o.description %}{{o.description}}{% else %}{{o.summary}}{%endif%}</td>
<td class="recipe-file">
<code>{{o.file_path}}</code>
<a href="{{o.get_vcs_link_url}}{{o.file_path}}" target="_blank"><i class="icon-share get-info"></i></a>
<a href="{{o.vcs_link_url}}" target="_blank"><i class="icon-share get-info"></i></a>
</td>
<td class="target-section">{{o.section}}</td>
<td class="license">{{o.license}}</td>
@@ -80,7 +78,7 @@
<td class="add-layer" value="{{o.pk}}" layerversion_id="{{o.preffered_layerversion.pk}}">
<div id="layer-tooltip-{{o.pk}}" style="display: none; font-size: 11px; line-height: 1.3;" class="tooltip-inner">layer was modified</div>
<a href="{% url 'project' project.id %}#/targetbuild={{o.name}}" id="target-build-{{o.pk}}" class="btn btn-block remove-layer" style="display:none;" >
Build target
Build recipe
</a>
<a id="layer-add-{{o.pk}}" class="btn btn-block" style="display:none;" href="javascript:layerAdd({{o.preffered_layerversion.pk}}, '{{o.preffered_layerversion.layer.name}}', '{%url 'layerdetails' o.preffered_layerversion.pk%}', {{o.pk}})" >
<i class="icon-plus"></i>

View File

@@ -130,6 +130,13 @@
</dd>
</dl>
{%elif task.outcome == task.OUTCOME_CACHED%}
{% if MANAGED and build.project %}
{% for t in task.get_related_setscene %}
{% if forloop.last %}
<a class="btn btn-large" href="{% url 'build_artifact' build.id "tasklogfile" t.pk %}" style="margin:15px;">Download task log</a>
{% endif %}
{% endfor %}
{% else %}
<dl class="dl-horizontal">
<dt>
<i class="icon-question-sign get-help" title="Path the task log file"></i> Log file
@@ -138,6 +145,7 @@
<code>{% for t in task.get_related_setscene %} {{t.logfile}} {% endfor %}</code>
</dd>
</dl>
{% endif %}
{%elif task.outcome == task.OUTCOME_EMPTY%}
<div class="alert alert-info details">
This task is empty because it has the <code>noexec</code> flag set to <code>1</code>, or the task function is empty

View File

@@ -4,13 +4,11 @@
{% load static %}
{% block pagecontent %}
<div class="section">
</div>
<div class="row-fluid">
<div class="alert alert-info">
<p class="lead"> The artifact you are seeking to download is not available. We are sorry. You can <a href="javascript:window.history.back()">go back</a>
</p>
<div class="row-fluid air">
<div class="alert alert-info span8 lead">
<p"> The build artifact you are trying to download no longer exists.</p>
<p><a href="javascript:window.history.back()">Back to previous page</a></p>
</div>
</div>
{% endblock %}

View File

@@ -125,6 +125,8 @@ def filtered_icon(options, filter):
for option in options:
if filter == option[1]:
return "btn-primary"
if ('daterange' == option[1]) and filter.startswith(option[4]):
return "btn-primary"
return ""
@register.filter
@@ -134,6 +136,8 @@ def filtered_tooltip(options, filter):
for option in options:
if filter == option[1]:
return "Showing only %s"%option[0]
if ('daterange' == option[1]) and filter.startswith(option[4]):
return "Showing only %s"%option[0]
return ""
@register.filter
@@ -295,3 +299,30 @@ def format_build_date(completed_on):
if delta.days >= 1:
return True
@register.filter
def is_shaid(text):
""" return True if text length is 40 characters and all hex-digits
"""
try:
int(text, 16)
if len(text) == 40:
return True
return False
except ValueError:
return False
@register.filter
def cut_layer_path_prefix(fullpath,layer_names):
### if some part of the full local path to a layer matches
### an entry in layer_names (sorted desc), return the layer
### name relative path.
for lname in layer_names:
# import rpdb; rpdb.set_trace()
# only try layer names that are non-trivial to avoid false matches
if len(lname) >= 4:
# match layer name with as a subdir / or for remote layers /_
if re.search('/' + lname, fullpath) or re.search('/_' + lname, fullpath):
parts = re.split(lname, fullpath, 1)
return lname + parts[1]
return fullpath

View File

@@ -19,6 +19,8 @@
from django.conf.urls import patterns, include, url
from django.views.generic import RedirectView
from django.http import HttpResponseBadRequest
urlpatterns = patterns('toastergui.views',
# landing page
url(r'^landing/$', 'landing', name='landing'),
@@ -32,7 +34,9 @@ urlpatterns = patterns('toastergui.views',
url(r'^build/(?P<build_id>\d+)/task/(?P<task_id>\d+)$', 'task', name='task'),
url(r'^build/(?P<build_id>\d+)/recipes/$', 'recipes', name='recipes'),
url(r'^build/(?P<build_id>\d+)/recipe/(?P<recipe_id>\d+)/active_tab/(?P<active_tab>\d{1})$', 'recipe', name='recipe'),
url(r'^build/(?P<build_id>\d+)/recipe/(?P<recipe_id>\d+)$', 'recipe', name='recipe'),
url(r'^build/(?P<build_id>\d+)/recipe_packages/(?P<recipe_id>\d+)$', 'recipe_packages', name='recipe_packages'),
url(r'^build/(?P<build_id>\d+)/packages/$', 'bpackage', name='packages'),
url(r'^build/(?P<build_id>\d+)/package/(?P<package_id>\d+)$', 'package_built_detail',
@@ -51,7 +55,7 @@ urlpatterns = patterns('toastergui.views',
url(r'^build/(?P<build_id>\d+)/target/(?P<target_id>\d+)/targetpkg$', 'targetpkg', name='targetpkg'),
url(r'^dentries/build/(?P<build_id>\d+)/target/(?P<target_id>\d+)$', 'dirinfo_ajax', name='dirinfo_ajax'),
url(r'^build/(?P<build_id>\d+)/target/(?P<target_id>\d+)/dirinfo$', 'dirinfo', name='dirinfo'),
url(r'^build/(?P<build_id>\d+)/target/(?P<target_id>\d+)/dirinfo_filepath/(?P<file_path>(?:/[^/\n]+)*)$', 'dirinfo', name='dirinfo_filepath'),
url(r'^build/(?P<build_id>\d+)/target/(?P<target_id>\d+)/dirinfo_filepath/_(?P<file_path>(?:/[^/\n]+)*)$', 'dirinfo', name='dirinfo_filepath'),
url(r'^build/(?P<build_id>\d+)/target/(?P<target_id>\d+)/packages$', 'tpackage', name='targetpackages'),
url(r'^build/(?P<build_id>\d+)/configuration$', 'configuration', name='configuration'),
url(r'^build/(?P<build_id>\d+)/configvars$', 'configvars', name='configvars'),
@@ -76,13 +80,13 @@ urlpatterns = patterns('toastergui.views',
url(r'^layers/$', 'layers', name='layers'),
url(r'^layer/(?P<layerid>\d+)/$', 'layerdetails', name='layerdetails'),
url(r'^layer/$', 'layerdetails', name='layerdetails'),
url(r'^layer/$', lambda x: HttpResponseBadRequest(), name='base_layerdetails'),
url(r'^targets/$', 'targets', name='all-targets'),
url(r'^machines/$', 'machines', name='machines'),
url(r'^projects/$', 'projects', name='all-projects'),
url(r'^project/$', 'project', name='project'),
url(r'^project/$', lambda x: HttpResponseBadRequest(), name='base_project'),
url(r'^project/(?P<pid>\d+)/$', 'project', name='project'),
url(r'^project/(?P<pid>\d+)/configuration$', 'projectconf', name='projectconf'),
url(r'^project/(?P<pid>\d+)/builds$', 'projectbuilds', name='projectbuilds'),

View File

@@ -35,10 +35,26 @@ from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.http import HttpResponseBadRequest, HttpResponseNotFound
from django.utils import timezone
from django.utils.html import escape
from datetime import timedelta
from datetime import timedelta, datetime, date
from django.utils import formats
from toastergui.templatetags.projecttags import json as jsonfilter
import json
import mimetypes
class MimeTypeFinder(object):
# setting this to False enables additional non-standard mimetypes
# to be included in the guess
_strict = False
# returns the mimetype for a file path as a string,
# or 'application/octet-stream' if the type couldn't be guessed
@classmethod
def get_mimetype(self, path):
guess = mimetypes.guess_type(path, self._strict)
guessed_type = guess[0]
if guessed_type == None:
guessed_type = 'application/octet-stream'
return guessed_type
# all new sessions should come through the landing page;
# determine in which mode we are running in, and redirect appropriately
@@ -66,7 +82,10 @@ def _project_recent_build_list(prj):
"id": x.pk,
"targets" : map(lambda y: {"target": y.target, "task": y.task }, x.brtarget_set.all()),
"status": x.get_state_display(),
"errors": map(lambda y: {"type": y.errtype, "msg": y.errmsg, "tb": y.traceback}, x.brerror_set.exclude(errmsg__contains="Command Failed")),
"errors": map(lambda y: {"type": y.errtype, "msg": y.errmsg, "tb": y.traceback}, x.brerror_set.all()),
"updated": x.updated.strftime('%s')+"000",
"command_time": (x.updated - x.created).total_seconds(),
"br_page_url": reverse('buildrequestdetails', args=(x.project.id, x.pk) ),
"build" : map( lambda y: {"id": y.pk,
"status": y.get_outcome_display(),
"completed_on" : y.completed_on.strftime('%s')+"000",
@@ -276,6 +295,71 @@ def _save_parameters_cookies(response, pagesize, orderby, request):
response.set_cookie(key='orderby', value=html_parser.unescape(orderby), path=request.path)
return response
# date range: normalize GUI's dd/mm/yyyy to date object
def _normalize_input_date(date_str,default):
date_str=re.sub('/', '-', date_str)
# accept dd/mm/yyyy to d/m/yy
try:
date_in = datetime.strptime(date_str, "%d-%m-%Y")
except ValueError:
# courtesy try with two digit year
try:
date_in = datetime.strptime(date_str, "%d-%m-%y")
except ValueError:
return default
date_in = date_in.replace(tzinfo=default.tzinfo)
return date_in
# convert and normalize any received date range filter, for example:
# "completed_on__gte!completed_on__lt:01/03/2015!02/03/2015_daterange" to
# "completed_on__gte!completed_on__lt:2015-03-01!2015-03-02"
def _modify_date_range_filter(filter_string):
# was the date range radio button selected?
if 0 > filter_string.find('_daterange'):
return filter_string,''
# normalize GUI dates to database format
filter_string = filter_string.replace('_daterange','').replace(':','!');
filter_list = filter_string.split('!');
if 4 != len(filter_list):
return filter_string
today = timezone.localtime(timezone.now())
date_id = filter_list[1]
date_from = _normalize_input_date(filter_list[2],today)
date_to = _normalize_input_date(filter_list[3],today)
# swap dates if manually set dates are out of order
if date_to < date_from:
date_to,date_from = date_from,date_to
# convert to strings, make 'date_to' inclusive by moving to begining of next day
date_from_str = date_from.strftime("%Y-%m-%d")
date_to_str = (date_to+timedelta(days=1)).strftime("%Y-%m-%d")
filter_string=filter_list[0]+'!'+filter_list[1]+':'+date_from_str+'!'+date_to_str
daterange_selected = re.sub('__.*','', date_id)
return filter_string,daterange_selected
def _add_daterange_context(queryset_all, request, daterange_list):
# calculate the exact begining of local today and yesterday
today_begin = timezone.localtime(timezone.now())
today_begin = date(today_begin.year,today_begin.month,today_begin.day)
yesterday_begin = today_begin-timedelta(days=1)
# add daterange persistent
context_date = {}
context_date['last_date_from'] = request.GET.get('last_date_from',timezone.localtime(timezone.now()).strftime("%d/%m/%Y"))
context_date['last_date_to' ] = request.GET.get('last_date_to' ,context_date['last_date_from'])
# calculate the date ranges, avoid second sort for 'created'
# fetch the respective max range from the database
context_date['daterange_filter']=''
for key in daterange_list:
queryset_key = queryset_all.order_by(key)
try:
context_date['dateMin_'+key]=timezone.localtime(getattr(queryset_key.first(),key)).strftime("%d/%m/%Y")
except AttributeError:
context_date['dateMin_'+key]=timezone.localtime(timezone.now())
try:
context_date['dateMax_'+key]=timezone.localtime(getattr(queryset_key.last(),key)).strftime("%d/%m/%Y")
except AttributeError:
context_date['dateMax_'+key]=timezone.localtime(timezone.now())
return context_date,today_begin,yesterday_begin
##
# build dashboard for a single build, coming in as argument
@@ -419,8 +503,7 @@ def task( request, build_id, task_id ):
return render( request, template, context )
def recipe(request, build_id, recipe_id):
def recipe(request, build_id, recipe_id, active_tab="1"):
template = "recipe.html"
if Recipe.objects.filter(pk=recipe_id).count() == 0 :
return redirect(builds)
@@ -429,7 +512,12 @@ def recipe(request, build_id, recipe_id):
layer_version = Layer_Version.objects.get(pk=object.layer_version_id)
layer = Layer.objects.get(pk=layer_version.layer_id)
tasks = Task.objects.filter(recipe_id = recipe_id, build_id = build_id).exclude(order__isnull=True).exclude(task_name__endswith='_setscene').exclude(outcome=Task.OUTCOME_NA)
packages = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0)
package_count = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0).count()
if active_tab != '1' and active_tab != '3' and active_tab != '4' :
active_tab = '1'
tab_states = {'1': '', '3': '', '4': ''}
tab_states[active_tab] = 'active'
context = {
'build' : Build.objects.get(pk=build_id),
@@ -437,10 +525,58 @@ def recipe(request, build_id, recipe_id):
'layer_version' : layer_version,
'layer' : layer,
'tasks' : tasks,
'packages': packages,
'package_count' : package_count,
'tab_states' : tab_states,
}
return render(request, template, context)
def recipe_packages(request, build_id, recipe_id):
template = "recipe_packages.html"
if Recipe.objects.filter(pk=recipe_id).count() == 0 :
return redirect(builds)
(pagesize, orderby) = _get_parameters_values(request, 10, 'name:+')
mandatory_parameters = { 'count': pagesize, 'page' : 1, 'orderby': orderby }
retval = _verify_parameters( request.GET, mandatory_parameters )
if retval:
return _redirect_parameters( 'recipe_packages', request.GET, mandatory_parameters, build_id = build_id, recipe_id = recipe_id)
(filter_string, search_term, ordering_string) = _search_tuple(request, Package)
recipe = Recipe.objects.get(pk=recipe_id)
queryset = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0)
package_count = queryset.count()
queryset = _get_queryset(Package, queryset, filter_string, search_term, ordering_string, 'name')
packages = _build_page_range(Paginator(queryset, pagesize),request.GET.get('page', 1))
context = {
'build' : Build.objects.get(pk=build_id),
'recipe' : recipe,
'objects' : packages,
'object_count' : package_count,
'tablecols':[
{
'name':'Package',
'orderfield': _get_toggle_order(request,"name"),
'ordericon': _get_toggle_order_icon(request,"name"),
'orderkey': "name",
},
{
'name':'Version',
},
{
'name':'Size',
'orderfield': _get_toggle_order(request,"size", True),
'ordericon': _get_toggle_order_icon(request,"size"),
'orderkey': 'size',
'dclass': 'sizecol span2',
},
]
}
response = render(request, template, context)
_save_parameters_cookies(response, pagesize, orderby, request)
return response
def target_common( request, build_id, target_id, variant ):
template = "target.html"
(pagesize, orderby) = _get_parameters_values(request, 25, 'name:+')
@@ -460,17 +596,19 @@ def target_common( request, build_id, target_id, variant ):
packages_sum = queryset.aggregate( Sum( 'installed_size' ))
queryset = _get_queryset(
Package, queryset, filter_string, search_term, ordering_string, 'name' )
queryset = queryset.select_related("recipe", "recipe__layer_version", "recipe__layer_version__layer")
packages = _build_page_range( Paginator(queryset, pagesize), request.GET.get( 'page', 1 ))
build = Build.objects.get( pk = build_id )
# bring in package dependencies
for p in packages.object_list:
p.runtime_dependencies = p.package_dependencies_source.filter(
target_id = target_id, dep_type=Package_Dependency.TYPE_TRDEPENDS )
target_id = target_id, dep_type=Package_Dependency.TYPE_TRDEPENDS ).select_related("depends_on")
p.reverse_runtime_dependencies = p.package_dependencies_target.filter(
target_id = target_id, dep_type=Package_Dependency.TYPE_TRDEPENDS )
target_id = target_id, dep_type=Package_Dependency.TYPE_TRDEPENDS ).select_related("package")
tc_package = {
'name' : 'Package',
'qhelp' : 'Packaged output resulting from building a recipe included in this image',
@@ -820,7 +958,10 @@ def tasks_common(request, build_id, variant, task_anchor):
return _redirect_parameters( variant, request.GET, mandatory_parameters, build_id = build_id)
(filter_string, search_term, ordering_string) = _search_tuple(request, Task)
queryset_all = Task.objects.filter(build=build_id).exclude(order__isnull=True).exclude(outcome=Task.OUTCOME_NA)
queryset_all = queryset_all.select_related("recipe", "build")
queryset_with_search = _get_queryset(Task, queryset_all, None , search_term, ordering_string, 'order')
if ordering_string.startswith('outcome'):
queryset = _get_queryset(Task, queryset_all, filter_string, search_term, 'order:+', 'order')
queryset = sorted(queryset, key=lambda ur: (ur.outcome_text), reverse=ordering_string.endswith('-'))
@@ -830,7 +971,6 @@ def tasks_common(request, build_id, variant, task_anchor):
else:
queryset = _get_queryset(Task, queryset_all, filter_string, search_term, ordering_string, 'order')
queryset = queryset.select_related("recipe", "build")
# compute the anchor's page
if anchor:
@@ -1202,6 +1342,11 @@ def configvars(request, build_id):
variables = _build_page_range(Paginator(queryset, pagesize), request.GET.get('page', 1))
layers = Layer.objects.filter(layer_version_layer__projectlayer__project__build=build_id).order_by("-name")
layer_names = map(lambda layer : layer.name, layers)
# special case for meta built-in layer
layer_names.append('meta')
# show all matching files (not just the last one)
file_filter= search_term + ":"
if filter_string.find('/conf/') > 0:
@@ -1224,6 +1369,7 @@ def configvars(request, build_id):
'total_count':queryset_with_search.count(),
'default_orderby' : 'variable_name:+',
'search_term':search_term,
'layer_names' : layer_names,
# Specifies the display of columns for the table, appearance in "Edit columns" box, toggling default show/hide, and specifying filters for columns
'tablecols' : [
{'name': 'Variable',
@@ -1344,7 +1490,7 @@ def bpackage(request, build_id):
'qhelp':'The Git branch of the layer providing the recipe that builds the package',
'orderfield': _get_toggle_order(request, "recipe__layer_version__branch"),
'ordericon':_get_toggle_order_icon(request, "recipe__layer_version__branch"),
'orderkey' : 'recipe__layer_version__layer__branch',
'orderkey' : 'recipe__layer_version__branch',
'clclass': 'recipe__layer_version__branch', 'hidden': 1,
},
{
@@ -1803,6 +1949,9 @@ if toastermain.settings.MANAGED:
# boilerplate code that takes a request for an object type and returns a queryset
# for that object type. copypasta for all needed table searches
(filter_string, search_term, ordering_string) = _search_tuple(request, BuildRequest)
# post-process any date range filters
filter_string,daterange_selected = _modify_date_range_filter(filter_string)
# we don't display in-progress or deleted builds
queryset_all = buildrequests.exclude(state = BuildRequest.REQ_DELETED)
queryset_all = queryset_all.select_related("build", "build__project").annotate(Count('brerror'))
@@ -1814,8 +1963,7 @@ if toastermain.settings.MANAGED:
# build view-specific information; this is rendered specifically in the builds page, at the top of the page (i.e. Recent builds)
# most recent build is like projects' most recent builds, but across all projects
build_mru = BuildRequest.objects.all()
build_mru = list(build_mru.filter(Q(state__lt=BuildRequest.REQ_COMPLETED) or Q(state=BuildRequest.REQ_DELETED)).order_by("-pk")) + list(build_mru.filter(state__in=[BuildRequest.REQ_COMPLETED, BuildRequest.REQ_FAILED]).order_by("-pk")[:3])
build_mru = _managed_get_latest_builds()
fstypes_map = {};
for build_request in build_info:
@@ -1854,6 +2002,7 @@ if toastermain.settings.MANAGED:
'fstypes' : fstypes_map,
'search_term' : search_term,
'total_count' : queryset_with_search.count(),
'daterange_selected' : daterange_selected,
# Specifies the display of columns for the table, appearance in "Edit columns" box, toggling default show/hide, and specifying filters for columns
'tablecols' : [
{'name': 'Outcome', # column with a single filter
@@ -1867,13 +2016,13 @@ if toastermain.settings.MANAGED:
'filter' : {'class' : 'outcome',
'label': 'Show:',
'options' : [
('Successful builds', 'state:' + str(BuildRequest.REQ_COMPLETED), queryset_all.filter(state=str(BuildRequest.REQ_COMPLETED)).count()), # this is the field search expression
('Failed builds', 'state:'+ str(BuildRequest.REQ_FAILED), queryset_all.filter(state=str(BuildRequest.REQ_FAILED)).count()),
('Successful builds', 'build__outcome:' + str(Build.SUCCEEDED), queryset_all.filter(build__outcome = Build.SUCCEEDED).count()), # this is the field search expression
('Failed builds', 'build__outcome:NOT'+ str(Build.SUCCEEDED), queryset_all.exclude(build__outcome = Build.SUCCEEDED).count()),
]
}
},
{'name': 'Target', # default column, disabled box, with just the name in the list
'qhelp': "This is the build target or build targets (i.e. one or more recipes or image recipes)",
{'name': 'Recipe', # default column, disabled box, with just the name in the list
'qhelp': "What you built (i.e. one or more recipes or image recipes)",
'orderfield': _get_toggle_order(request, "brtarget__target"),
'ordericon':_get_toggle_order_icon(request, "brtarget__target"),
},
@@ -1892,6 +2041,10 @@ if toastermain.settings.MANAGED:
}
)
# calculate the exact begining of local today and yesterday
context_date,today_begin,yesterday_begin = _add_daterange_context(queryset_all, request, {'created','updated'})
context.update(context_date)
context['tablecols'].append(
{'name': 'Started on', 'clclass': 'started_on', 'hidden' : 1, # this is an unchecked box, which hides the column
'qhelp': "The date and time you started the build",
@@ -1900,9 +2053,16 @@ if toastermain.settings.MANAGED:
'filter' : {'class' : 'created',
'label': 'Show:',
'options' : [
("Today's builds" , 'created__gte:'+timezone.now().strftime("%Y-%m-%d"), queryset_all.filter(created__gte=timezone.now()).count()),
("Yesterday's builds", 'created__gte:'+(timezone.now()-timedelta(hours=24)).strftime("%Y-%m-%d"), queryset_all.filter(created__gte=(timezone.now()-timedelta(hours=24))).count()),
("This week's builds", 'created__gte:'+(timezone.now()-timedelta(days=7)).strftime("%Y-%m-%d"), queryset_all.filter(created__gte=(timezone.now()-timedelta(days=7))).count()),
("Today's builds" , 'created__gte:'+today_begin.strftime("%Y-%m-%d"), queryset_all.filter(created__gte=today_begin).count()),
("Yesterday's builds",
'created__gte!created__lt:'
+yesterday_begin.strftime("%Y-%m-%d")+'!'
+today_begin.strftime("%Y-%m-%d"),
queryset_all.filter(
created__gte=yesterday_begin,
created__lt=today_begin
).count()),
("Build date range", 'daterange', 1, '', 'created'),
]
}
}
@@ -1916,9 +2076,16 @@ if toastermain.settings.MANAGED:
'filter' : {'class' : 'updated',
'label': 'Show:',
'options' : [
("Today's builds", 'updated__gte:'+timezone.now().strftime("%Y-%m-%d"), queryset_all.filter(updated__gte=timezone.now()).count()),
("Yesterday's builds", 'updated__gte:'+(timezone.now()-timedelta(hours=24)).strftime("%Y-%m-%d"), queryset_all.filter(updated__gte=(timezone.now()-timedelta(hours=24))).count()),
("This week's builds", 'updated__gte:'+(timezone.now()-timedelta(days=7)).strftime("%Y-%m-%d"), queryset_all.filter(updated__gte=(timezone.now()-timedelta(days=7))).count()),
("Today's builds" , 'updated__gte:'+today_begin.strftime("%Y-%m-%d"), queryset_all.filter(updated__gte=today_begin).count()),
("Yesterday's builds",
'updated__gte!updated__lt:'
+yesterday_begin.strftime("%Y-%m-%d")+'!'
+today_begin.strftime("%Y-%m-%d"),
queryset_all.filter(
updated__gte=yesterday_begin,
updated__lt=today_begin
).count()),
("Build date range", 'daterange', 1, '', 'updated'),
]
}
}
@@ -2059,11 +2226,11 @@ if toastermain.settings.MANAGED:
freqtargets = []
try:
freqtargets += map(lambda x: x.target, reduce(lambda x, y: x + y, map(lambda x: list(x.target_set.all()), Build.objects.filter(project = prj, outcome__lt = Build.IN_PROGRESS))))
freqtargets += map(lambda x: x.target, reduce(lambda x, y: x + y, map(lambda x: list(x.brtarget_set.all()), BuildRequest.objects.filter(project = prj, state__lte = BuildRequest.REQ_QUEUED))))
freqtargets += map(lambda x: x.target, reduce(lambda x, y: x + y, map(lambda x: list(x.brtarget_set.all()), BuildRequest.objects.filter(project = prj, state = BuildRequest.REQ_FAILED))))
except TypeError:
pass
freqtargets = Counter(freqtargets)
freqtargets = sorted(freqtargets, key = lambda x: freqtargets[x])
freqtargets = sorted(freqtargets, key = lambda x: freqtargets[x], reverse=True)
context = {
"project" : prj,
@@ -2080,11 +2247,12 @@ if toastermain.settings.MANAGED:
"url": x.layercommit.layer.layer_index_url,
"layerdetailurl": reverse("layerdetails", args=(x.layercommit.pk,)),
# This branch name is actually the release
"branch" : { "name" : x.layercommit.commit, "layersource" : x.layercommit.up_branch.layer_source.name if x.layercommit.up_branch != None else None}},
"branch" : { "name" : x.layercommit.get_vcs_reference(), "layersource" : x.layercommit.up_branch.layer_source.name if x.layercommit.up_branch != None else None}},
prj.projectlayer_set.all().order_by("id")),
"targets" : map(lambda x: {"target" : x.target, "task" : x.task, "pk": x.pk}, prj.projecttarget_set.all()),
"freqtargets": freqtargets,
"freqtargets": freqtargets[:5],
"releases": map(lambda x: {"id": x.pk, "name": x.name, "description":x.description}, Release.objects.all()),
"project_html": 1,
}
try:
context["machine"] = {"name": prj.projectvariable_set.get(name="MACHINE").value}
@@ -2202,7 +2370,7 @@ if toastermain.settings.MANAGED:
# return all project settings
return HttpResponse(jsonfilter( {
"error": "ok",
"layers" : map(lambda x: {"id": x.layercommit.pk, "orderid" : x.pk, "name" : x.layercommit.layer.name, "giturl" : x.layercommit.layer.vcs_url, "url": x.layercommit.layer.layer_index_url, "layerdetailurl": reverse("layerdetails", args=(x.layercommit.layer.pk,)), "branch" : { "name" : x.layercommit.up_branch.name, "layersource" : x.layercommit.up_branch.layer_source.name}}, prj.projectlayer_set.all().select_related("layer").order_by("id")),
"layers" : map(lambda x: {"id": x.layercommit.pk, "orderid" : x.pk, "name" : x.layercommit.layer.name, "giturl" : x.layercommit.layer.vcs_url, "url": x.layercommit.layer.layer_index_url, "layerdetailurl": reverse("layerdetails", args=(x.layercommit.pk,)), "branch" : { "name" : x.layercommit.get_vcs_reference(), "layersource" : x.layercommit.up_branch.layer_source.name}}, prj.projectlayer_set.all().select_related("layer").order_by("id")),
"builds" : _project_recent_build_list(prj),
"variables": map(lambda x: (x.name, x.value), prj.projectvariable_set.all()),
"machine": {"name": prj.projectvariable_set.get(name="MACHINE").value},
@@ -2227,9 +2395,14 @@ if toastermain.settings.MANAGED:
def _lv_to_dict(x):
return {"id": x.pk, "name": x.layer.name, "tooltip": x.layer.vcs_url+" | "+x.commit,
"detail": "(" + x.layer.vcs_url + (")" if x.up_branch == None else " | "+x.up_branch.name+")"),
"giturl": x.layer.vcs_url, "layerdetailurl" : reverse('layerdetails', args=(x.pk,))}
return {"id": x.pk,
"name": x.layer.name,
"tooltip": x.layer.vcs_url+" | "+x.get_vcs_reference(),
"detail": "(" + x.layer.vcs_url + (")" if x.up_branch == None else " | "+x.get_vcs_reference()+")"),
"giturl": x.layer.vcs_url,
"layerdetailurl" : reverse('layerdetails', args=(x.pk,)),
"revision" : x.get_vcs_reference(),
}
# returns layers for current project release that are not in the project set, matching the name
@@ -2244,7 +2417,7 @@ if toastermain.settings.MANAGED:
# and show only the selected layers for this project
final_list = set([x.get_equivalents_wpriority(prj)[0] for x in queryset_all])
return HttpResponse(jsonfilter( { "error":"ok", "list" : map( _lv_to_dict, final_list) }), content_type = "application/json")
return HttpResponse(jsonfilter( { "error":"ok", "list" : map( _lv_to_dict, sorted(final_list, key = lambda x: x.layer.name)) }), content_type = "application/json")
# returns layer dependencies for a layer, excluding current project layers
@@ -2254,7 +2427,7 @@ if toastermain.settings.MANAGED:
final_list = set([x.get_equivalents_wpriority(prj)[0] for x in queryset])
return HttpResponse(jsonfilter( { "error":"ok", "list" : map( _lv_to_dict, final_list) }), content_type = "application/json")
return HttpResponse(jsonfilter( { "error":"ok", "list" : map( _lv_to_dict, sorted(final_list, key = lambda x: x.layer.name)) }), content_type = "application/json")
@@ -2293,20 +2466,28 @@ if toastermain.settings.MANAGED:
# returns targets provided by current project layers
if request.GET['type'] == "targets":
queryset_all = Recipe.objects.filter(name__icontains=request.GET.get('value',''))
layer_equivalent_set = []
for i in prj.projectlayer_set.all():
layer_equivalent_set += i.layercommit.get_equivalents_wpriority(prj)
queryset_all = queryset_all.filter(layer_version__in = layer_equivalent_set)
search_token = request.GET.get('value','')
queryset_all = Recipe.objects.filter(layer_version__layer__name__in = [x.layercommit.layer.name for x in prj.projectlayer_set.all().select_related("layercommit__layer")]).filter(Q(name__icontains=search_token) | Q(layer_version__layer__name__icontains=search_token))
# layer_equivalent_set = []
# for i in prj.projectlayer_set.all().select_related("layercommit__up_branch", "layercommit__layer"):
# layer_equivalent_set += i.layercommit.get_equivalents_wpriority(prj)
# queryset_all = queryset_all.filter(layer_version__in = layer_equivalent_set)
# if we have more than one hit here (for distinct name and version), max the id it out
queryset_all_maxids = queryset_all.values('name').distinct().annotate(max_id=Max('id')).values_list('max_id')
queryset_all = queryset_all.filter(id__in = queryset_all_maxids)
queryset_all = queryset_all.filter(id__in = queryset_all_maxids).order_by("name").select_related("layer_version__layer")
return HttpResponse(jsonfilter({ "error":"ok",
"list" : map ( lambda x: {"id": x.pk, "name": x.name, "detail":"[" + x.layer_version.layer.name + (" | " + x.layer_version.up_branch.name + "]" if x.layer_version.up_branch is not None else "]")},
"list" :
# 7152 - sort by token position
sorted (
map ( lambda x: {"id": x.pk, "name": x.name, "detail":"[" + x.layer_version.layer.name +"]"},
queryset_all[:8]),
key = lambda i: i["name"].find(search_token) if i["name"].find(search_token) > -1 else 9999,
)
}), content_type = "application/json")
@@ -2314,12 +2495,18 @@ if toastermain.settings.MANAGED:
if request.GET['type'] == "machines":
queryset_all = Machine.objects.all()
if 'project_id' in request.session:
queryset_all = queryset_all.filter(layer_version__in = prj.projectlayer_equivalent_set())
queryset_all = queryset_all.filter(layer_version__in = prj.projectlayer_equivalent_set()).order_by("name")
search_token = request.GET.get('value','')
queryset_all = queryset_all.filter(Q(name__icontains=search_token) | Q(description__icontains=search_token))
return HttpResponse(jsonfilter({ "error":"ok",
"list" : map ( lambda x: {"id": x.pk, "name": x.name, "detail":"[" + x.layer_version.layer.name+ (" | " + x.layer_version.up_branch.name + "]" if x.layer_version.up_branch is not None else "]")},
queryset_all.filter(name__icontains=request.GET.get('value',''))[:8]),
"list" :
# 7152 - sort by the token position
sorted (
map ( lambda x: {"id": x.pk, "name": x.name, "detail":"[" + x.layer_version.layer.name+ "]"}, queryset_all[:8]),
key = lambda i: i["name"].find(search_token) if i["name"].find(search_token) > -1 else 9999,
)
}), content_type = "application/json")
# returns all projects
@@ -2366,11 +2553,17 @@ if toastermain.settings.MANAGED:
t=request.POST['configvarDel'].strip()
pt = ProjectVariable.objects.get(pk = int(t)).delete()
# return all project settings
# return all project settings, filter out blacklist and elsewhere-managed variables
vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context()
configvars_query = ProjectVariable.objects.filter(project_id = pid).all()
for var in vars_managed:
configvars_query = configvars_query.exclude(name = var)
for var in vars_blacklist:
configvars_query = configvars_query.exclude(name = var)
return_data = {
"error": "ok",
'configvars' : map(lambda x: (x.name, x.value, x.pk), ProjectVariable.objects.filter(project_id = pid).all()),
'configvars' : map(lambda x: (x.name, x.value, x.pk), configvars_query),
}
try:
return_data['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value,
@@ -2684,31 +2877,38 @@ if toastermain.settings.MANAGED:
queryset_with_search = _get_queryset(Recipe, queryset_all, None, search_term, ordering_string, '-name')
# get unique values for 'name' and 'version', and select the maximum ID for each entry (the max id is the newest one)
queryset_with_search_maxids = queryset_with_search.values('name').distinct().annotate(max_id=Max('id')).values_list('max_id')
# get unique values for 'name', and select the maximum ID for each entry (the max id is the newest one)
queryset_with_search = queryset_with_search.filter(id__in=queryset_with_search_maxids).select_related('layer_version', 'layer_version__layer')
# force evaluation of the query here; to process the MAX/GROUP BY, a temporary table is used, on which indexing is very slow
# by forcing the evaluation here we also prime the caches
queryset_with_search_maxids = map(lambda i: i[0], list(queryset_with_search.values('name').distinct().annotate(max_id=Max('id')).values_list('max_id')))
queryset_with_search = queryset_with_search.filter(id__in=queryset_with_search_maxids).select_related('layer_version', 'layer_version__layer', 'layer_version__up_branch', 'layer_source')
objects = list(queryset_with_search)
for e in objects:
e.preffered_layerversion = e.layer_version.get_equivalents_wpriority(prj)[0]
# retrieve the objects that will be displayed in the table; targets a paginator and gets a page range to display
target_info = _build_page_range(Paginator(objects, request.GET.get('count', 10)),request.GET.get('page', 1))
target_info = _build_page_range(Paginator(queryset_with_search, request.GET.get('count', 10)),request.GET.get('page', 1))
for e in target_info.object_list:
e.preffered_layerversion = e.layer_version.get_equivalents_wpriority(prj)[0]
e.vcs_link_url = Layer.objects.filter(name = e.preffered_layerversion.layer.name).exclude(vcs_web_file_base_url__isnull=True)[0].vcs_web_file_base_url
if e.vcs_link_url != None:
fp = e.preffered_layerversion.dirpath + "/" + e.file_path
e.vcs_link_url = e.vcs_link_url.replace('%path%', fp)
e.vcs_link_url = e.vcs_link_url.replace('%branch%', e.preffered_layerversion.up_branch.name)
context = {
'projectlayerset' : jsonfilter(map(lambda x: x.layercommit.id, prj.projectlayer_set.all())),
'projectlayerset' : jsonfilter(map(lambda x: x.layercommit.id, prj.projectlayer_set.all().select_related("layercommit"))),
'objects' : target_info,
'objectname' : "targets",
'objectname' : "recipes",
'default_orderby' : 'name:+',
'tablecols' : [
{ 'name': 'Target',
{ 'name': 'Recipe',
'orderfield': _get_toggle_order(request, "name"),
'ordericon' : _get_toggle_order_icon(request, "name"),
},
{ 'name': 'Target version',
{ 'name': 'Recipe version',
'dclass': 'span2',
},
{ 'name': 'Description',
@@ -2778,15 +2978,17 @@ if toastermain.settings.MANAGED:
# for that object type. copypasta for all needed table searches
(filter_string, search_term, ordering_string) = _search_tuple(request, Machine)
queryset_all = Machine.objects.all()
queryset_all = queryset_all.prefetch_related('layer_version')
prj = Project.objects.get(pk = request.session['project_id'])
compatible_layers = prj.compatible_layerversions()
queryset_all = Machine.objects.filter(layer_version__in=compatible_layers)
queryset_all = _get_queryset(Machine, queryset_all, None, search_term, ordering_string, 'name')
queryset_all = queryset_all.prefetch_related('layer_version')
# Make sure we only show machines / layers which are compatible
# with the current project
queryset_all = queryset_all.filter(layer_version__in=compatible_layers)
project_layers = ProjectLayer.objects.filter(project_id=request.session['project_id']).values_list('layercommit',flat=True)
@@ -2847,7 +3049,7 @@ if toastermain.settings.MANAGED:
def get_project_configvars_context():
# Vars managed outside of this view
vars_managed = {
'MACHINE'
'MACHINE', 'BBLAYERS'
}
vars_blacklist = {
@@ -2859,7 +3061,7 @@ if toastermain.settings.MANAGED:
vars_fstypes = {
'btrfs','cpio','cpio.gz','cpio.lz4','cpio.lzma','cpio.xz','cramfs',
'elf','ext2','ext2.bz2','ext2.gz','ext2.lzma', 'ext3','ext3.gz','hddimg',
'elf','ext2','ext2.bz2','ext2.gz','ext2.lzma', 'ext4', 'ext4.gz', 'ext3','ext3.gz','hddimg',
'iso','jffs2','jffs2.sum','squashfs','squashfs-lzo','squashfs-xz','tar.bz2',
'tar.lz4','tar.xz','tartar.gz','ubi','ubifs','vmdk'
}
@@ -2874,9 +3076,16 @@ if toastermain.settings.MANAGED:
except Project.DoesNotExist:
return HttpResponseNotFound("<h1>Project id " + pid + " is unavailable</h1>")
# remove blacklist and externally managed varaibles from this list
vars_managed,vars_fstypes,vars_blacklist = get_project_configvars_context()
configvars = ProjectVariable.objects.filter(project_id = pid).all()
for var in vars_managed:
configvars = configvars.exclude(name = var)
for var in vars_blacklist:
configvars = configvars.exclude(name = var)
context = {
'configvars': ProjectVariable.objects.filter(project_id = pid).all(),
'configvars': configvars,
'vars_managed': vars_managed,
'vars_fstypes': vars_fstypes,
'vars_blacklist': vars_blacklist,
@@ -2884,22 +3093,27 @@ if toastermain.settings.MANAGED:
try:
context['distro'] = ProjectVariable.objects.get(project = prj, name = "DISTRO").value
context['distro_defined'] = "1"
except ProjectVariable.DoesNotExist:
pass
try:
context['fstypes'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_FSTYPES").value
context['fstypes_defined'] = "1"
except ProjectVariable.DoesNotExist:
pass
try:
context['image_install_append'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL_append").value
context['image_install_append_defined'] = "1"
except ProjectVariable.DoesNotExist:
pass
try:
context['package_classes'] = ProjectVariable.objects.get(project = prj, name = "PACKAGE_CLASSES").value
context['package_classes_defined'] = "1"
except ProjectVariable.DoesNotExist:
pass
try:
context['sdk_machine'] = ProjectVariable.objects.get(project = prj, name = "SDKMACHINE").value
context['sdk_machine_defined'] = "1"
except ProjectVariable.DoesNotExist:
pass
@@ -3011,7 +3225,7 @@ if toastermain.settings.MANAGED:
if file_name is None:
raise Exception("Could not handle artifact %s id %s" % (artifact_type, artifact_id))
else:
content_type = b.buildrequest.environment.get_artifact_type(file_name)
content_type = MimeTypeFinder.get_mimetype(file_name)
fsock = b.buildrequest.environment.get_artifact(file_name)
file_name = os.path.basename(file_name) # we assume that the build environment system has the same path conventions as host
@@ -3026,6 +3240,12 @@ if toastermain.settings.MANAGED:
}
return render(request, "unavailable_artifact.html", context)
# This returns the mru object that is needed for the
# managed_mrb_section.html template
def _managed_get_latest_builds():
build_mru = BuildRequest.objects.all()
build_mru = list(build_mru.filter(Q(state__lt=BuildRequest.REQ_COMPLETED) or Q(state=BuildRequest.REQ_DELETED)).order_by("-pk")) + list(build_mru.filter(state__in=[BuildRequest.REQ_COMPLETED, BuildRequest.REQ_FAILED]).order_by("-pk")[:3])
return build_mru
def projects(request):
@@ -3049,7 +3269,7 @@ if toastermain.settings.MANAGED:
project_info = _build_page_range(Paginator(queryset, pagesize), request.GET.get('page', 1))
# build view-specific information; this is rendered specifically in the builds page, at the top of the page (i.e. Recent builds)
build_mru = Build.objects.order_by("-started_on")[:3]
build_mru = _managed_get_latest_builds()
# translate the project's build target strings
fstypes_map = {};
@@ -3090,6 +3310,13 @@ if toastermain.settings.MANAGED:
'ordericon':_get_toggle_order_icon(request, "name"),
'orderkey' : 'name',
},
{'name': 'Last activity on',
'clclass': 'updated',
'qhelp': "Shows the starting date and time of the last project build. If the project has no builds, it shows the date the project was created",
'orderfield': _get_toggle_order(request, "updated", True),
'ordericon':_get_toggle_order_icon(request, "updated"),
'orderkey' : 'updated',
},
{'name': 'Release',
'qhelp' : "The version of the build system used by the project",
'orderfield': _get_toggle_order(request, "release__name"),
@@ -3102,24 +3329,19 @@ if toastermain.settings.MANAGED:
{'name': 'Number of builds',
'qhelp': "How many builds have been run for the project",
},
{'name': 'Last build', 'clclass': 'updated',
'orderfield': _get_toggle_order(request, "updated", True),
'ordericon':_get_toggle_order_icon(request, "updated"),
'orderkey' : 'updated',
},
{'name': 'Last outcome', 'clclass': 'loutcome',
{'name': 'Last build outcome', 'clclass': 'loutcome',
'qhelp': "Tells you if the last project build completed successfully or failed",
},
{'name': 'Last target', 'clclass': 'ltarget',
'qhelp': "The last project build target(s): one or more recipes or image recipes",
{'name': 'Recipe', 'clclass': 'ltarget',
'qhelp': "The last recipe that was built in this project",
},
{'name': 'Last errors', 'clclass': 'lerrors',
{'name': 'Errors', 'clclass': 'lerrors',
'qhelp': "How many errors were encountered during the last project build (if any)",
},
{'name': 'Last warnings', 'clclass': 'lwarnings',
{'name': 'Warnings', 'clclass': 'lwarnings',
'qhelp': "How many warnigns were encountered during the last project build (if any)",
},
{'name': 'Last image files', 'clclass': 'limagefiles', 'hidden': 1,
{'name': 'Image files', 'clclass': 'limagefiles', 'hidden': 1,
'qhelp': "The root file system types produced by the last project build",
},
]
@@ -3161,6 +3383,8 @@ else:
# boilerplate code that takes a request for an object type and returns a queryset
# for that object type. copypasta for all needed table searches
(filter_string, search_term, ordering_string) = _search_tuple(request, Build)
# post-process any date range filters
filter_string,daterange_selected = _modify_date_range_filter(filter_string)
queryset_all = Build.objects.exclude(outcome = Build.IN_PROGRESS)
queryset_with_search = _get_queryset(Build, queryset_all, None, search_term, ordering_string, '-completed_on')
queryset = _get_queryset(Build, queryset_all, filter_string, search_term, ordering_string, '-completed_on')
@@ -3171,6 +3395,9 @@ else:
# build view-specific information; this is rendered specifically in the builds page, at the top of the page (i.e. Recent builds)
build_mru = Build.objects.order_by("-started_on")[:3]
# calculate the exact begining of local today and yesterday, append context
context_date,today_begin,yesterday_begin = _add_daterange_context(queryset_all, request, {'started_on','completed_on'})
# set up list of fstypes for each build
fstypes_map = {};
for build in build_info:
@@ -3201,6 +3428,7 @@ else:
'fstypes' : fstypes_map,
'search_term' : search_term,
'total_count' : queryset_with_search.count(),
'daterange_selected' : daterange_selected,
# Specifies the display of columns for the table, appearance in "Edit columns" box, toggling default show/hide, and specifying filters for columns
'tablecols' : [
{'name': 'Outcome', # column with a single filter
@@ -3219,8 +3447,8 @@ else:
]
}
},
{'name': 'Target', # default column, disabled box, with just the name in the list
'qhelp': "This is the build target or build targets (i.e. one or more recipes or image recipes)",
{'name': 'Recipe', # default column, disabled box, with just the name in the list
'qhelp': "What you built (i.e. one or more recipes or image recipes)",
'orderfield': _get_toggle_order(request, "target__target"),
'ordericon':_get_toggle_order_icon(request, "target__target"),
},
@@ -3237,12 +3465,19 @@ else:
'filter' : {'class' : 'started_on',
'label': 'Show:',
'options' : [
("Today's builds" , 'started_on__gte:'+timezone.now().strftime("%Y-%m-%d"), queryset_with_search.filter(started_on__gte=timezone.now()).count()),
("Yesterday's builds", 'started_on__gte:'+(timezone.now()-timedelta(hours=24)).strftime("%Y-%m-%d"), queryset_with_search.filter(started_on__gte=(timezone.now()-timedelta(hours=24))).count()),
("This week's builds", 'started_on__gte:'+(timezone.now()-timedelta(days=7)).strftime("%Y-%m-%d"), queryset_with_search.filter(started_on__gte=(timezone.now()-timedelta(days=7))).count()),
("Today's builds" , 'started_on__gte:'+today_begin.strftime("%Y-%m-%d"), queryset_all.filter(started_on__gte=today_begin).count()),
("Yesterday's builds",
'started_on__gte!started_on__lt:'
+yesterday_begin.strftime("%Y-%m-%d")+'!'
+today_begin.strftime("%Y-%m-%d"),
queryset_all.filter(
started_on__gte=yesterday_begin,
started_on__lt=today_begin
).count()),
("Build date range", 'daterange', 1, '', 'started_on'),
]
}
},
},
{'name': 'Completed on',
'qhelp': "The date and time the build finished",
'orderfield': _get_toggle_order(request, "completed_on", True),
@@ -3251,9 +3486,16 @@ else:
'filter' : {'class' : 'completed_on',
'label': 'Show:',
'options' : [
("Today's builds", 'completed_on__gte:'+timezone.now().strftime("%Y-%m-%d"), queryset_with_search.filter(completed_on__gte=timezone.now()).count()),
("Yesterday's builds", 'completed_on__gte:'+(timezone.now()-timedelta(hours=24)).strftime("%Y-%m-%d"), queryset_with_search.filter(completed_on__gte=(timezone.now()-timedelta(hours=24))).count()),
("This week's builds", 'completed_on__gte:'+(timezone.now()-timedelta(days=7)).strftime("%Y-%m-%d"), queryset_with_search.filter(completed_on__gte=(timezone.now()-timedelta(days=7))).count()),
("Today's builds" , 'completed_on__gte:'+today_begin.strftime("%Y-%m-%d"), queryset_all.filter(completed_on__gte=today_begin).count()),
("Yesterday's builds",
'completed_on__gte!completed_on__lt:'
+yesterday_begin.strftime("%Y-%m-%d")+'!'
+today_begin.strftime("%Y-%m-%d"),
queryset_all.filter(
completed_on__gte=yesterday_begin,
completed_on__lt=today_begin
).count()),
("Build date range", 'daterange', 1, '', 'completed_on'),
]
}
},
@@ -3314,6 +3556,9 @@ else:
]
}
# merge daterange values
context.update(context_date)
response = render(request, template, context)
_save_parameters_cookies(response, pagesize, orderby, request)
return response
@@ -3330,7 +3575,7 @@ else:
def xhr_projectbuild(request, pid):
return render(request, 'landing_not_managed.html')
def xhr_build(request, pid):
def xhr_build(request):
return render(request, 'landing_not_managed.html')
def xhr_projectinfo(request):
@@ -3342,7 +3587,7 @@ else:
def xhr_datatypeahead(request):
return render(request, 'landing_not_managed.html')
def xhr_configvaredit(request):
def xhr_configvaredit(request, pid):
return render(request, 'landing_not_managed.html')
def importlayer(request):
@@ -3351,22 +3596,19 @@ else:
def layers(request):
return render(request, 'landing_not_managed.html')
def layerdetails(request):
def layerdetails(request, layerid):
return render(request, 'landing_not_managed.html')
def targets(request):
return render(request, 'landing_not_managed.html')
def targetdetails(request):
return render(request, 'landing_not_managed.html')
def machines(request):
return render(request, 'landing_not_managed.html')
def projectconf(request):
def projectconf(request, pid):
return render(request, 'landing_not_managed.html')
def projectbuilds(request):
def projectbuilds(request, pid):
return render(request, 'landing_not_managed.html')
def build_artifact(request, build_id, artifact_type, artifact_id):

View File

@@ -241,7 +241,9 @@ TARFILES = mega-manual.html mega-style.css figures/yocto-environment.png \
figures/analysis-for-package-splitting.png \
figures/image-generation.png \
figures/sdk-generation.png figures/recipe-workflow.png \
figures/build-workspace-directory.png figures/mega-title.png
figures/build-workspace-directory.png figures/mega-title.png \
figures/toaster-title.png figures/hosted-service.png \
figures/simple-configuration.png
endif
MANUALS = $(DOC)/$(DOC).html
@@ -328,7 +330,9 @@ endif
ifeq ($(DOC),toaster-manual)
XSLTOPTS = --xinclude
ALLPREQ = html tarball
TARFILES = toaster-manual.html toaster-manual-style.css figures/toaster-title.png
TARFILES = toaster-manual.html toaster-manual-style.css \
figures/toaster-title.png figures/simple-configuration.png \
figures/hosted-service.png
MANUALS = $(DOC)/$(DOC).html $(DOC)/$(DOC).pdf
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -338,7 +342,7 @@ endif
##
# These URI should be rewritten by your distribution's xml catalog to
# match your locally installed XSL stylesheets.
XSL_BASE_URI = http://docbook.sourceforge.net/release/xsl/current
XSL_BASE_URI = http://docbook.sourceforge.net/release/xsl/1.76.1
XSL_XHTML_URI = $(XSL_BASE_URI)/xhtml/docbook.xsl
all: $(ALLPREQ)

View File

@@ -186,7 +186,7 @@
rebuild it using the appropriate cross-toolchain tools:
<literallayout class='monospaced'>
$ ./configure --host=armv5te-poky-linux-gnueabi \
--with-libtool-sysroot=<replaceable>sysroot-dir</replaceable>
--with-libtool-sysroot=<replaceable>sysroot_dir</replaceable>
</literallayout>
<note>
If the <filename>configure</filename> script results in problems recognizing the

View File

@@ -1,8 +1,16 @@
<?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://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.76.1/xhtml/docbook.xsl" />
-->
<xsl:include href="../template/permalinks.xsl"/>
<xsl:include href="../template/section.title.xsl"/>
<xsl:include href="../template/component.title.xsl"/>

View File

@@ -5,8 +5,16 @@
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<xsl:import
href="http://docbook.sourceforge.net/release/xsl/current/eclipse/eclipse3.xsl" />
href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-->
<xsl:param name="chunker.output.indent" select="'yes'"/>
<xsl:param name="chunk.quietly" select="1"/>

View File

@@ -83,9 +83,19 @@
</revision>
<revision>
<revnumber>1.8</revnumber>
<date>Sometime in 2015</date>
<date>April 2015</date>
<revremark>Released with the Yocto Project 1.8 Release.</revremark>
</revision>
<revision>
<revnumber>1.8.1</revnumber>
<date>November 2015</date>
<revremark>Released with the Yocto Project 1.8.1 Release.</revremark>
</revision>
<revision>
<revnumber>1.8.2</revnumber>
<date>March 2016</date>
<revremark>Released with the Yocto Project 1.8.2 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -480,8 +480,8 @@
and are ideal for experimentation using Yocto Project.
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
the Yocto Project Reference Manual.
"<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>"
chapter in the Yocto Project Reference Manual.
</para>
<para>
@@ -492,62 +492,28 @@
</para>
<para>
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 of 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>,
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>
and then rebuild the image.
With this method, you need to modify the
<ulink url='&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGE_FEATURES'><filename>EXTRA_IMAGE_FEATURES</filename></ulink>
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
"<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
Up the Cross-Development Environment</link>" section.</para></listitem>
<listitem><para>Get the <filename>tcf-agent</filename> source code using
the following commands:
<literallayout class='monospaced'>
$ git clone http://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git
$ cd org.eclipse.tcf.agent/agent
</literallayout></para></listitem>
<listitem><para>Locate the
<filename>Makefile.inc</filename> file inside the
<filename>agent</filename> folder and modify it
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>.
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
be <filename>obj/$(OPSYS)/$(MACHINE)/Debug/agent</filename>.</para></listitem>
<listitem><para>Deploy the agent into the image's root filesystem.</para></listitem>
</orderedlist>
</para></listitem>
</itemizedlist>
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>).
You can do this by including the <filename>eclipse-debug</filename>
image feature.
<note>
See the
"<ulink url='&YOCTO_DOCS_REF_URL;#ref-features-image'>Image Features</ulink>"
section in the Yocto Project Reference Manual for information on
image features.
</note>
To include the <filename>eclipse-debug</filename> image feature,
modify your <filename>local.conf</filename> file in the
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>
so that the
<ulink url='&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGE_FEATURES'><filename>EXTRA_IMAGE_FEATURES</filename></ulink>
variable includes the "eclipse-debug" feature.
After modifying the configuration file, you can rebuild 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>
</section>
@@ -622,50 +588,56 @@
<para>
As an alternative to locating and downloading a toolchain installer,
you can build the toolchain installer one of two ways if you have a
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>:
<itemizedlist>
<listitem><para>
Use <filename>bitbake meta-toolchain</filename>.
This method requires you to still install the target
sysroot by installing and extracting it separately.
For information on how to install the sysroot, see the
"<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>"
section.
</para></listitem>
<listitem><para>
Use <filename>bitbake</filename> <replaceable>image</replaceable> <filename>-c populate_sdk</filename>.
This method has significant advantages over the previous method
because it results in a toolchain installer that contains the
sysroot that matches your target root filesystem.
</para>
you can build the toolchain installer if you have a
<ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
<note>
Although not the preferred method, it is also possible to use
<filename>bitbake meta-toolchain</filename> to build the toolchain
installer.
If you do use this method, you must separately install and extract
the target sysroot.
For information on how to install the sysroot, see the
"<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>"
section.
</note>
</para>
<para>Another powerful feature is that the toolchain is
completely self-contained.
The binaries are linked against their own copy of
<filename>libc</filename>, which results in no dependencies
on the target system.
To achieve this, the pointer to the dynamic loader is
configured at install time since that path cannot be dynamically
altered.
This is the reason for a wrapper around the
<filename>populate_sdk</filename> archive.</para>
<para>
To build the toolchain installer and populate the SDK image, use the
following command:
<literallayout class='monospaced'>
$ bitbake <replaceable>image</replaceable> -c populate_sdk
</literallayout>
The command results in a toolchain installer that contains the sysroot
that matches your target root filesystem.
</para>
<para>Another feature is that only one set of cross-canadian
toolchain binaries are produced per architecture.
This feature takes advantage of the fact that the target
hardware can be passed to <filename>gcc</filename> as a set of
compiler options.
Those options are set up by the environment script and
contained in variables such as
<ulink url='&YOCTO_DOCS_REF_URL;#var-CC'><filename>CC</filename></ulink>
and
<ulink url='&YOCTO_DOCS_REF_URL;#var-LD'><filename>LD</filename></ulink>.
This reduces the space needed for the tools.
Understand, however, that a sysroot is still needed for every
target since those binaries are target-specific.
</para></listitem>
</itemizedlist>
<para>
Another powerful feature is that the toolchain is completely
self-contained.
The binaries are linked against their own copy of
<filename>libc</filename>, which results in no dependencies
on the target system.
To achieve this, the pointer to the dynamic loader is
configured at install time since that path cannot be dynamically
altered.
This is the reason for a wrapper around the
<filename>populate_sdk</filename> archive.
</para>
<para>
Another feature is that only one set of cross-canadian toolchain
binaries are produced per architecture.
This feature takes advantage of the fact that the target hardware can
be passed to <filename>gcc</filename> as a set of compiler options.
Those options are set up by the environment script and contained in
variables such as
<ulink url='&YOCTO_DOCS_REF_URL;#var-CC'><filename>CC</filename></ulink>
and
<ulink url='&YOCTO_DOCS_REF_URL;#var-LD'><filename>LD</filename></ulink>.
This reduces the space needed for the tools.
Understand, however, that a sysroot is still needed for every target
since those binaries are target-specific.
</para>
<para>

View File

@@ -1,8 +1,16 @@
<?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://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.76.1/xhtml/docbook.xsl" />
-->
<xsl:include href="../template/permalinks.xsl"/>
<xsl:include href="../template/section.title.xsl"/>
<xsl:include href="../template/component.title.xsl"/>

View File

@@ -5,8 +5,16 @@
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<xsl:import
href="http://docbook.sourceforge.net/release/xsl/current/eclipse/eclipse3.xsl" />
href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-->
<xsl:param name="chunker.output.indent" select="'yes'"/>
<xsl:param name="chunk.quietly" select="1"/>

View File

@@ -95,9 +95,19 @@
</revision>
<revision>
<revnumber>1.8</revnumber>
<date>Sometime in 2015</date>
<date>April 2015</date>
<revremark>Released with the Yocto Project 1.8 Release.</revremark>
</revision>
<revision>
<revnumber>1.8.1</revnumber>
<date>November 2015</date>
<revremark>Released with the Yocto Project 1.8.1 Release.</revremark>
</revision>
<revision>
<revnumber>1.8.2</revnumber>
<date>March 2016</date>
<revremark>Released with the Yocto Project 1.8.2 Release.</revremark>
</revision>
</revhistory>
<copyright>

View File

@@ -100,11 +100,6 @@
/usr/local/src/yocto/meta-yocto \
/usr/local/src/yocto/meta-yocto-bsp \
/usr/local/src/yocto/meta-mylayer \
"
BBLAYERS_NON_REMOVABLE ?= " \
/usr/local/src/yocto/meta \
/usr/local/src/yocto/meta-yocto \
"
</literallayout>
</para>
@@ -589,7 +584,7 @@
COMPATIBLE_MACHINE_emenlow-noemgd = "emenlow-noemgd"
KMACHINE_emenlow-noemgd = "emenlow"
KBRANCH_emenlow-noemgd = "standard/base"
KERNEL_FEATURES_append_emenlow-noemgd = " features/drm-gma500/drm-gma500"
KERNEL_FEATURES_append_emenlow-noemgd = " features/drm-gma500/drm-gma500.scc"
LINUX_VERSION_emenlow-noemgd = "3.14.19"
SRCREV_machine_emenlow-noemgd = "902f34d36102a4b2008b776ecae686f80d307e12"
@@ -773,7 +768,7 @@
recipes.
The recipes themselves should follow the general guidelines
for recipes used in the Yocto Project found in the
"<ulink url='https://wiki.yoctoproject.org/wiki/Recipe_%26_Patch_Style_Guide'>Yocto Recipe and Patch Style Guide</ulink>".
"<ulink url='http://openembedded.org/wiki/Styleguide'>OpenEmbedded Style Guide</ulink>".
</para></listitem>
<listitem><para><emphasis>License File:</emphasis>
You must include a license file in the

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,16 @@
<?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://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/xhtml/docbook.xsl" />
<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.76.1/xhtml/docbook.xsl" />
-->
<xsl:include href="../template/permalinks.xsl"/>
<xsl:include href="../template/section.title.xsl"/>
<xsl:include href="../template/component.title.xsl"/>

View File

@@ -5,8 +5,16 @@
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<!--
<xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
<xsl:import
href="http://docbook.sourceforge.net/release/xsl/current/eclipse/eclipse3.xsl" />
href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-->
<xsl:param name="chunker.output.indent" select="'yes'"/>
<xsl:param name="chunk.quietly" select="1"/>

View File

@@ -146,6 +146,12 @@
This manual presents a set of common and generally useful tracing and
profiling schemes along with their applications (as appropriate) to each tool.
</para></listitem>
<listitem><para><emphasis>
<ulink url='&YOCTO_DOCS_TOAST_URL;'>Toaster User Manual</ulink>:</emphasis>
This manual introduces and describes how to set up and use
Toaster, which is a web interface to the Yocto Project's
<link linkend='build-system-term'>OpenEmbedded Build System</link>.
</para></listitem>
<listitem><para><emphasis>
<ulink url='http://www.youtube.com/watch?v=3ZlOu-gLsh0'>
Eclipse IDE Yocto Plug-in</ulink>:</emphasis>

Some files were not shown because too many files have changed in this diff Show More