Compare commits

..

143 Commits

Author SHA1 Message Date
Scott Rifenbark
27af23e65f documentation: yocto-project-qs - Final changes before the 1.3 lockdown
Fixed used of "Source Directory" and Build Directory.

(From yocto-docs rev: a4d79c5a7e73003fc99c274d876fbea453a80d20)

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

(From yocto-docs rev: 7f166508337c9d4aadad23997470a8871c5e42a4)

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

(From yocto-docs rev: bc966e5a78dadd14ecf1896a36e40a9b256bae77)

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

(From yocto-docs rev: 65973f7b30699fbb82b4d7f1b907e947489ba7d0)

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

(From yocto-docs rev: 2b941103585a31b5dbcb65b784cc3381467ed697)

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

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

(From yocto-docs rev: 1a20418d8791d754ad66c5a059e65bd68a4c6b32)

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

(From yocto-docs rev: fd8a291349c06328adebd37f8a9bbeaa49adb44c)

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

(From yocto-docs rev: bb27fcb3b990bb335176d5da9fec420fdc31bf22)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 00:03:16 +01:00
Scott Rifenbark
48363d5a00 documentation: dev-manual - removed the wip.png figure
this figure used to be at the end of the development manual.
I have removed it from both figures directories and taken
it out of the TARFILE list in the Makefile.

(From yocto-docs rev: ad8fcfc4bddb6bcee0e1a4ece78cd87ab0d51b6c)

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

Richard Purdie reviewed the changes.

(From yocto-docs rev: 53865f904d5d4675286419a57bbb9282edfc1d0b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-22 09:49:10 +01:00
Scott Rifenbark
4cce3e4aba documentation: poky-ref-manual - edits to SUMMARY and DESCRIPTION
Some final edits to these two variable descriptions from
Paul Eggleton.

(From yocto-docs rev: b606eed0f6a326ef572cd831b642312bb827a8c5)

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

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

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

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

(From yocto-docs rev: 73b68aa349530f6604c7edc87b503f1b614b2c46)

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

(From yocto-docs rev: 95fd830ffb668109631205df4538454ccf023b20)

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

(From yocto-docs rev: 355eb3ebe02fbe4a340adaf83bf29a46f7c8230f)

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

(From yocto-docs rev: 0c76ae0ee14cce62ff02b728b1c9ac21f4f3b385)

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

(From yocto-docs rev: d8e79fdf909ba5586dc45320b7cca03de639f49b)

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

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

(From yocto-docs rev: 68e1eba075819863d8137be0b4c70935b88cb1a3)

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

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-19 17:38:55 +01:00
Scott Rifenbark
ed96f96db0 documentation: poky-ref-manual - edits to MACHINE type variables.
Did some editing that helps clarify variables that deal with
the MACHINE.

(From yocto-docs rev: f1f63acffc952cc7d755fc6dd555379572fddaf0)

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

(From yocto-docs rev: 7b51db2d3409d6a9c74a7a9b0b2cc39cf6622033)

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

(From yocto-docs rev: 7345bbf6c10b823e6364e85a4e75a7ec60a29aef)

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

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:15:06 +01:00
Scott Rifenbark
c9b61655e0 documentation: poky-ref-manual - small edit in wording.
Better wording for MULTIMACH_TARGET_SYS.

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

* Added correct information to the STAMP variable glossary
  entry.

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

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

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

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

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

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

(From yocto-docs rev: 81d2b79035fc99f92364bfef2c76076738cbaa52)

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

(From yocto-docs rev: 69b21d5f62ad9020646a26ce13d349af50aee419)

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

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

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

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

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

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

(From yocto-docs rev: 94b8a45827d2bf7f16ec530de694ec5e4e6ed164)

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

(From yocto-docs rev: 1fc9313fe6c69db3d8cece6d940f78a2f0dc8386)

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

(From yocto-docs rev: b7d9a547218f1d79ae5802a41df11911bc9b7e9f)

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

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

(From yocto-docs rev: df8e02c17bc8157ad4abd1e4954f762ccde8915c)

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

(From yocto-docs rev: f545414ead63ff58557142acdf416bd5e58d5c45)

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

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

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

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

(From yocto-docs rev: 8e2ff293e85a602efd98aceb20da5a2ea5f2a34d)

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

(From yocto-docs rev: d480c8525861db4383ce1b656168c01d01c26b2e)

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

(From yocto-docs rev: 9c4fbcb473dc594647ba8779162379a745f8f8d6)

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

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

(From yocto-docs rev: ff85945574466b2e6431fbaa0026cdea9d96ac9b)

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

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

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

(From yocto-docs rev: c90a8f85f4462caa49c7da2e7ec4541534bee57a)

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

(From yocto-docs rev: 8f3d72dad9b68f78987a497092d74ff3f7e35b28)

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

(From yocto-docs rev: 07b3dd9a73be25f31c919ed750ca320c7507eff0)

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

(From yocto-docs rev: 4ec095f0f45cb3a62a8dfdd1a098b23cbe1dc7b5)

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

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

(From yocto-docs rev: 018af5c28b44464ae66646780ade910bdcab2bef)

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

(From yocto-docs rev: 50f8f0394d8d849e0a227d6c9ffcdc3cccb7e307)

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

(From yocto-docs rev: 07d08314d3151de7073567a7800156f69fdb549e)

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

(From yocto-docs rev: dd82b176bb059d03faec1abdd406e4cf8f0e5afb)

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

(From yocto-docs rev: 3c3b8b117b09d78637ae8c4d27f77194cf197ea9)

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

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

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

(From yocto-docs rev: 96b93175d662696c3c2f25c0d8aa73ab6c5abdd3)

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

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

(From yocto-docs rev: ac61e22e2f89926fbbda56fbaa4384c3c5156360)

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

(From meta-yocto rev: 2724ec2601efeb677df251c46bbcc6a7f255103d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:43:48 +01:00
Saul Wold
f851202b2f distro_alias: Update for Internal BOM tracking
(From meta-yocto rev: 468d15a0949311c602b5a2b5e5bc01bed59b137e)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:43:47 +01:00
Richard Purdie
cc7d4783e7 gitignore: Fix for poky repository
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-15 14:42:59 +01:00
Elizabeth Flanagan
c9de24d3f4 build-appliance-image.bb: Bump SRCREV for 1.3_M5.rc4
Bumping the SRCREV for danny in preparation for 1.3_M5.rc4

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-10-10 14:49:57 -07:00
Richard Purdie
58a7160419 gdbm: Resolve host contamination issue
The autoconf macros detect the presence of -ldbm or -lndbm on the host
system and add the library to link against, for now good reason I can
explain.

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

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

(From OE-Core rev: f609bf5525450bfdb8e0864d44c41cce7f9319c9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 22:46:52 +01:00
Elizabeth Flanagan
767ced9fa5 build-appliance-image.bb: Bump SRCREV for 1.3_M5.rc4
Bumping the SRCREV for danny in preparation for 1.3_M5.rc4

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-10-10 10:53:18 -07:00
Elizabeth Flanagan
5ecc6d0d6f Revert "build-appliance-image.bb: Bumping SRCREV for 1.3_M4"
Wrong build number in the commit log

This reverts commit c030e463ab.
2012-10-10 10:52:48 -07:00
Elizabeth Flanagan
c030e463ab build-appliance-image.bb: Bumping SRCREV for 1.3_M4
In preparation for 1.3_M4, bumping SRCREV for the build appliance

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

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

[YOCTO #2878]

(From OE-Core rev: 5bed2bb831b379a8fbf2f725435af4b7c934359e)

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

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

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

[YOCTO #3080]

(From OE-Core rev: 9d002f7cdc5309c4d850a76e4fd73ff04c980a07)

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

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

(From yocto-docs rev: 3f6de40fcdd364728a2b62f59940a9ae4019d1d5)

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

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

(From yocto-docs rev: 3eba77a81d3460866638a2f2d6b7c27d9dd1a2be)

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

(From yocto-docs rev: c25c4f662c2f8a83fd9b09583646be9dbe01424c)

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

(From yocto-docs rev: c856fe320a0e70701f14312439fec6ccb707f9bd)

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

Many links were modified in other manuals as well.

(From yocto-docs rev: 38adbcb00d4305029cfa94e5ef047da41823f021)

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

(From yocto-docs rev: f6a25e5e3763ea7a1f8a81ce377e3b520143b852)

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

New glossary terms for SPECIAL_PKGSUFFIX, and MLPREFIX.

Also improved the definition of the BPN variable.

(From yocto-docs rev: d9eb38122967a5729f3a6aff1dae00427a22f579)

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

(From yocto-docs rev: 19f0a6411c065388b5bd0083338b164b43baff0e)

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

(From yocto-docs rev: d744e76034ff2711a8c40b9bb1982971d28a04b1)

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

(From yocto-docs rev: 994235a69362dfb0114ef9001ea7f2f2e2fdc5c3)

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

(From yocto-docs rev: f88ec421b257657f02cc0f132ec2580c17f07cef)

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

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

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

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

Fixes [YOCTO #3099].

(From OE-Core rev: cbcfdeb1d55e2e76f199750bda401bad126ae234)

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

(From OE-Core rev: bde88116d9d7e86ca7ecac4cf990689f972b0b1c)

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

(Bitbake rev: 4cd0200e96fb282980a945b80af641a6e022e0b4)

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

(From OE-Core rev: 566c6101cc7a8d90973eb22478ffc77eac23f81c)

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

This fixes to use the correct dependency.

(From OE-Core rev: a6e325342cb489e05927d6cb2bb0a24fa6c20ef8)

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

[YOCTO #3230]

(Bitbake rev: 90fd57ee3cb2856c10bda1f5af4879d2b7cf2668)

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

(Bitbake rev: 17f28f09452f70dfb67fce9a397a99deec84dfe5)

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

We also have a fix from Tom:

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

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

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

(From meta-yocto rev: 54fc1fd107f907a208b41a66c0a7b9b40cb428c7)

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

We also have a fix from Tom:

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

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

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

(From OE-Core rev: f06e7d38db35c56c71a42264361ec45fb3777a14)

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

(From meta-yocto rev: e24ea77ca40e096f294649e3f85c8ec47efcbb87)

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

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

[YOCTO #3186]

(From meta-yocto rev: f2d93f4e79d0c8c0035774cfa7dc4beb197899f4)

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

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

(From OE-Core rev: 9ec1c06915b10d142bf5646396c4e91bb61a40a5)

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

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

(From OE-Core rev: cf25f211ec420e1e8dd48c8e62f60deefe2c6d53)

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

(From OE-Core rev: 1438228d3b54dfdcf8c36154c927c80fcecf688e)

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

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

(From OE-Core rev: 1076910ac3cd55a3f87b5ca7a1db1e38c623480a)

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

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

The following meta branch commits are represented by this update:

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

(From OE-Core rev: a01bb3ec72c375c0f06006769969f63fed3ef566)

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

(From yocto-docs rev: 821162221818f5ce53bb903aeef57c85314f5083)

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

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

(From yocto-docs rev: 1d9d8d72d197bdd81756eed7fe1529f341de6089)

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

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

(From yocto-docs rev: 8283eed4b0b9ec164b87db99c35231f8731ac443)

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

(From yocto-docs rev: 0b4b2ddf9a78a9d6d218ed9a6f0acd3e876d9581)

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

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

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

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

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

(From yocto-docs rev: 8b2ff6b657a1486559799e219baaec9fde2e5c6c)

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

(From yocto-docs rev: 35cd7f6a9722120e47ae8b422dd86593497ebf1c)

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

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

(From yocto-docs rev: 533b45c9d41330497bbd0da58b812a4738ba64a8)

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

(From OE-Core rev: bcefd015fb163d9c382ae05a86569dbcfd3d736a)

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

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

(From OE-Core rev: 0730d3449aa28600488e73de883240ba2bd60aec)

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

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

(From OE-Core rev: 4f2a290cbcc6c21afbb2a6e6148efdef4d135b41)

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

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

(From OE-Core rev: 5bae58a5b59c04d8947f4842f19837a914c29b52)

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

(From OE-Core rev: d3c46ca56fab2f07bf16b61514f30765543a8747)

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

(From OE-Core rev: 51df11c5747f69b4112121df78fc1e10644d390a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:24:11 +01:00
Saul Wold
7396cef1b9 poky.conf: fix Poky release info to include release number
(From meta-yocto rev: 4287c2199443b41da3e5637a844f886513d92bc0)

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

(From OE-Core rev: 06c5593d15f206458b9a5b45ed1229abfee16e95)

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

[YOCTO #3161]
[YOCTO #3201]

(From OE-Core rev: 71c71b972100803d33fbb062a237e8a15167387b)

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

Thanks to Rudolf Streif for proposing this fix!

Fixes [YOCTO #1969]

(From OE-Core rev: 94eef772c283170d19ba92c8de0054cd093fc487)

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

(From OE-Core rev: 16d6ec51f4b976c9b86a8b6bf6251089df2d2732)

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

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

(From OE-Core rev: df2b756436b90f8f9ff229ba64d0af30d9d4f923)

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

(From yocto-docs rev: 892ff450d79a7564a72f11eb7510d349ca71d47a)

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

(From yocto-docs rev: fff35abd87e945de1806eef63a56a956d104bf92)

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

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

(From yocto-docs rev: 5e1c44b1768b79dd1447ea47461b84248bd2111f)

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

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

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

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

(From yocto-docs rev: d8a2195e37d8f96702026e42bb43daf39852ffcb)

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

(From yocto-docs rev: ea2e2e8a259bc3e629fb8087229872b9818a696a)

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

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

(From yocto-docs rev: 532b72c5c18b2a9a61619164bae6216c91c2ecc9)

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

(From yocto-docs rev: 7f5be4b0b2d1e17add774c7ba3b8803ad770a8fc)

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

(From yocto-docs rev: 95fb13a1049ccaffb3531c93a28a3c480ea1a243)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:21:40 +01:00
Scott Rifenbark
5979f64829 documentation: poky-ref-manual - Updated BBLAYERS variable.
Added the meta-yocto-bsp layer to the example.

(From yocto-docs rev: be4ee9d08527b654071b8d4ff54ad978f50a98f5)

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

(From yocto-docs rev: 38a11d512bfe675319fb76da9d7618315af91c47)

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

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

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

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

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

(From meta-yocto rev: 2c50e628aa6735156071f53d617938e610370b6f)

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

[YOCTO #1245]

(Bitbake rev: 5a8e3baa66f845599a616f080a7efce81ecda631)

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

(From OE-Core rev: 831b88806a3cb0125003aa6d3348716bcfd662a1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:21:39 +01:00
Ross Burton
1164f70c34 shutdown-desktop: ensure the postinst script succeeds
When the hostname isn't qemuarm the grep fails so the postinst fails. Stop this
happening by explicitly evaluating true.

[YOCTO #3224]

(From OE-Core rev: 8848ea6793ddaab61c9dad250ec578d68d7d087d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:21:39 +01:00
Ross Burton
31e19a34a5 sato-icon-theme: use gtk-icon-cache helper class
Instead of explicitly updating the icon cache use the helper class that also
forces a loader update at the same time.  This eliminates the possibility of
updating the icon cache without any gdk-pixbuf loaders.

Also check that the Sato icon theme isn't already set to avoid appending to the
file every time the postinst runs.

[YOCTO #2399]

(From OE-Core rev: 9d98dbdae4c05fcf50d546f554a04dc3f0bd66c3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-10 15:21:39 +01:00
Elizabeth Flanagan
86c9aa8081 build-appliance: Flipping SRCREV
Assigning the SRCREV of build appliance to the most recent version
in the danny branch

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-10-03 11:01:51 -07:00
Elizabeth Flanagan
ef5298eebd poky.conf: Flipping for release of Danny (Poky 1.3)
8.0/1.3 release. Flipping poky.conf values

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
2012-10-03 10:57:44 -07:00
624 changed files with 7579 additions and 13928 deletions

View File

@@ -40,7 +40,7 @@ from bb import cooker
from bb import ui
from bb import server
__version__ = "1.17.0"
__version__ = "1.16.0"
logger = logging.getLogger("BitBake")
# Unbuffer stdout to avoid log truncation in the event
@@ -214,6 +214,10 @@ Default BBFILES are the .bb files in the current directory.""")
if configuration.bind and configuration.servertype != "xmlrpc":
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
# Save a logfile for cooker into the current working directory. When the
# server is daemonized this logfile will be truncated.
cooker_logfile = os.path.join(os.getcwd(), "cooker.log")
bb.msg.init_msgconfig(configuration.verbose, configuration.debug,
configuration.debug_domains)
@@ -242,7 +246,7 @@ Default BBFILES are the .bb files in the current directory.""")
server.addcooker(cooker)
server.saveConnectionDetails()
server.detach()
server.detach(cooker_logfile)
# Should no longer need to ever reference cooker
del cooker

View File

@@ -21,7 +21,7 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
__version__ = "1.17.0"
__version__ = "1.16.0"
import sys
if sys.version_info < (2, 6, 0):

View File

@@ -491,11 +491,9 @@ def stamp_cleanmask_internal(taskname, d, file_name):
extrainfo = d.getVarFlag(taskflagname, 'stamp-extra-info', True) or ""
if not stamp:
return []
return
cleanmask = bb.parse.siggen.stampcleanmask(stamp, file_name, taskname, extrainfo)
return [cleanmask, cleanmask.replace(taskflagname, taskflagname + "_setscene")]
return bb.parse.siggen.stampcleanmask(stamp, file_name, taskname, extrainfo)
def make_stamp(task, d, file_name = None):
"""
@@ -503,8 +501,8 @@ def make_stamp(task, d, file_name = None):
(d can be a data dict or dataCache)
"""
cleanmask = stamp_cleanmask_internal(task, d, file_name)
for mask in cleanmask:
bb.utils.remove(mask)
if cleanmask:
bb.utils.remove(cleanmask)
stamp = stamp_internal(task, d, file_name)
# Remove the file and recreate to force timestamp

View File

@@ -405,12 +405,12 @@ class Cache(object):
"""Parse the specified filename, returning the recipe information"""
infos = []
datastores = cls.load_bbfile(filename, appends, configdata)
depends = []
depends = set()
for variant, data in sorted(datastores.iteritems(),
key=lambda i: i[0],
reverse=True):
virtualfn = cls.realfn2virtual(filename, variant)
depends = depends + (data.getVar("__depends", False) or [])
depends |= (data.getVar("__depends", False) or set())
if depends and not variant:
data.setVar("__depends", depends)

View File

@@ -44,9 +44,6 @@ class CommandFailed(CommandExit):
self.error = message
CommandExit.__init__(self, 1)
class CommandError(Exception):
pass
class Command:
"""
A queue of asynchronous commands for bitbake
@@ -60,25 +57,21 @@ class Command:
self.currentAsyncCommand = None
def runCommand(self, commandline):
command = commandline.pop(0)
if hasattr(CommandsSync, command):
# Can run synchronous commands straight away
command_method = getattr(self.cmds_sync, command)
try:
result = command_method(self, commandline)
except CommandError as exc:
return None, exc.args[0]
except Exception:
return None, traceback.format_exc()
else:
return result, None
if self.currentAsyncCommand is not None:
return None, "Busy (%s in progress)" % self.currentAsyncCommand[0]
if command not in CommandsAsync.__dict__:
return None, "No such command"
self.currentAsyncCommand = (command, commandline)
self.cooker.server_registration_cb(self.cooker.runCommands, self.cooker)
return True, None
try:
command = commandline.pop(0)
if command in CommandsSync.__dict__:
# Can run synchronous commands straight away
return getattr(CommandsSync, command)(self.cmds_sync, self, commandline)
if self.currentAsyncCommand is not None:
return "Busy (%s in progress)" % self.currentAsyncCommand[0]
if command not in CommandsAsync.__dict__:
return "No such command"
self.currentAsyncCommand = (command, commandline)
self.cooker.server_registration_cb(self.cooker.runCommands, self.cooker)
return True
except:
import traceback
return traceback.format_exc()
def runAsyncCommand(self):
try:
@@ -146,11 +139,7 @@ class CommandsSync:
"""
Get any command parsed from the commandline
"""
cmd_action = command.cooker.commandlineAction
if cmd_action['msg']:
raise CommandError(msg)
else:
return cmd_action['action']
return command.cooker.commandlineAction
def getVariable(self, command, params):
"""

View File

@@ -239,10 +239,8 @@ class BBCooker:
self.commandlineAction['msg'] = "No target should be used with the --environment and --buildfile options."
elif len(self.configuration.pkgs_to_build) > 0:
self.commandlineAction['action'] = ["showEnvironmentTarget", self.configuration.pkgs_to_build]
self.configuration.data.setVar("BB_CONSOLELOG", None)
else:
self.commandlineAction['action'] = ["showEnvironment", self.configuration.buildfile]
self.configuration.data.setVar("BB_CONSOLELOG", None)
elif self.configuration.buildfile is not None:
self.commandlineAction['action'] = ["buildFile", self.configuration.buildfile, self.configuration.cmd]
elif self.configuration.revisions_changed:
@@ -313,10 +311,6 @@ class BBCooker:
elif len(pkgs_to_build) == 1:
self.updateCache()
ignore = self.configuration.data.getVar("ASSUME_PROVIDED", True) or ""
if pkgs_to_build[0] in set(ignore.split()):
bb.fatal("%s is in ASSUME_PROVIDED" % pkgs_to_build[0])
localdata = data.createCopy(self.configuration.data)
bb.data.update_data(localdata)
bb.data.expandKeys(localdata)
@@ -696,8 +690,8 @@ class BBCooker:
# Generate a list of parsed configuration files by searching the files
# listed in the __depends and __base_depends variables with a .conf suffix.
conffiles = []
dep_files = self.configuration.data.getVar('__base_depends') or []
dep_files = dep_files + (self.configuration.data.getVar('__depends') or [])
dep_files = self.configuration.data.getVar('__depends') or set()
dep_files.union(self.configuration.data.getVar('__base_depends') or set())
for f in dep_files:
if f[0].endswith(".conf"):

View File

@@ -566,19 +566,3 @@ class SanityCheckFailed(Event):
Event.__init__(self)
self._msg = msg
self._network_error = network_error
class NetworkTest(Event):
"""
Event to start network test
"""
class NetworkTestPassed(Event):
"""
Event to indicate network test has passed
"""
class NetworkTestFailed(Event):
"""
Event to indicate network test has failed
"""

View File

@@ -963,18 +963,15 @@ class FetchMethod(object):
dest = os.path.join(rootdir, os.path.basename(file))
if (file != dest) and not (os.path.exists(dest) and os.path.samefile(file, dest)):
if os.path.isdir(file):
# If for example we're asked to copy file://foo/bar, we need to unpack the result into foo/bar
basepath = getattr(urldata, "basepath", None)
filesdir = os.path.realpath(data.getVar("FILESDIR", True))
destdir = "."
if basepath and basepath.endswith("/"):
basepath = basepath.rstrip("/")
elif basepath:
basepath = os.path.dirname(basepath)
if basepath and basepath.find("/") != -1:
destdir = basepath[:basepath.rfind('/')]
if file[0:len(filesdir)] == filesdir:
destdir = file[len(filesdir):file.rfind('/')]
destdir = destdir.strip('/')
if destdir != "." and not os.access("%s/%s" % (rootdir, destdir), os.F_OK):
os.makedirs("%s/%s" % (rootdir, destdir))
if len(destdir) < 1:
destdir = "."
elif not os.access("%s/%s" % (rootdir, destdir), os.F_OK):
os.makedirs("%s/%s" % (rootdir, destdir))
cmd = 'cp -pPR %s %s/%s/' % (file, rootdir, destdir)
#cmd = 'tar -cf - -C "%d" -ps . | tar -xf - -C "%s/%s/"' % (file, rootdir, destdir)
else:

View File

@@ -44,7 +44,6 @@ class Local(FetchMethod):
# We don't set localfile as for this fetcher the file is already local!
ud.decodedurl = urllib.unquote(ud.url.split("://")[1].split(";")[0])
ud.basename = os.path.basename(ud.decodedurl)
ud.basepath = ud.decodedurl
return
def localpath(self, url, urldata, d):
@@ -63,12 +62,7 @@ class Local(FetchMethod):
if filesdir:
logger.debug(2, "Searching for %s in path: %s" % (path, filesdir))
newpath = os.path.join(filesdir, path)
if (not newpath or not os.path.exists(newpath)) and path.find("*") != -1:
# For expressions using '*', best we can do is take the first directory in FILESPATH that exists
newpath = bb.utils.which(filespath, ".")
logger.debug(2, "Searching for %s in path: %s" % (path, newpath))
return newpath
if not os.path.exists(newpath):
if not os.path.exists(newpath) and path.find("*") == -1:
dldirfile = os.path.join(d.getVar("DL_DIR", True), path)
logger.debug(2, "Defaulting to %s for %s" % (dldirfile, path))
bb.utils.mkdirhier(os.path.dirname(dldirfile))

View File

@@ -69,10 +69,10 @@ class Wget(FetchMethod):
basecmd += " -O ${DL_DIR}/" + ud.localfile
if checkonly:
fetchcmd = d.getVar("CHECKCOMMAND_wget", True) or d.expand(basecmd + " --spider '${URI}'")
fetchcmd = d.getVar("CHECKCOMMAND_wget", True) or d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
elif os.path.exists(ud.localpath):
# file exists, but we didnt complete it.. trying again..
fetchcmd = d.getVar("RESUMECOMMAND_wget", True) or d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
fetchcmd = d.getVar("RESUMECOMMAND_wget", True) or d.expand(basecmd + " --spider -P ${DL_DIR} '${URI}'")
else:
fetchcmd = d.getVar("FETCHCOMMAND_wget", True) or d.expand(basecmd + " -P ${DL_DIR} '${URI}'")

View File

@@ -23,7 +23,6 @@ Message handling infrastructure for bitbake
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import copy
import logging
import collections
from itertools import groupby
@@ -56,25 +55,6 @@ class BBLogFormatter(logging.Formatter):
CRITICAL: 'ERROR',
}
color_enabled = False
BASECOLOR, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE = range(29,38)
COLORS = {
DEBUG3 : CYAN,
DEBUG2 : CYAN,
DEBUG : CYAN,
VERBOSE : BASECOLOR,
NOTE : BASECOLOR,
PLAIN : BASECOLOR,
WARNING : YELLOW,
ERROR : RED,
CRITICAL: RED,
}
BLD = '\033[1;%dm'
STD = '\033[%dm'
RST = '\033[0m'
def getLevelName(self, levelno):
try:
return self.levelnames[levelno]
@@ -87,8 +67,6 @@ class BBLogFormatter(logging.Formatter):
if record.levelno == self.PLAIN:
msg = record.getMessage()
else:
if self.color_enabled:
record = self.colorize(record)
msg = logging.Formatter.format(self, record)
if hasattr(record, 'bb_exc_info'):
@@ -97,17 +75,6 @@ class BBLogFormatter(logging.Formatter):
msg += '\n' + ''.join(formatted)
return msg
def colorize(self, record):
color = self.COLORS[record.levelno]
if self.color_enabled and color is not None:
record = copy.copy(record)
record.levelname = "".join([self.BLD % color, record.levelname, self.RST])
record.msg = "".join([self.STD % color, record.msg, self.RST])
return record
def enable_color(self):
self.color_enabled = True
class BBLogFilter(object):
def __init__(self, handler, level, debug_domains):
self.stdlevel = level

View File

@@ -73,7 +73,8 @@ def update_mtime(f):
def mark_dependency(d, f):
if f.startswith('./'):
f = "%s/%s" % (os.getcwd(), f[2:])
deps = (d.getVar('__depends') or []) + [(f, cached_mtime(f))]
deps = d.getVar('__depends') or set()
deps.update([(f, cached_mtime(f))])
d.setVar('__depends', deps)
def supports(fn, data):
@@ -133,8 +134,8 @@ def vars_from_file(mypkg, d):
def get_file_depends(d):
'''Return the dependent files'''
dep_files = []
depends = d.getVar('__base_depends', True) or []
depends = depends + (d.getVar('__depends', True) or [])
depends = d.getVar('__depends', True) or set()
depends = depends.union(d.getVar('__base_depends', True) or set())
for (fn, _) in depends:
dep_files.append(os.path.abspath(fn))
return " ".join(dep_files)

View File

@@ -785,7 +785,6 @@ class RunQueue:
self.stamppolicy = cfgData.getVar("BB_STAMP_POLICY", True) or "perfile"
self.hashvalidate = cfgData.getVar("BB_HASHCHECK_FUNCTION", True) or None
self.setsceneverify = cfgData.getVar("BB_SETSCENE_VERIFY_FUNCTION", True) or None
self.depvalidate = cfgData.getVar("BB_SETSCENE_DEPVALID", True) or None
self.state = runQueuePrepare
@@ -1162,26 +1161,6 @@ class RunQueueExecute:
return pid, pipein, pipeout
def check_dependencies(self, task, taskdeps, setscene = False):
if not self.rq.depvalidate:
return False
taskdata = {}
taskdeps.add(task)
for dep in taskdeps:
if setscene:
depid = self.rqdata.runq_setscene[dep]
else:
depid = dep
fn = self.rqdata.taskData.fn_index[self.rqdata.runq_fnid[depid]]
pn = self.rqdata.dataCache.pkg_fn[fn]
taskname = self.rqdata.runq_task[depid]
taskdata[dep] = [pn, taskname, fn]
call = self.rq.depvalidate + "(task, taskdata, notneeded, d)"
locs = { "task" : task, "taskdata" : taskdata, "notneeded" : self.scenequeue_notneeded, "d" : self.cooker.configuration.data }
valid = bb.utils.better_eval(call, locs)
return valid
class RunQueueExecuteDummy(RunQueueExecute):
def __init__(self, rq):
self.rq = rq
@@ -1219,8 +1198,16 @@ class RunQueueExecuteTasks(RunQueueExecute):
logger.debug(1, 'Considering %s (%s): %s' % (task, self.rqdata.get_user_idstring(task), str(self.rqdata.runq_revdeps[task])))
if len(self.rqdata.runq_revdeps[task]) > 0 and self.rqdata.runq_revdeps[task].issubset(self.rq.scenequeue_covered) and task not in self.rq.scenequeue_notcovered:
found = True
self.rq.scenequeue_covered.add(task)
ok = True
for revdep in self.rqdata.runq_revdeps[task]:
if self.rqdata.runq_fnid[task] != self.rqdata.runq_fnid[revdep]:
logger.debug(1, 'Found "bad" dep %s (%s) for %s (%s)' % (revdep, self.rqdata.get_user_idstring(revdep), task, self.rqdata.get_user_idstring(task)))
ok = False
break
if ok:
found = True
self.rq.scenequeue_covered.add(task)
logger.debug(1, 'Skip list (pre setsceneverify) %s', sorted(self.rq.scenequeue_covered))
@@ -1421,7 +1408,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.scenequeue_covered = set()
self.scenequeue_notcovered = set()
self.scenequeue_notneeded = set()
# If we don't have any setscene functions, skip this step
if len(self.rqdata.runq_setscene) == 0:
@@ -1431,6 +1417,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.stats = RunQueueStats(len(self.rqdata.runq_setscene))
endpoints = {}
sq_revdeps = []
sq_revdeps_new = []
sq_revdeps_squash = []
@@ -1445,15 +1432,12 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
self.runq_complete.append(0)
self.runq_buildable.append(0)
# First process the chains up to the first setscene task.
endpoints = {}
for task in xrange(len(self.rqdata.runq_fnid)):
sq_revdeps.append(copy.copy(self.rqdata.runq_revdeps[task]))
sq_revdeps_new.append(set())
if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
endpoints[task] = set()
# Secondly process the chains between setscene tasks.
for task in self.rqdata.runq_setscene:
for dep in self.rqdata.runq_depends[task]:
if dep not in endpoints:
@@ -1469,8 +1453,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
if sq_revdeps_new[point]:
tasks |= sq_revdeps_new[point]
sq_revdeps_new[point] = set()
if point in self.rqdata.runq_setscene:
sq_revdeps_new[point] = tasks
for dep in self.rqdata.runq_depends[point]:
if point in sq_revdeps[dep]:
sq_revdeps[dep].remove(point)
@@ -1483,42 +1465,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
process_endpoints(endpoints)
# Build a list of setscene tasks which as "unskippable"
# These are direct endpoints referenced by the build
endpoints2 = {}
sq_revdeps2 = []
sq_revdeps_new2 = []
def process_endpoints2(endpoints):
newendpoints = {}
for point, task in endpoints.items():
tasks = set([point])
if task:
tasks |= task
if sq_revdeps_new2[point]:
tasks |= sq_revdeps_new2[point]
sq_revdeps_new2[point] = set()
if point in self.rqdata.runq_setscene:
sq_revdeps_new2[point] = tasks
for dep in self.rqdata.runq_depends[point]:
if point in sq_revdeps2[dep]:
sq_revdeps2[dep].remove(point)
if tasks:
sq_revdeps_new2[dep] |= tasks
if (len(sq_revdeps2[dep]) == 0 or len(sq_revdeps_new2[dep]) != 0) and dep not in self.rqdata.runq_setscene:
newendpoints[dep] = tasks
if len(newendpoints) != 0:
process_endpoints2(newendpoints)
for task in xrange(len(self.rqdata.runq_fnid)):
sq_revdeps2.append(copy.copy(self.rqdata.runq_revdeps[task]))
sq_revdeps_new2.append(set())
if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
endpoints2[task] = set()
process_endpoints2(endpoints2)
self.unskippable = []
for task in self.rqdata.runq_setscene:
if sq_revdeps_new2[task]:
self.unskippable.append(self.rqdata.runq_setscene.index(task))
for task in xrange(len(self.rqdata.runq_fnid)):
if task in self.rqdata.runq_setscene:
deps = set()
@@ -1679,13 +1625,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
# Find the next setscene to run
for nexttask in xrange(self.stats.total):
if self.runq_buildable[nexttask] == 1 and self.runq_running[nexttask] != 1:
if nexttask in self.unskippable:
logger.debug(2, "Setscene task %s is unskippable" % self.rqdata.get_user_idstring(self.rqdata.runq_setscene[nexttask]))
if nexttask not in self.unskippable and len(self.sq_revdeps[nexttask]) > 0 and self.sq_revdeps[nexttask].issubset(self.scenequeue_covered) and self.check_dependencies(nexttask, self.sq_revdeps[nexttask], True):
logger.debug(2, "Skipping setscene for task %s" % self.rqdata.get_user_idstring(self.rqdata.runq_setscene[nexttask]))
self.task_skip(nexttask)
self.scenequeue_notneeded.add(nexttask)
return True
task = nexttask
break
if task is not None:

View File

@@ -191,8 +191,8 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
return
def detach(self):
return
def detach(self, cooker_logfile):
self.logfile = cooker_logfile
def establishConnection(self):
self.connection = BitBakeServerConnection(self)

View File

@@ -45,10 +45,10 @@ class ServerCommunicator():
while True:
# don't let the user ctrl-c while we're waiting for a response
try:
if self.connection.poll(20):
if self.connection.poll(.5):
return self.connection.recv()
else:
bb.fatal("Timeout while attempting to communicate with bitbake server")
return None
except KeyboardInterrupt:
pass
@@ -256,7 +256,7 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
return
def detach(self):
def detach(self, cooker_logfile):
self.server.start()
return

View File

@@ -280,8 +280,8 @@ class BitBakeServer(object):
def saveConnectionDetails(self):
self.serverinfo = BitbakeServerInfo(self.server.host, self.server.port)
def detach(self):
daemonize.createDaemon(self.server.serve_forever)
def detach(self, cooker_logfile):
daemonize.createDaemon(self.server.serve_forever, cooker_logfile)
del self.cooker
del self.server

View File

@@ -49,7 +49,7 @@ class SignatureGenerator(object):
return ("%s.%s.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
def stampcleanmask(self, stampbase, file_name, taskname, extrainfo):
return ("%s.%s.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
return ("%s.%s*.%s" % (stampbase, taskname, extrainfo)).rstrip('.')
def dump_sigtask(self, fn, task, stampbase, runtime):
return
@@ -276,6 +276,7 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
k = fn + "." + taskname
if clean:
h = "*"
taskname = taskname + "*"
elif k in self.taskhash:
h = self.taskhash[k]
else:

View File

@@ -30,8 +30,6 @@ from bb.ui.crumbs.runningbuild import RunningBuildTreeView
from bb.ui.crumbs.runningbuild import BuildFailureTreeView
from bb.ui.crumbs.hobpages import HobPage
from bb.ui.crumbs.hobcolor import HobColors
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
class BuildConfigurationTreeView(gtk.TreeView):
def __init__ (self):
@@ -206,6 +204,8 @@ class BuildDetailsPage (HobPage):
def add_build_fail_top_bar(self, actions, log_file=None):
primary_action = "Edit %s" % actions
self.notebook.set_page("Issues")
color = HobColors.ERROR
build_fail_top = gtk.EventBox()
#build_fail_top.set_size_request(-1, 200)
@@ -226,17 +226,7 @@ class BuildDetailsPage (HobPage):
label = gtk.Label()
label.set_alignment(0.0, 0.5)
# Ensure variable disk_full is defined
try:
self.builder.disk_full
except NameError:
self.builder.disk_full = False
if self.builder.disk_full:
markup = "<span size='medium'>There is no disk space left, so Hob cannot finish building your image. Free up some disk space\n"
markup += "and restart the build. Check the \"Issues\" tab for more details</span>"
label.set_markup(markup)
else:
label.set_markup("<span size='medium'>Check the \"Issues\" information for more details</span>")
label.set_markup("<span size='medium'>Check the \"Issues\" information for more details</span>")
build_fail_tab.attach(label, 4, 40, 4, 9)
# create button 'Edit packages'
@@ -244,36 +234,22 @@ class BuildDetailsPage (HobPage):
#action_button.set_size_request(-1, 40)
action_button.set_tooltip_text("Edit the %s parameters" % actions)
action_button.connect('clicked', self.failure_primary_action_button_clicked_cb, primary_action)
build_fail_tab.attach(action_button, 4, 13, 9, 12)
if log_file:
open_log_button = HobAltButton("Open log")
open_log_button.set_relief(gtk.RELIEF_HALF)
open_log_button.set_tooltip_text("Open the build's log file")
open_log_button.connect('clicked', self.open_log_button_clicked_cb, log_file)
build_fail_tab.attach(open_log_button, 14, 23, 9, 12)
attach_pos = (24 if log_file else 14)
file_bug_button = HobAltButton('File a bug')
file_bug_button.set_relief(gtk.RELIEF_HALF)
file_bug_button.set_tooltip_text("Open the Yocto Project bug tracking website")
file_bug_button.connect('clicked', self.failure_activate_file_bug_link_cb)
build_fail_tab.attach(file_bug_button, attach_pos, attach_pos + 9, 9, 12)
if not self.builder.disk_full:
build_fail_tab.attach(action_button, 4, 13, 9, 12)
if log_file:
build_fail_tab.attach(open_log_button, 14, 23, 9, 12)
build_fail_tab.attach(file_bug_button, attach_pos, attach_pos + 9, 9, 12)
else:
restart_build = HobButton("Restart the build")
restart_build.set_tooltip_text("Restart the build")
restart_build.connect('clicked', self.restart_build_button_clicked_cb)
build_fail_tab.attach(restart_build, 4, 13, 9, 12)
build_fail_tab.attach(action_button, 14, 23, 9, 12)
if log_file:
build_fail_tab.attach(open_log_button, attach_pos, attach_pos + 9, 9, 12)
self.builder.disk_full = False
return build_fail_top
def show_fail_page(self, title):
@@ -288,7 +264,6 @@ class BuildDetailsPage (HobPage):
self.vbox.pack_start(self.notebook, expand=True, fill=True)
self.show_all()
self.notebook.set_page("Issues")
self.back_button.hide()
def add_build_stop_top_bar(self, action, log_file=None):
@@ -373,7 +348,6 @@ class BuildDetailsPage (HobPage):
self.box_group_area.pack_end(self.button_box, expand=False, fill=False)
self.show_all()
self.notebook.set_page("Log")
self.back_button.hide()
self.reset_build_status()
@@ -419,9 +393,6 @@ class BuildDetailsPage (HobPage):
elif "Edit image" in action:
self.builder.show_configuration()
def restart_build_button_clicked_cb(self, button):
self.builder.just_bake()
def stop_primary_action_button_clicked_cb(self, button, action):
if "recipes" in action:
self.builder.show_recipes()
@@ -432,18 +403,7 @@ class BuildDetailsPage (HobPage):
def open_log_button_clicked_cb(self, button, log_file):
if log_file:
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
os.system("xdg-open /%s" % log_file)
def failure_activate_file_bug_link_cb(self, button):
button.child.emit('activate-link', "http://bugzilla.yoctoproject.org")

View File

@@ -51,10 +51,10 @@ class Configuration:
@classmethod
def parse_proxy_string(cls, proxy):
pattern = "^\s*((http|https|ftp|git|cvs)://)?((\S+):(\S+)@)?([^\s:]+)(:(\d+))?/?"
pattern = "^\s*((http|https|ftp|git|cvs)://)?((\S+):(\S+)@)?(\S+):(\d+)/?"
match = re.search(pattern, proxy)
if match:
return match.group(2), match.group(4), match.group(5), match.group(6), match.group(8)
return match.group(2), match.group(4), match.group(5), match.group(6), match.group(7)
else:
return None, None, None, "", ""
@@ -82,14 +82,13 @@ class Configuration:
@classmethod
def make_proxy_string(cls, prot, user, passwd, host, port, default_prot=""):
if host == None or host == "":# or port == None or port == "":
if host == None or host == "" or port == None or port == "":
return ""
return Configuration.make_host_string(prot, user, passwd, host, default_prot) + (":" + Configuration.make_port_string(port) if port else "")
return Configuration.make_host_string(prot, user, passwd, host, default_prot) + ":" + Configuration.make_port_string(port)
def __init__(self):
self.curr_mach = ""
self.selected_image = None
# settings
self.curr_distro = ""
self.dldir = self.sstatedir = self.sstatemirror = ""
@@ -124,9 +123,9 @@ class Configuration:
}
def clear_selection(self):
self.selected_image = None
self.selected_recipes = []
self.selected_packages = []
self.initial_selected_image = None
self.initial_selected_packages = []
self.initial_user_selected_packages = []
@@ -172,7 +171,6 @@ class Configuration:
# self.extra_setting/self.toolchain_build
# bblayers.conf
self.layers = params["layer"].split()
self.layers_non_removable = params["layers_non_removable"].split()
self.default_task = params["default_task"]
# proxy settings
@@ -440,9 +438,6 @@ class Builder(gtk.Window):
# Indicate whether the UI is working
self.sensitive = True
# Indicate whether the sanity check ran
self.sanity_checked = False
# create visual elements
self.create_visual_elements()
@@ -460,9 +455,7 @@ class Builder(gtk.Window):
self.handler.build.connect("build-failed", self.handler_build_failed_cb)
self.handler.build.connect("build-aborted", self.handler_build_aborted_cb)
self.handler.build.connect("task-started", self.handler_task_started_cb)
self.handler.build.connect("disk-full", self.handler_disk_full_cb)
self.handler.build.connect("log-error", self.handler_build_failure_cb)
self.handler.build.connect("log-warning", self.handler_build_failure_cb)
self.handler.build.connect("log", self.handler_build_log_cb)
self.handler.build.connect("no-provider", self.handler_no_provider_cb)
self.handler.connect("generating-data", self.handler_generating_data_cb)
@@ -547,8 +540,7 @@ class Builder(gtk.Window):
sanity_check_post_func = func
def generate_configuration(self):
if not self.sanity_checked:
self.show_sanity_check_page()
self.show_sanity_check_page()
self.handler.generate_configuration()
def initiate_new_build_async(self):
@@ -754,20 +746,6 @@ class Builder(gtk.Window):
self.previous_step = self.current_step
self.current_step = next_step
def set_user_config_proxies(self):
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
def set_user_config(self):
self.handler.init_cooker()
# set bb layers
@@ -789,7 +767,19 @@ class Builder(gtk.Window):
self.handler.set_extra_config(self.configuration.extra_setting)
self.handler.set_extra_inherit("packageinfo")
self.handler.set_extra_inherit("image_types")
self.set_user_config_proxies()
# set proxies
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
def update_recipe_model(self, selected_image, selected_recipes):
self.recipe_model.set_selected_image(selected_image)
@@ -840,9 +830,7 @@ class Builder(gtk.Window):
if not self.configuration.curr_mach:
self.configuration.curr_mach = self.handler.runCommand(["getVariable", "HOB_MACHINE"]) or ""
self.update_configuration_parameters(self.get_parameters_sync())
if not self.sanity_checked:
self.sanity_check()
self.sanity_checked = True
self.sanity_check()
elif initcmd == self.handler.SANITY_CHECK:
if self.had_network_error:
self.had_network_error = False
@@ -956,10 +944,10 @@ class Builder(gtk.Window):
self.package_details_page.refresh_selection()
def handler_recipe_populated_cb(self, handler):
self.image_configuration_page.update_progress_bar("Populating recipes", 0.99)
self.image_configuration_page.update_progress_bar("Populated recipes", 0.99)
def handler_package_populated_cb(self, handler):
self.image_configuration_page.update_progress_bar("Populating packages", 1.0)
self.image_configuration_page.update_progress_bar("Populated packages", 1.0)
def handler_parsing_started_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -969,10 +957,10 @@ class Builder(gtk.Window):
if message["eventname"] == "TreeDataPreparationStarted":
fraction = 0.6 + fraction
self.image_configuration_page.stop_button.set_sensitive(False)
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
else:
self.image_configuration_page.stop_button.set_sensitive(True)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
def handler_parsing_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -981,10 +969,9 @@ class Builder(gtk.Window):
fraction = message["current"] * 1.0/message["total"]
if message["eventname"] == "TreeDataPreparationProgress":
fraction = 0.6 + 0.38 * fraction
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
else:
fraction = 0.6 * fraction
self.image_configuration_page.update_progress_bar(message["title"], fraction)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
def handler_parsing_completed_cb(self, handler, message):
if self.current_step != self.RCPPKGINFO_POPULATING:
@@ -994,7 +981,7 @@ class Builder(gtk.Window):
fraction = 0.98
else:
fraction = 0.6
self.image_configuration_page.update_progress_bar("Generating dependency tree", fraction)
self.image_configuration_page.update_progress_bar(message["title"], fraction)
def handler_build_started_cb(self, running_build):
if self.current_step == self.FAST_IMAGE_GENERATING:
@@ -1130,9 +1117,6 @@ class Builder(gtk.Window):
self.build_details_page.update_progress_bar(title + ": ", fraction)
self.build_details_page.update_build_status(message["current"], message["total"], message["task"])
def handler_disk_full_cb(self, running_build):
self.disk_full = True
def handler_build_failure_cb(self, running_build):
self.build_details_page.show_issues()
@@ -1201,7 +1185,6 @@ class Builder(gtk.Window):
def show_layer_selection_dialog(self):
dialog = LayerSelectionDialog(title = "Layers",
layers = copy.deepcopy(self.configuration.layers),
layers_non_removable = copy.deepcopy(self.configuration.layers_non_removable),
all_layers = self.parameters.all_layers,
parent = self,
flags = gtk.DIALOG_MODAL
@@ -1327,8 +1310,7 @@ class Builder(gtk.Window):
parent = self,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR,
handler = self.handler)
| gtk.DIALOG_NO_SEPARATOR)
button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
HobAltButton.style_button(button)
button = dialog.add_button("Save", gtk.RESPONSE_YES)
@@ -1341,14 +1323,6 @@ class Builder(gtk.Window):
self.configuration = dialog.configuration
self.save_defaults() # remember settings
settings_changed = dialog.settings_changed
if dialog.proxy_settings_changed:
self.set_user_config_proxies()
elif dialog.proxy_test_ran:
# The user might have modified the proxies in the "Proxy"
# tab, which in turn made the proxy settings modify in bb.
# If "Cancel" was pressed, restore the previous proxy
# settings inside bb.
self.set_user_config_proxies()
dialog.destroy()
return response == gtk.RESPONSE_YES, settings_changed
@@ -1506,7 +1480,7 @@ class Builder(gtk.Window):
if response != gtk.RESPONSE_CANCEL:
self.stopping = True
if response == gtk.RESPONSE_OK:
self.build_details_page.progress_bar.set_stop_title("Stopping the build....")
self.build_details_page.progress_bar.set_title("Stopping the build...")
self.build_details_page.progress_bar.set_rcstyle("stop")
self.cancel_build_sync()
elif response == gtk.RESPONSE_YES:

View File

@@ -319,16 +319,9 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
PROXIES_PAGE_ID,
OTHERS_PAGE_ID) = range(4)
(TEST_NETWORK_NONE,
TEST_NETWORK_INITIAL,
TEST_NETWORK_RUNNING,
TEST_NETWORK_PASSED,
TEST_NETWORK_FAILED,
TEST_NETWORK_CANCELED) = range(6)
def __init__(self, title, configuration, all_image_types,
all_package_formats, all_distros, all_sdk_machines,
max_threads, parent, flags, handler, buttons=None):
max_threads, parent, flags, buttons=None):
super(SimpleSettingsDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
@@ -355,11 +348,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.image_types_checkbuttons = {}
self.md5 = self.config_md5()
self.proxy_md5 = self.config_proxy_md5()
self.settings_changed = False
self.proxy_settings_changed = False
self.handler = handler
self.proxy_test_ran = False
# create visual elements on the dialog
self.create_visual_elements()
@@ -368,38 +357,54 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
def _get_sorted_value(self, var):
return " ".join(sorted(str(var).split())) + "\n"
def config_proxy_md5(self):
data = ("ENABLE_PROXY: " + self._get_sorted_value(self.configuration.enable_proxy))
def config_md5(self):
data = ""
data += ("ENABLE_PROXY: " + self._get_sorted_value(self.configuration.enable_proxy))
if self.configuration.enable_proxy:
for protocol in self.configuration.proxies.keys():
data += (protocol + ": " + self._get_sorted_value(self.configuration.combine_proxy(protocol)))
return hashlib.md5(data).hexdigest()
def config_md5(self):
data = ""
for key in self.configuration.extra_setting.keys():
data += (key + ": " + self._get_sorted_value(self.configuration.extra_setting[key]))
return hashlib.md5(data).hexdigest()
def gen_proxy_entry_widget(self, protocol, parent, need_button=True, line=0):
def details_cb(self, button, parent, protocol):
dialog = ProxyDetailsDialog(title = protocol.upper() + " Proxy Details",
user = self.configuration.proxies[protocol][1],
passwd = self.configuration.proxies[protocol][2],
parent = parent,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
dialog.add_button(gtk.STOCK_CLOSE, gtk.RESPONSE_OK)
response = dialog.run()
if response == gtk.RESPONSE_OK:
self.configuration.proxies[protocol][1] = dialog.user
self.configuration.proxies[protocol][2] = dialog.passwd
self.refresh_proxy_components()
dialog.destroy()
def gen_proxy_entry_widget(self, protocol, parent, need_button=True):
hbox = gtk.HBox(False, 12)
label = gtk.Label(protocol.upper() + " proxy")
self.proxy_table.attach(label, 0, 1, line, line+1, xpadding=24)
hbox.pack_start(label, expand=True, fill=False, padding=24)
proxy_entry = gtk.Entry()
proxy_entry.set_size_request(300, -1)
self.proxy_table.attach(proxy_entry, 1, 2, line, line+1, ypadding=4)
hbox.pack_start(proxy_entry, expand=False, fill=False)
self.proxy_table.attach(gtk.Label(":"), 2, 3, line, line+1, xpadding=12, ypadding=4)
hbox.pack_start(gtk.Label(":"), expand=False, fill=False)
port_entry = gtk.Entry()
port_entry.set_size_request(60, -1)
self.proxy_table.attach(port_entry, 3, 4, line, line+1, ypadding=4)
hbox.pack_start(port_entry, expand=False, fill=False)
details_button = HobAltButton("Details")
details_button.connect("clicked", self.details_cb, parent, protocol)
self.proxy_table.attach(details_button, 4, 5, line, line+1, xpadding=4, yoptions=gtk.EXPAND)
hbox.pack_start(details_button, expand=False, fill=False)
return proxy_entry, port_entry, details_button
hbox.show_all()
return hbox, proxy_entry, port_entry, details_button
def refresh_proxy_components(self):
self.same_checkbox.set_sensitive(self.configuration.enable_proxy)
@@ -444,53 +449,18 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.cvs_proxy_port.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
self.cvs_proxy_details.set_sensitive(self.configuration.enable_proxy and (not self.configuration.same_proxy))
if self.configuration.same_proxy:
if self.http_proxy.get_text():
[w.set_text(self.http_proxy.get_text()) for w in self.same_proxy_addresses]
if self.http_proxy_port.get_text():
[w.set_text(self.http_proxy_port.get_text()) for w in self.same_proxy_ports]
def proxy_checkbox_toggled_cb(self, button):
self.configuration.enable_proxy = self.proxy_checkbox.get_active()
if not self.configuration.enable_proxy:
self.configuration.same_proxy = False
self.same_checkbox.set_active(self.configuration.same_proxy)
self.save_proxy_data()
self.refresh_proxy_components()
def same_checkbox_toggled_cb(self, button):
self.configuration.same_proxy = self.same_checkbox.get_active()
self.save_proxy_data()
self.refresh_proxy_components()
def save_proxy_data(self):
self.configuration.split_proxy("http", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
if self.configuration.same_proxy:
self.configuration.split_proxy("https", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("git", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
else:
self.configuration.split_proxy("https", self.https_proxy.get_text() + ":" + self.https_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.ftp_proxy.get_text() + ":" + self.ftp_proxy_port.get_text())
self.configuration.split_proxy("git", self.git_proxy.get_text() + ":" + self.git_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.cvs_proxy.get_text() + ":" + self.cvs_proxy_port.get_text())
def response_cb(self, dialog, response_id):
if response_id == gtk.RESPONSE_YES:
# Check that all proxy entries have a corresponding port
for proxy, port in zip(self.all_proxy_addresses, self.all_proxy_ports):
if proxy.get_text() and not port.get_text():
lbl = "<b>Enter all port numbers</b>\n\n"
msg = "Proxy servers require a port number. Please make sure you have entered a port number for each proxy server."
dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING, msg)
button = dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button)
response = dialog.run()
dialog.destroy()
self.emit_stop_by_name("response")
return
def response_cb(self, dialog, response_id):
self.configuration.dldir = self.dldir_text.get_text()
self.configuration.sstatedir = self.sstatedir_text.get_text()
self.configuration.sstatemirror = ""
@@ -503,7 +473,19 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.configuration.sstatemirror += smirror
self.configuration.bbthread = self.bb_spinner.get_value_as_int()
self.configuration.pmake = self.pmake_spinner.get_value_as_int()
self.save_proxy_data()
self.configuration.split_proxy("http", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
if self.configuration.same_proxy:
self.configuration.split_proxy("https", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("git", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.http_proxy.get_text() + ":" + self.http_proxy_port.get_text())
else:
self.configuration.split_proxy("https", self.https_proxy.get_text() + ":" + self.https_proxy_port.get_text())
self.configuration.split_proxy("ftp", self.ftp_proxy.get_text() + ":" + self.ftp_proxy_port.get_text())
self.configuration.split_proxy("git", self.git_proxy.get_text() + ":" + self.git_proxy_port.get_text())
self.configuration.split_proxy("cvs", self.cvs_proxy.get_text() + ":" + self.cvs_proxy_port.get_text())
self.configuration.extra_setting = {}
it = self.setting_store.get_iter_first()
while it:
@@ -514,7 +496,6 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
md5 = self.config_md5()
self.settings_changed = (self.md5 != md5)
self.proxy_settings_changed = (self.proxy_md5 != self.config_proxy_md5())
def create_build_environment_page(self):
advanced_vbox = gtk.VBox(False, 6)
@@ -565,6 +546,8 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
sub_vbox.pack_start(label, expand=False, fill=False)
sub_vbox.pack_start(sstatedir_widget, expand=False, fill=False, padding=12)
sub_vbox = gtk.VBox(False)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
content = "<span weight=\"bold\">Shared state mirrors</span>"
tooltip = "URLs pointing to pre-built mirrors that will speed your build. "
tooltip += "Select the \'Standard\' configuration if the structure of your "
@@ -573,14 +556,8 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
tooltip += "http://www.yoctoproject.org/docs/current/poky-ref-manual/"
tooltip += "poky-ref-manual.html#shared-state\">Yocto Project Reference Manual</a>."
table = self.gen_label_info_widget(content, tooltip)
advanced_vbox.pack_start(table, expand=False, fill=False)
sub_vbox.pack_start(table, expand=False, fill=False)
sub_vbox = gtk.VBox(False)
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
scroll.add_with_viewport(sub_vbox)
scroll.connect('size-allocate', self.scroll_changed)
advanced_vbox.pack_start(scroll, gtk.TRUE, gtk.TRUE, 0)
searched_string = "file://"
if self.sstatemirrors_changed == 0:
@@ -631,91 +608,10 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.show_all()
self.nb.set_current_page(page_num)
def test_proxy_ended(self, passed):
self.proxy_test_running = False
self.set_test_proxy_state(self.TEST_NETWORK_PASSED if passed else self.TEST_NETWORK_FAILED)
self.set_sensitive(True)
self.refresh_proxy_components()
def timer_func(self):
self.test_proxy_progress.pulse()
return self.proxy_test_running
def test_network_button_cb(self, b):
self.set_test_proxy_state(self.TEST_NETWORK_RUNNING)
self.set_sensitive(False)
self.save_proxy_data()
if self.configuration.enable_proxy == True:
self.handler.set_http_proxy(self.configuration.combine_proxy("http"))
self.handler.set_https_proxy(self.configuration.combine_proxy("https"))
self.handler.set_ftp_proxy(self.configuration.combine_proxy("ftp"))
self.handler.set_git_proxy(self.configuration.combine_host_only("git"), self.configuration.combine_port_only("git"))
self.handler.set_cvs_proxy(self.configuration.combine_host_only("cvs"), self.configuration.combine_port_only("cvs"))
elif self.configuration.enable_proxy == False:
self.handler.set_http_proxy("")
self.handler.set_https_proxy("")
self.handler.set_ftp_proxy("")
self.handler.set_git_proxy("", "")
self.handler.set_cvs_proxy("", "")
self.proxy_test_ran = True
self.proxy_test_running = True
gobject.timeout_add(100, self.timer_func)
self.handler.trigger_network_test()
def test_proxy_focus_event(self, w, direction):
if self.test_proxy_state in [self.TEST_NETWORK_PASSED, self.TEST_NETWORK_FAILED]:
self.set_test_proxy_state(self.TEST_NETWORK_INITIAL)
return False
def http_proxy_changed(self, e):
if not self.configuration.same_proxy:
return
if e == self.http_proxy:
[w.set_text(self.http_proxy.get_text()) for w in self.same_proxy_addresses]
else:
[w.set_text(self.http_proxy_port.get_text()) for w in self.same_proxy_ports]
def proxy_address_focus_out_event(self, w, direction):
text = w.get_text()
if not text:
return False
if text.find("//") == -1:
w.set_text("http://" + text)
return False
def set_test_proxy_state(self, state):
if self.test_proxy_state == state:
return
[self.proxy_table.remove(w) for w in self.test_gui_elements]
if state == self.TEST_NETWORK_INITIAL:
self.proxy_table.attach(self.test_network_button, 1, 2, 5, 6)
self.test_network_button.show()
elif state == self.TEST_NETWORK_RUNNING:
self.test_proxy_progress.set_rcstyle("running")
self.test_proxy_progress.set_text("Testing network configuration")
self.proxy_table.attach(self.test_proxy_progress, 0, 5, 5, 6, xpadding=4)
self.test_proxy_progress.show()
else: # passed or failed
self.dummy_progress.update(1.0)
if state == self.TEST_NETWORK_PASSED:
self.dummy_progress.set_text("Your network is properly configured")
self.dummy_progress.set_rcstyle("running")
else:
self.dummy_progress.set_text("Network test failed")
self.dummy_progress.set_rcstyle("fail")
self.proxy_table.attach(self.dummy_progress, 0, 4, 5, 6)
self.proxy_table.attach(self.retest_network_button, 4, 5, 5, 6, xpadding=4)
self.dummy_progress.show()
self.retest_network_button.show()
self.test_proxy_state = state
def create_network_page(self):
def create_proxy_page(self):
advanced_vbox = gtk.VBox(False, 6)
advanced_vbox.set_border_width(6)
self.same_proxy_addresses = []
self.same_proxy_ports = []
self.all_proxy_ports = []
self.all_proxy_addresses = []
sub_vbox = gtk.VBox(False, 6)
advanced_vbox.pack_start(sub_vbox, expand=False, fill=False)
@@ -727,77 +623,42 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
hbox.pack_start(info, expand=False, fill=False)
sub_vbox.pack_start(hbox, expand=False, fill=False)
proxy_test_focus = []
self.direct_checkbox = gtk.RadioButton(None, "Direct network connection")
proxy_test_focus.append(self.direct_checkbox)
self.direct_checkbox = gtk.RadioButton(None, "Direct internet connection")
self.direct_checkbox.set_tooltip_text("Check this box to use a direct internet connection with no proxy")
self.direct_checkbox.set_active(not self.configuration.enable_proxy)
sub_vbox.pack_start(self.direct_checkbox, expand=False, fill=False)
self.proxy_checkbox = gtk.RadioButton(self.direct_checkbox, "Manual proxy configuration")
proxy_test_focus.append(self.proxy_checkbox)
self.proxy_checkbox.set_tooltip_text("Check this box to manually set up a specific proxy")
self.proxy_checkbox.set_active(self.configuration.enable_proxy)
sub_vbox.pack_start(self.proxy_checkbox, expand=False, fill=False)
self.same_checkbox = gtk.CheckButton("Use the HTTP proxy for all protocols")
proxy_test_focus.append(self.same_checkbox)
self.same_checkbox = gtk.CheckButton("Use the same proxy for all protocols")
self.same_checkbox.set_tooltip_text("Check this box to use the HTTP proxy for all five proxies")
self.same_checkbox.set_active(self.configuration.same_proxy)
hbox = gtk.HBox(False, 12)
hbox.pack_start(self.same_checkbox, expand=False, fill=False, padding=24)
sub_vbox.pack_start(hbox, expand=False, fill=False)
self.proxy_table = gtk.Table(6, 5, False)
self.http_proxy, self.http_proxy_port, self.http_proxy_details = self.gen_proxy_entry_widget(
"http", self, True, 0)
proxy_test_focus +=[self.http_proxy, self.http_proxy_port]
self.http_proxy.connect("changed", self.http_proxy_changed)
self.http_proxy_port.connect("changed", self.http_proxy_changed)
proxy_widget, self.http_proxy, self.http_proxy_port, self.http_proxy_details = self.gen_proxy_entry_widget(
"http", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.https_proxy, self.https_proxy_port, self.https_proxy_details = self.gen_proxy_entry_widget(
"https", self, True, 1)
proxy_test_focus += [self.https_proxy, self.https_proxy_port]
self.same_proxy_addresses.append(self.https_proxy)
self.same_proxy_ports.append(self.https_proxy_port)
proxy_widget, self.https_proxy, self.https_proxy_port, self.https_proxy_details = self.gen_proxy_entry_widget(
"https", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.ftp_proxy, self.ftp_proxy_port, self.ftp_proxy_details = self.gen_proxy_entry_widget(
"ftp", self, True, 2)
proxy_test_focus += [self.ftp_proxy, self.ftp_proxy_port]
self.same_proxy_addresses.append(self.ftp_proxy)
self.same_proxy_ports.append(self.ftp_proxy_port)
proxy_widget, self.ftp_proxy, self.ftp_proxy_port, self.ftp_proxy_details = self.gen_proxy_entry_widget(
"ftp", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.git_proxy, self.git_proxy_port, self.git_proxy_details = self.gen_proxy_entry_widget(
"git", self, True, 3)
proxy_test_focus += [self.git_proxy, self.git_proxy_port]
self.same_proxy_addresses.append(self.git_proxy)
self.same_proxy_ports.append(self.git_proxy_port)
proxy_widget, self.git_proxy, self.git_proxy_port, self.git_proxy_details = self.gen_proxy_entry_widget(
"git", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.cvs_proxy, self.cvs_proxy_port, self.cvs_proxy_details = self.gen_proxy_entry_widget(
"cvs", self, True, 4)
proxy_test_focus += [self.cvs_proxy, self.cvs_proxy_port]
self.same_proxy_addresses.append(self.cvs_proxy)
self.same_proxy_ports.append(self.cvs_proxy_port)
self.all_proxy_ports = self.same_proxy_ports + [self.http_proxy_port]
self.all_proxy_addresses = self.same_proxy_addresses + [self.http_proxy]
sub_vbox.pack_start(self.proxy_table, expand=False, fill=False)
self.proxy_table.show_all()
# Create the graphical elements for the network test feature, but don't display them yet
self.test_network_button = HobAltButton("Test network configuration")
self.test_network_button.connect("clicked", self.test_network_button_cb)
self.test_proxy_progress = HobProgressBar()
self.dummy_progress = HobProgressBar()
self.retest_network_button = HobAltButton("Retest")
self.retest_network_button.connect("clicked", self.test_network_button_cb)
self.test_gui_elements = [self.test_network_button, self.test_proxy_progress, self.dummy_progress, self.retest_network_button]
# Initialize the network tester
self.test_proxy_state = self.TEST_NETWORK_NONE
self.set_test_proxy_state(self.TEST_NETWORK_INITIAL)
self.proxy_test_passed_id = self.handler.connect("network-passed", lambda h:self.test_proxy_ended(True))
self.proxy_test_failed_id = self.handler.connect("network-failed", lambda h:self.test_proxy_ended(False))
[w.connect("focus-in-event", self.test_proxy_focus_event) for w in proxy_test_focus]
[w.connect("focus-out-event", self.proxy_address_focus_out_event) for w in self.all_proxy_addresses]
proxy_widget, self.cvs_proxy, self.cvs_proxy_port, self.cvs_proxy_details = self.gen_proxy_entry_widget(
"cvs", self, True)
sub_vbox.pack_start(proxy_widget, expand=False, fill=False)
self.direct_checkbox.connect("toggled", self.proxy_checkbox_toggled_cb)
self.proxy_checkbox.connect("toggled", self.proxy_checkbox_toggled_cb)
@@ -810,7 +671,6 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.nb.set_current_page(page_id)
def details_cb(self, button, parent, protocol):
self.save_proxy_data()
dialog = ProxyDetailsDialog(title = protocol.upper() + " Proxy Details",
user = self.configuration.proxies[protocol][1],
passwd = self.configuration.proxies[protocol][2],
@@ -980,7 +840,7 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.nb.set_show_tabs(True)
self.nb.append_page(self.create_build_environment_page(), gtk.Label("Build environment"))
self.nb.append_page(self.create_shared_state_page(), gtk.Label("Shared state"))
self.nb.append_page(self.create_network_page(), gtk.Label("Network"))
self.nb.append_page(self.create_proxy_page(), gtk.Label("Proxies"))
self.nb.append_page(self.create_others_page(), gtk.Label("Others"))
self.nb.set_current_page(0)
self.vbox.pack_start(self.nb, expand=True, fill=True)
@@ -988,14 +848,6 @@ class SimpleSettingsDialog (CrumbsDialog, SettingsUIHelper):
self.show_all()
def destroy(self):
self.handler.disconnect(self.proxy_test_passed_id)
self.handler.disconnect(self.proxy_test_failed_id)
super(SimpleSettingsDialog, self).destroy()
def scroll_changed(self, widget, event, data=None):
adj = widget.get_vadjustment()
adj.set_value(adj.upper - adj.page_size)
#
# AdvancedSettings Dialog
@@ -1501,13 +1353,6 @@ class CellRendererPixbufActivatable(gtk.CellRendererPixbuf):
#
class LayerSelectionDialog (CrumbsDialog):
TARGETS = [
("MY_TREE_MODEL_ROW", gtk.TARGET_SAME_WIDGET, 0),
("text/plain", 0, 1),
("TEXT", 0, 2),
("STRING", 0, 3),
]
def gen_label_widget(self, content):
label = gtk.Label()
label.set_alignment(0, 0)
@@ -1571,17 +1416,7 @@ class LayerSelectionDialog (CrumbsDialog):
layer_tv.set_rules_hint(True)
layer_tv.set_headers_visible(False)
tree_selection = layer_tv.get_selection()
tree_selection.set_mode(gtk.SELECTION_SINGLE)
# Allow enable drag and drop of rows including row move
layer_tv.enable_model_drag_source( gtk.gdk.BUTTON1_MASK,
self.TARGETS,
gtk.gdk.ACTION_DEFAULT|
gtk.gdk.ACTION_MOVE)
layer_tv.enable_model_drag_dest(self.TARGETS,
gtk.gdk.ACTION_DEFAULT)
layer_tv.connect("drag_data_get", self.drag_data_get_cb)
layer_tv.connect("drag_data_received", self.drag_data_received_cb)
tree_selection.set_mode(gtk.SELECTION_NONE)
col0= gtk.TreeViewColumn('Path')
cell0 = gtk.CellRendererText()
@@ -1636,41 +1471,17 @@ class LayerSelectionDialog (CrumbsDialog):
return hbox, layer_store
def drag_data_get_cb(self, treeview, context, selection, target_id, etime):
treeselection = treeview.get_selection()
model, iter = treeselection.get_selected()
data = model.get_value(iter, 0)
selection.set(selection.target, 8, data)
def drag_data_received_cb(self, treeview, context, x, y, selection, info, etime):
model = treeview.get_model()
data = selection.data
drop_info = treeview.get_dest_row_at_pos(x, y)
if drop_info:
path, position = drop_info
iter = model.get_iter(path)
if (position == gtk.TREE_VIEW_DROP_BEFORE or position == gtk.TREE_VIEW_DROP_INTO_OR_BEFORE):
model.insert_before(iter, [data])
else:
model.insert_after(iter, [data])
else:
model.append([data])
if context.action == gtk.gdk.ACTION_MOVE:
context.finish(True, True, etime)
return
def add_hover_cb(self, button, event):
self.im.set_from_file(hic.ICON_INDI_ADD_HOVER_FILE)
def add_leave_cb(self, button, event):
self.im.set_from_file(hic.ICON_INDI_ADD_FILE)
def __init__(self, title, layers, layers_non_removable, all_layers, parent, flags, buttons=None):
def __init__(self, title, layers, all_layers, parent, flags, buttons=None):
super(LayerSelectionDialog, self).__init__(title, parent, flags, buttons)
# class members from other objects
self.layers = layers
self.layers_non_removable = layers_non_removable
self.all_layers = all_layers
self.layers_changed = False
@@ -1710,7 +1521,10 @@ class LayerSelectionDialog (CrumbsDialog):
"""
def draw_delete_button_cb(self, col, cell, model, it, tv):
path = model.get_value(it, 0)
if path in self.layers_non_removable:
# Trailing slashes are uncommon in bblayers.conf but confuse os.path.basename
path.rstrip('/')
name = os.path.basename(path)
if name == "meta" or name == "meta-hob":
cell.set_sensitive(False)
cell.set_property('pixbuf', None)
cell.set_property('mode', gtk.CELL_RENDERER_MODE_INERT)
@@ -1728,8 +1542,11 @@ class LayerSelectionDialog (CrumbsDialog):
"""
def draw_layer_path_cb(self, col, cell, model, it):
path = model.get_value(it, 0)
if path in self.layers_non_removable:
cell.set_property('markup', "<b>It cannot be removed</b>\n%s" % path)
name = os.path.basename(path)
if name == "meta":
cell.set_property('markup', "<b>Core layer for images: it cannot be removed</b>\n%s" % path)
elif name == "meta-hob":
cell.set_property('markup', "<b>Core layer for Hob: it cannot be removed</b>\n%s" % path)
else:
cell.set_property('text', path)
@@ -1875,9 +1692,6 @@ class ImageSelectionDialog (CrumbsDialog):
break
iter = self.image_store.iter_next(iter)
#
# ProxyDetailsDialog
#
class ProxyDetailsDialog (CrumbsDialog):
def __init__(self, title, user, passwd, parent, flags, buttons=None):
@@ -1937,42 +1751,3 @@ class ProxyDetailsDialog (CrumbsDialog):
else:
self.user = None
self.passwd = None
#
# OpeningLogDialog
#
class OpeningLogDialog (CrumbsDialog):
def __init__(self, title, parent, flags, buttons=None):
super(OpeningLogDialog, self).__init__(title, parent, flags, buttons)
self.running = False
# create visual elements on the dialog
self.create_visual_elements()
def start(self):
if not self.running:
self.running = True
gobject.timeout_add(100, self.pulse)
def pulse(self):
self.progress_bar.pulse()
return self.running
def create_visual_elements(self):
hbox = gtk.HBox(False, 12)
self.user_label = gtk.Label("The log will open in a text editor")
hbox.pack_start(self.user_label, expand=False, fill=False)
self.vbox.pack_start(hbox, expand=False, fill=False)
hbox = gtk.HBox(False, 12)
# Progress bar
self.progress_bar = HobProgressBar()
hbox.pack_start(self.progress_bar)
self.start()
self.vbox.pack_start(hbox, expand=False, fill=False)
button = self.add_button("Cancel", gtk.RESPONSE_CANCEL)
HobAltButton.style_button(button)
self.show_all()

View File

@@ -65,17 +65,10 @@ class HobHandler(gobject.GObject):
"package-populated" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
"network-passed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
"network-failed" : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
}
(GENERATE_CONFIGURATION, GENERATE_RECIPES, GENERATE_PACKAGES, GENERATE_IMAGE, POPULATE_PACKAGEINFO, SANITY_CHECK, NETWORK_TEST) = range(7)
(SUB_PATH_LAYERS, SUB_FILES_DISTRO, SUB_FILES_MACH, SUB_FILES_SDKMACH, SUB_MATCH_CLASS, SUB_PARSE_CONFIG, SUB_SANITY_CHECK,
SUB_GNERATE_TGTS, SUB_GENERATE_PKGINFO, SUB_BUILD_RECIPES, SUB_BUILD_IMAGE, SUB_NETWORK_TEST) = range(12)
(GENERATE_CONFIGURATION, GENERATE_RECIPES, GENERATE_PACKAGES, GENERATE_IMAGE, POPULATE_PACKAGEINFO, SANITY_CHECK) = range(6)
(SUB_PATH_LAYERS, SUB_FILES_DISTRO, SUB_FILES_MACH, SUB_FILES_SDKMACH, SUB_MATCH_CLASS, SUB_PARSE_CONFIG, SUB_SANITY_CHECK, SUB_GNERATE_TGTS, SUB_GENERATE_PKGINFO, SUB_BUILD_RECIPES, SUB_BUILD_IMAGE) = range(11)
def __init__(self, server, recipe_model, package_model):
super(HobHandler, self).__init__()
@@ -108,9 +101,13 @@ class HobHandler(gobject.GObject):
def runCommand(self, commandline):
try:
result, error = self.server.runCommand(commandline)
if error:
raise Exception("Error running command '%s': %s" % (commandline, error))
result = self.server.runCommand(commandline)
result_str = str(result)
if (result_str.startswith("Busy (") or
result_str == "No such command"):
raise Exception('%s has failed with output "%s". ' %
(str(commandline), result_str) +
"We recommend that you restart Hob.")
return result
except Exception as e:
self.commands_async = []
@@ -149,8 +146,6 @@ class HobHandler(gobject.GObject):
self.runCommand(["triggerEvent", "bb.event.RequestPackageInfo()"])
elif next_command == self.SUB_SANITY_CHECK:
self.runCommand(["triggerEvent", "bb.event.SanityCheck()"])
elif next_command == self.SUB_NETWORK_TEST:
self.runCommand(["triggerEvent", "bb.event.NetworkTest()"])
elif next_command == self.SUB_BUILD_RECIPES:
self.clear_busy()
self.building = True
@@ -239,7 +234,7 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = 0
message["total"] = None
message["title"] = "Parsing recipes"
message["title"] = "Parsing recipes: "
self.emit("parsing-started", message)
elif isinstance(event, (bb.event.ParseProgress,
bb.event.CacheLoadProgress,
@@ -248,7 +243,7 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = event.current
message["total"] = event.total
message["title"] = "Parsing recipes"
message["title"] = "Parsing recipes: "
self.emit("parsing", message)
elif isinstance(event, (bb.event.ParseCompleted,
bb.event.CacheLoadCompleted,
@@ -257,14 +252,8 @@ class HobHandler(gobject.GObject):
message["eventname"] = bb.event.getName(event)
message["current"] = event.total
message["total"] = event.total
message["title"] = "Parsing recipes"
message["title"] = "Parsing recipes: "
self.emit("parsing-completed", message)
elif isinstance(event, bb.event.NetworkTestFailed):
self.emit("network-failed")
self.run_next_command()
elif isinstance(event, bb.event.NetworkTestPassed):
self.emit("network-passed")
self.run_next_command()
if self.error_msg and not self.commands_async:
self.display_error()
@@ -359,10 +348,6 @@ class HobHandler(gobject.GObject):
self.commands_async.append(self.SUB_SANITY_CHECK)
self.run_next_command(self.SANITY_CHECK)
def trigger_network_test(self):
self.commands_async.append(self.SUB_NETWORK_TEST)
self.run_next_command(self.NETWORK_TEST)
def generate_configuration(self):
self.commands_async.append(self.SUB_PARSE_CONFIG)
self.commands_async.append(self.SUB_PATH_LAYERS)
@@ -420,7 +405,7 @@ class HobHandler(gobject.GObject):
self.build.reset()
def get_logfile(self):
return self.server.runCommand(["getVariable", "BB_CONSOLELOG"])[0]
return self.server.runCommand(["getVariable", "BB_CONSOLELOG"])
def _remove_redundant(self, string):
ret = []
@@ -435,11 +420,8 @@ class HobHandler(gobject.GObject):
params["core_base"] = self.runCommand(["getVariable", "COREBASE"]) or ""
hob_layer = params["core_base"] + "/meta-hob"
params["layer"] = self.runCommand(["getVariable", "BBLAYERS"]) or ""
params["layers_non_removable"] = self.runCommand(["getVariable", "BBLAYERS_NON_REMOVABLE"]) or ""
if hob_layer not in params["layer"].split():
params["layer"] += (" " + hob_layer)
if hob_layer not in params["layers_non_removable"].split():
params["layers_non_removable"] += (" " + hob_layer)
params["dldir"] = self.runCommand(["getVariable", "DL_DIR"]) or ""
params["machine"] = self.runCommand(["getVariable", "MACHINE"]) or ""
params["distro"] = self.runCommand(["getVariable", "DISTRO"]) or "defaultsetup"

View File

@@ -1,51 +0,0 @@
#!/usr/bin/env python
#
# BitBake Graphical GTK User Interface
#
# Copyright (C) 2012 Intel Corporation
#
# Authored by Cristiana Voicu <cristiana.voicu@intel.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import threading
import gtk
import subprocess
#
# OpeningLogThread
#
class OpeningLogThread(threading.Thread):
def __init__(self, dialog, log_file, parent):
threading.Thread.__init__(self)
self.dialog =dialog
self.log_file = log_file
self.parent = parent
def run(self):
p = subprocess.Popen(['xdg-open',self.log_file])
retcode = p.poll()
while (retcode == None):
if self.parent.stop:
try:
p.terminate()
except OSError, e:
if e.errno == 3:
pass # no such process
else:
raise
retcode = p.poll()
self.dialog.destroy()

View File

@@ -155,15 +155,9 @@ class HobViewTable (gtk.VBox):
bin = binb.split(', ')
total_no = len(bin)
if total_no > 1 and bin[0] == "User Selected":
if total_no > 2:
present_binb = bin[1] + ' (+' + str(total_no - 1) + ')'
else:
present_binb = bin[1]
present_binb = bin[1] + ' (+' + str(total_no) + ')'
else:
if total_no > 1:
present_binb = bin[0] + ' (+' + str(total_no - 1) + ')'
else:
present_binb = bin[0]
present_binb = bin[0] + ' (+' + str(total_no) + ')'
cell.set_property('text', present_binb)
else:
cell.set_property('text', "")
@@ -521,8 +515,7 @@ class HobNotebook(gtk.Notebook):
for child in self.pages:
if child.lbl.get_label() == title:
child.grab_focus()
self.set_current_page(self.pages.index(child))
return
self.set_current_page(self.page_num(child))
class HobWarpCellRendererText(gtk.CellRendererText):
def __init__(self, col_number):

View File

@@ -45,7 +45,6 @@ class ImageConfigurationPage (HobPage):
# or by manual. If by manual, all user's recipe selection and package selection are
# cleared.
self.machine_combo_changed_by_manual = True
self.stopping = False
self.create_visual_elements()
def create_visual_elements(self):
@@ -115,10 +114,9 @@ class ImageConfigurationPage (HobPage):
self.show_all()
def update_progress_bar(self, title, fraction, status=None):
if self.stopping == False:
self.progress_bar.update(fraction)
self.progress_bar.set_text(title)
self.progress_bar.set_rcstyle(status)
self.progress_bar.update(fraction)
self.progress_bar.set_title(title)
self.progress_bar.set_rcstyle(status)
def show_info_populating(self):
self._pack_components(pack_config_build_button = False)
@@ -250,13 +248,9 @@ class ImageConfigurationPage (HobPage):
return button_box
def stop_button_clicked_cb(self, button):
self.stopping = True
self.progress_bar.set_text("Stopping recipe parsing")
self.progress_bar.set_rcstyle("stop")
self.builder.cancel_parse_sync()
def machine_combo_changed_cb(self, machine_combo):
self.stopping = False
combo_item = machine_combo.get_active_text()
if not combo_item or combo_item == self.__dummy_machine__:
return
@@ -438,7 +432,6 @@ class ImageConfigurationPage (HobPage):
self.builder.just_bake()
def edit_image_button_clicked_cb(self, button):
self.builder.configuration.initial_selected_image = self.builder.configuration.selected_image
self.builder.show_recipes()
def template_button_clicked_cb(self, button):

View File

@@ -27,9 +27,6 @@ from bb.ui.crumbs.hobwidget import hic, HobViewTable, HobAltButton, HobButton
from bb.ui.crumbs.hobpages import HobPage
import subprocess
from bb.ui.crumbs.hig import CrumbsDialog
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
#
# ImageDetailsPage
#
@@ -407,18 +404,7 @@ class ImageDetailsPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
os.system("xdg-open /%s" % log_file)
def refresh_package_detail_box(self, image_size):
self.package_detail.update_line_widgets("Total image size: ", image_size)

View File

@@ -26,8 +26,6 @@ from bb.ui.crumbs.hobcolor import HobColors
from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook, HobAltButton, HobButton
from bb.ui.crumbs.hoblistmodel import PackageListModel
from bb.ui.crumbs.hobpages import HobPage
from bb.ui.crumbs.hobthreads import OpeningLogThread
from bb.ui.crumbs.hig import OpeningLogDialog
#
# PackageSelectionPage
@@ -54,7 +52,7 @@ class PackageSelectionPage (HobPage):
'col_max' : 300,
'expand' : 'True'
}, {
'col_name' : 'Brought in by (+others)',
'col_name' : 'Brought in by',
'col_id' : PackageListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
@@ -169,18 +167,7 @@ class PackageSelectionPage (HobPage):
def open_log_clicked_cb(self, button, log_file):
if log_file:
self.stop = False
dialog = OpeningLogDialog(title = "Opening Log",
parent = None,
flags = gtk.DIALOG_MODAL
| gtk.DIALOG_DESTROY_WITH_PARENT
| gtk.DIALOG_NO_SEPARATOR)
#create a thread to open log file
background = OpeningLogThread(dialog, log_file, self)
background.start()
response = dialog.run()
self.stop = True
background.join()
os.system("xdg-open /%s" % log_file)
def show_page(self, log_file):
children = self.button_box.get_children() or []
@@ -221,8 +208,8 @@ class PackageSelectionPage (HobPage):
selected_packages_size_str = HobPage._size_to_string(selected_packages_size)
image_overhead_factor = self.builder.configuration.image_overhead_factor
image_rootfs_size = self.builder.configuration.image_rootfs_size / 1024 # image_rootfs_size is KB
image_extra_size = self.builder.configuration.image_extra_size / 1024 # image_extra_size is KB
image_rootfs_size = self.builder.configuration.image_rootfs_size * 1024 # image_rootfs_size is KB
image_extra_size = self.builder.configuration.image_extra_size * 1024 # image_extra_size is KB
base_size = image_overhead_factor * selected_packages_size
image_total_size = max(base_size, image_rootfs_size) + image_extra_size
if "zypper" in self.builder.configuration.selected_packages:

View File

@@ -43,11 +43,6 @@ class HobProgressBar (gtk.ProgressBar):
text += " %.0f%%" % self.percentage
self.set_text(text)
def set_stop_title(self, text=None):
if not text:
text = ""
self.set_text(text)
def reset(self):
self.set_fraction(0)
self.set_text("")

View File

@@ -52,7 +52,7 @@ class RecipeSelectionPage (HobPage):
'col_max' : 300,
'expand' : 'True'
}, {
'col_name' : 'Brought in by (+others)',
'col_name' : 'Brought in by',
'col_id' : RecipeListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
@@ -193,9 +193,6 @@ class RecipeSelectionPage (HobPage):
self.builder.build_packages()
def back_button_clicked_cb(self, button):
self.builder.recipe_model.set_selected_image(self.builder.configuration.initial_selected_image)
self.builder.image_configuration_page.update_image_combo(self.builder.recipe_model, self.builder.configuration.initial_selected_image)
self.builder.image_configuration_page.update_image_desc()
self.builder.show_configuration()
def refresh_selection(self):

View File

@@ -46,7 +46,7 @@ class RunningBuildModel (gtk.TreeStore):
color = model.get(it, self.COL_COLOR)[0]
if not color:
return False
if color == HobColors.ERROR or color == HobColors.WARNING:
if color == HobColors.ERROR:
return True
return False
@@ -76,7 +76,7 @@ class RunningBuild (gobject.GObject):
'build-complete' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'build-aborted' : (gobject.SIGNAL_RUN_LAST,
'build-aborted' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'task-started' : (gobject.SIGNAL_RUN_LAST,
@@ -85,12 +85,6 @@ class RunningBuild (gobject.GObject):
'log-error' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'log-warning' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'disk-full' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
()),
'no-provider' : (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_PYOBJECT,)),
@@ -154,7 +148,6 @@ class RunningBuild (gobject.GObject):
elif event.levelno >= logging.WARNING:
icon = "dialog-warning"
color = HobColors.WARNING
self.emit("log-warning")
else:
icon = None
color = HobColors.OK
@@ -293,7 +286,6 @@ class RunningBuild (gobject.GObject):
# Emit the appropriate signal depending on the number of failures
if self.buildaborted:
self.emit ("build-aborted")
self.buildaborted = False
elif (failures >= 1):
self.emit ("build-failed")
else:
@@ -308,7 +300,6 @@ class RunningBuild (gobject.GObject):
elif isinstance(event, bb.event.DiskFull):
self.buildaborted = True
self.emit("disk-full")
elif isinstance(event, bb.command.CommandFailed):
self.emit("log", "error", "Command execution failed: %s" % (event.error))

View File

@@ -198,23 +198,17 @@ class gtkthread(threading.Thread):
def main(server, eventHandler):
try:
cmdline, error = server.runCommand(["getCmdLineAction"])
if error:
print("Error getting bitbake commandline: %s" % error)
return 1
elif not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
elif not cmdline or cmdline[0] != "generateDotGraph":
cmdline = server.runCommand(["getCmdLineAction"])
if cmdline and not cmdline['action']:
print(cmdline['msg'])
return
elif not cmdline or (cmdline['action'] and cmdline['action'][0] != "generateDotGraph"):
print("This UI is only compatible with the -g option")
return 1
ret, error = server.runCommand(["generateDepTreeEvent", cmdline[1], cmdline[2]])
if error:
print("Error running command '%s': %s" % (cmdline, error))
return 1
elif ret != True:
print("Error running command '%s': returned %s" % (cmdline, ret))
return 1
return
ret = server.runCommand(["generateDepTreeEvent", cmdline['action'][1], cmdline['action'][2]])
if ret != True:
print("Couldn't run command! %s" % ret)
return
except xmlrpclib.Fault as x:
print("XMLRPC Fault getting commandline:\n %s" % x)
return
@@ -240,9 +234,7 @@ def main(server, eventHandler):
try:
event = eventHandler.waitEvent(0.25)
if gtkthread.quit.isSet():
_, error = server.runCommand(["stateStop"])
if error:
print('Unable to cleanly stop: %s' % error)
server.runCommand(["stateStop"])
break
if event is None:
@@ -318,13 +310,9 @@ def main(server, eventHandler):
break
if shutdown == 1:
print("\nSecond Keyboard Interrupt, stopping...\n")
_, error = server.runCommand(["stateStop"])
if error:
print('Unable to cleanly stop: %s' % error)
server.runCommand(["stateStop"])
if shutdown == 0:
print("\nKeyboard Interrupt, closing down...\n")
_, error = server.runCommand(["stateShutdown"])
if error:
print('Unable to cleanly shutdown: %s' % error)
server.runCommand(["stateShutdown"])
shutdown = shutdown + 1
pass

View File

@@ -80,19 +80,16 @@ def main (server, eventHandler):
running_build.connect ("build-failed", running_build_failed_cb)
try:
cmdline, error = server.runCommand(["getCmdLineAction"])
if err:
print("Error getting bitbake commandline: %s" % error)
return 1
elif not cmdline:
cmdline = server.runCommand(["getCmdLineAction"])
if not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
ret, error = server.runCommand(cmdline)
if error:
print("Error running command '%s': %s" % (cmdline, error))
elif not cmdline['action']:
print(cmdline['msg'])
return 1
elif ret != True:
print("Error running command '%s': returned %s" % (cmdline, ret))
ret = server.runCommand(cmdline['action'])
if ret != True:
print("Couldn't get default commandline! %s" % ret)
return 1
except xmlrpclib.Fault as x:
print("XMLRPC Fault getting commandline:\n %s" % x)

View File

@@ -157,8 +157,6 @@ class TerminalFilter(object):
new[3] = new[3] & ~termios.ECHO
termios.tcsetattr(fd, termios.TCSADRAIN, new)
curses.setupterm()
if curses.tigetnum("colors") > 2:
format.enable_color()
self.ed = curses.tigetstr("ed")
if self.ed:
self.cuu = curses.tigetstr("cuu")
@@ -189,7 +187,7 @@ class TerminalFilter(object):
return
if self.footer_present:
self.clearFooter()
if (not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total) and not len(activetasks):
if not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total:
return
tasks = []
for t in runningpids:
@@ -219,19 +217,9 @@ class TerminalFilter(object):
def main(server, eventHandler, tf = TerminalFilter):
# Get values of variables which control our output
includelogs, error = server.runCommand(["getVariable", "BBINCLUDELOGS"])
if error:
logger.error("Unable to get the value of BBINCLUDELOGS variable: %s" % error)
return 1
loglines, error = server.runCommand(["getVariable", "BBINCLUDELOGS_LINES"])
if error:
logger.error("Unable to get the value of BBINCLUDELOGS_LINES variable: %s" % error)
return 1
consolelogfile, error = server.runCommand(["getVariable", "BB_CONSOLELOG"])
if error:
logger.error("Unable to get the value of BB_CONSOLELOG variable: %s" % error)
return 1
includelogs = server.runCommand(["getVariable", "BBINCLUDELOGS"])
loglines = server.runCommand(["getVariable", "BBINCLUDELOGS_LINES"])
consolelogfile = server.runCommand(["getVariable", "BB_CONSOLELOG"])
if sys.stdin.isatty() and sys.stdout.isatty():
log_exec_tty = True
else:
@@ -240,36 +228,31 @@ def main(server, eventHandler, tf = TerminalFilter):
helper = uihelper.BBUIHelper()
console = logging.StreamHandler(sys.stdout)
format_str = "%(levelname)s: %(message)s"
format = bb.msg.BBLogFormatter(format_str)
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
bb.msg.addDefaultlogFilter(console)
console.setFormatter(format)
logger.addHandler(console)
if consolelogfile:
bb.utils.mkdirhier(os.path.dirname(consolelogfile))
conlogformat = bb.msg.BBLogFormatter(format_str)
consolelog = logging.FileHandler(consolelogfile)
bb.msg.addDefaultlogFilter(consolelog)
consolelog.setFormatter(conlogformat)
consolelog.setFormatter(format)
logger.addHandler(consolelog)
try:
cmdline, error = server.runCommand(["getCmdLineAction"])
if error:
logger.error("Unable to get bitbake commandline arguments: %s" % error)
return 1
elif not cmdline:
cmdline = server.runCommand(["getCmdLineAction"])
if not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return 1
ret, error = server.runCommand(cmdline)
if error:
logger.error("Command '%s' failed: %s" % (cmdline, error))
elif not cmdline['action']:
print(cmdline['msg'])
return 1
elif ret != True:
logger.error("Command '%s' failed: returned %s" % (cmdline, ret))
ret = server.runCommand(cmdline['action'])
if ret != True:
print("Couldn't get default commandline! %s" % ret)
return 1
except xmlrpclib.Fault as x:
logger.error("XMLRPC Fault getting commandline:\n %s" % x)
print("XMLRPC Fault getting commandline:\n %s" % x)
return 1
parseprogress = None
@@ -467,15 +450,11 @@ def main(server, eventHandler, tf = TerminalFilter):
termfilter.clearFooter()
if main.shutdown == 1:
print("\nSecond Keyboard Interrupt, stopping...\n")
_, error = server.runCommand(["stateStop"])
if error:
logger.error("Unable to cleanly stop: %s" % error)
server.runCommand(["stateStop"])
if main.shutdown == 0:
print("\nKeyboard Interrupt, closing down...\n")
interrupted = True
_, error = server.runCommand(["stateShutdown"])
if error:
logger.error("Unable to cleanly shutdown: %s" % error)
print("\nKeyboard Interrupt, closing down...\n")
server.runCommand(["stateShutdown"])
main.shutdown = main.shutdown + 1
pass

View File

@@ -236,18 +236,15 @@ class NCursesUI:
shutdown = 0
try:
cmdline, error = server.runCommand(["getCmdLineAction"])
cmdline = server.runCommand(["getCmdLineAction"])
if not cmdline:
print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.")
return
elif error:
print("Error getting bitbake commandline: %s" % error)
elif not cmdline['action']:
print(cmdline['msg'])
return
ret, error = server.runCommand(cmdline)
if error:
print("Error running command '%s': %s" % (cmdline, error))
return
elif ret != True:
ret = server.runCommand(cmdline['action'])
if ret != True:
print("Couldn't get default commandlind! %s" % ret)
return
except xmlrpclib.Fault as x:
@@ -348,14 +345,10 @@ class NCursesUI:
exitflag = True
if shutdown == 1:
mw.appendText("Second Keyboard Interrupt, stopping...\n")
_, error = server.runCommand(["stateStop"])
if error:
print("Unable to cleanly stop: %s" % error)
server.runCommand(["stateStop"])
if shutdown == 0:
mw.appendText("Keyboard Interrupt, closing down...\n")
_, error = server.runCommand(["stateShutdown"])
if error:
print("Unable to cleanly shutdown: %s" % error)
server.runCommand(["stateShutdown"])
shutdown = shutdown + 1
pass

View File

@@ -51,7 +51,6 @@ class BBUIHelper:
if isinstance(event, bb.runqueue.runQueueTaskStarted) or isinstance(event, bb.runqueue.sceneQueueTaskStarted):
self.tasknumber_current = event.stats.completed + event.stats.active + event.stats.failed + 1
self.tasknumber_total = event.stats.total
self.needUpdate = True
def getTasks(self):
self.needUpdate = False

View File

@@ -13,7 +13,10 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "3.0%"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-dri2 \
xserver-xorg-extension-glx \
xserver-xorg-extension-extmod \
xserver-xorg-extension-dbe \
xf86-input-mouse \
xf86-input-keyboard \
xf86-input-evdev \

View File

@@ -6,7 +6,7 @@ PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xf86-input-evdev \
xf86-input-mouse \
xf86-video-omap \
xf86-video-omapfb \
xf86-input-keyboard"
# Ship all kernel modules by default

View File

@@ -19,6 +19,7 @@ PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-extmod \
xf86-input-evdev \
xf86-video-fbdev"

View File

@@ -14,6 +14,7 @@ PREFERRED_VERSION_linux-yocto ?= "3.4%"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xserver-xorg-extension-extmod \
xf86-input-evdev \
xf86-video-fbdev"

View File

@@ -0,0 +1,2 @@
QT_GLFLAGS_atom-pc = "-opengl"
QT_GLFLAGS_mpc8315e-rdb = "-opengl"

View File

@@ -10,7 +10,3 @@ BBLAYERS ?= " \
##COREBASE##/meta-yocto \
##COREBASE##/meta-yocto-bsp \
"
BBLAYERS_NON_REMOVABLE ?= " \
##COREBASE##/meta \
##COREBASE##/meta-yocto \
"

File diff suppressed because it is too large Load Diff

View File

@@ -24,15 +24,10 @@
#
RECIPE_UPSTREAM_VERSION_pn-acpid = "1.0.10"
RECIPE_UPSTREAM_DATE_pn-acpid = "Apr 22, 2009"
CHECK_DATE_pn-acpid = "Nov 09, 2012"
CHECK_DATE_pn-acpid = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-adt-installer = "1.1"
CHECK_DATE_pn-adt-installer = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-alsa-utils = "1.0.26"
RECIPE_UPSTREAM_DATE_pn-alsa-utils = "Jan 25, 2012"
CHECK_DATE_pn-alsa-utils = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-alsa-lib = "1.0.26"
RECIPE_UPSTREAM_DATE_pn-alsa-lib = "Jan 25, 2012"
CHECK_DATE_pn-alsa-lib = "Nov 08, 2012"
RECIPE_UPSTREAM_DATE_pn-alsa-utils="Jan 25, 2012"
RECIPE_UPSTREAM_VERSION_pn-apmd = "3.2.2-14"
RECIPE_UPSTREAM_DATE_pn-apmd = "Jul 01, 2009"
CHECK_DATE_pn-apmd = "Aug 27, 2012"
@@ -67,7 +62,7 @@ RECIPE_UPSTREAM_DATE_pn-bdwc = "Aug 15, 2012"
CHECK_DATE_pn-bdwgc = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-beecrypt = "4.2.1"
RECIPE_UPSTREAM_DATE_pn-beecrypt = "Jul 12, 2009"
CHECK_DATE_pn-beecrypt = "Nov 09, 2012"
CHECK_DATE_pn-beecrypt = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-bigreqsproto= "1.1.1"
RECIPE_UPSTREAM_DATE_pn-bigreqsproto= "Feb 25, 2011"
CHECK_DATE_pn-bigreqsproto= "Aug 27, 2012"
@@ -91,7 +86,7 @@ RECIPE_UPSTREAM_VERSION_pn-bluez4="4.101"
RECIPE_UPSTREAM_DATE_pn-bluez4="Jun 22, 2012"
CHECK_DATE_pn-bluez4 = "Aug 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-boost = "1.51.0"
CHECK_DATE_pn-boost = "Nov 02, 2012"
CHECK_DATE_pn-boost = "Aug 27, 2012"
RECIPE_UPSTREAM_DATE_pn-boost = "Aug 20, 2012"
RECIPE_UPSTREAM_VERSION_pn-btrfs-tools="git"
RECIPE_UPSTREAM_VERSION_pn-busybox = "1.20.2"
@@ -137,12 +132,12 @@ RECIPE_UPSTREAM_VERSION_pn-compositeproto = "0.4.2"
RECIPE_UPSTREAM_DATE_pn-compositeproto = "Oct 29, 2010"
CHECK_DATE_pn-compositeproto = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-connman-gnome="Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-connman = "1.9"
RECIPE_UPSTREAM_DATE_pn-connman="Oct 26, 2012"
CHECK_DATE_pn-connman = "Nov 27, 2012"
RECIPE_UPSTREAM_VERSION_pn-connman = "1.6"
RECIPE_UPSTREAM_DATE_pn-connman="Aug 22, 2012"
CHECK_DATE_pn-connman = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-console-tools = "0.3.2"
RECIPE_UPSTREAM_DATE_pn-console-tools = "Feb 18, 2002"
CHECK_DATE_pn-console-tools = "Nov 02, 2012"
CHECK_DATE_pn-console-tools = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-consolekit = "0.4.5"
RECIPE_UPSTREAM_DATE_pn-consolekit = "May 2, 2011"
CHECK_DATE_pn-consolekit = "Aug 28, 2012"
@@ -154,7 +149,7 @@ RECIPE_UPSTREAM_VERSION_pn-cpio = "2.11"
RECIPE_UPSTREAM_DATE_pn-cpio = "Mar 01, 2010"
CHECK_DATE_pn-cpio = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-cracklib="2.8.19"
CHECK_DATE_pn-cracklib = "Nov 02, 2012"
CHECK_DATE_pn-cracklib = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-cracklib = "May 18, 2010"
RECIPE_UPSTREAM_VERSION_pn-createrepo = "0.9.9"
RECIPE_NO_UPDATE_REASON_pn-createrepo = "Versions after 0.9.* use YUM, so we hold at 0.4.11"
@@ -170,7 +165,7 @@ RECIPE_UPSTREAM_DATE_pn-curl = "Jul 27, 2012"
CHECK_DATE_pn-curl = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-cwautomacros = "20110201"
RECIPE_UPSTREAM_DATE_pn-cwautomacros = "Feb 01, 2011"
CHECK_DATE_pn-cwautomacros = "Nov 08, 2012"
CHECK_DATE_pn-cwautomacros = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-damageproto = "1.2.1"
RECIPE_UPSTREAM_DATE_pn-damageproto = "Oct 29, 2010"
CHECK_DATE_pn-damageproto = "Aug 28, 2012"
@@ -188,14 +183,14 @@ RECIPE_UPSTREAM_VERSION_pn-diffstat="1.55"
RECIPE_UPSTREAM_DATE_pn-diffstat = "Jan 03, 2012"
CHECK_DATE_pn-diffstat = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-diffutils = "3.2"
RECIPE_UPSTREAM_DATE_pn-diffutils = "Sep 3, 2011"
RECIPE_UPSTREAM_DATE_pn-diffutils = "Sept 3, 2011"
CHECK_DATE_pn-diffutils = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-direcfb = "Jun 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-directfb = "1.6.1"
CHECK_DATE_pn-directfb = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-distcc="3.1.1"
RECIPE_UPSTREAM_DATE_pn-distcc="Dec 10, 2008"
CHECK_DATE_pn-distcc="Nov 8, 2012"
CHECK_DATE_pn-distcc="Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-dmxproto = "2.3.1"
RECIPE_UPSTREAM_DATE_pn-dmxproto = "Jan 5, 2011"
CHECK_DATE_pn-dmxproto = "Aug 28, 2012"
@@ -267,11 +262,11 @@ RECIPE_UPSTREAM_VERSION_pn-fixesproto = "5.0"
RECIPE_UPSTREAM_DATE_pn-fixesproto = "Mar 8, 2011"
CHECK_DATE_pn-fixesproto = "Aug 28, 2012"
RECIPE_UPSTREAM_VERSION_pn-flac="1.2.1"
CHECK_DATE_pn-flac = "Nov 08, 2012"
CHECK_DATE_pn-flac = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-flac="Sep 16, 2007"
RECIPE_UPSTREAM_VERSION_pn-flex = "2.5.37"
RECIPE_UPSTREAM_DATE_pn-flex = "Aug 08, 2012"
CHECK_DATE_pn-flex = "Nov 8, 2012"
CHECK_DATE_pn-flex = "Aug 28, 2012"
RECIPE_UPSTREAM_DATE_pn-font-alias = "Oct 01, 2009"
RECIPE_UPSTREAM_VERSION_pn-fontcacheproto = "0.1.3"
RECIPE_UPSTREAM_DATE_pn-fontcacheproto = "Oct 01, 2009"
@@ -325,19 +320,19 @@ CHECK_DATE_pn-gdbm = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-gdk-pixbuf-csource-native = "May 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-genext2fs = "1.4.1"
RECIPE_UPSTREAM_DATE_pn-genext2fs = "Apr 01, 2007"
CHECK_DATE_pn-genext2fs = "Nov 8, 2012"
CHECK_DATE_pn-genext2fs = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gettext = "0.18.1.1"
RECIPE_UPSTREAM_DATE_pn-gettext = "Jun 06, 2010"
CHECK_DATE_pn-gettext = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-ghostscript = "9.06"
RECIPE_UPSTREAM_DATE_pn-ghostscript = "Aug 8, 2012"
CHECK_DATE_pn-ghostscript = "Aug 29, 2012"
RECIPE_UPSTREAM_VERION_pn-git = "1.8.0"
RECIPE_UPSTREAM_DATE_pn-git = "unknown"
CHECK_DATE_pn-git = "Nov 8, 2012"
RECIPE_UPSTREAM_VERION_pn-git = "1.7.12"
RECIPE_UPSTREAM_DATE_pn-git = "Aug 20, 2012"
CHECK_DATE_pn-git = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-glew = "1.9.0"
RECIPE_UPSTREAM_DATE_pn-glew = "Jun 08, 2012"
CHECK_DATE_pn-glew = "Nov 02, 2012"
CHECK_DATE_pn-glew = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-glib-2.0 = "Nov 11, 2011"
RECIPE_UPSTREAM_VERSION_pn-glibc = "2.11.2"
RECIPE_UPSTREAM_DATE_pn-glibc = "May 01, 2010"
@@ -372,9 +367,9 @@ CHECK_DATE_pn-groff = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-grub = "0.97"
RECIPE_UPSTREAM_DATE_pn-grub = "Dec 01, 2005"
RECIPE_NO_UPDATE_REASON_pn-grub="grub2 is a different thing"
RECIPE_UPSTREAM_VERSION_pn-gssdp = "0.12.2"
RECIPE_UPSTREAM_DATE_pn-gssdp="Aug 19, 2012"
CHECK_DATE_pn-gssdp = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-gssdp = "0.10.0"
RECIPE_UPSTREAM_DATE_pn-gssdp="Apr 07, 2011"
CHECK_DATE_pn-gssdp = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-gst-meta-base="n/a"
RECIPE_NO_UPDATE_REASON_pn-gst-plugins-base = "not compatible with gst-fluendo 0.10.x"
RECIPE_UPSTREAM_VERSION_pn-gst-plugins-base = "0.11.90"
@@ -405,13 +400,10 @@ RECIPE_UPSTREAM_DATE_pn-guile = "Jul 07, 2012"
CHECK_DATE_pn-guile = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp-av = "0.10.3"
RECIPE_UPSTREAM_DATE_pn-gupnp-av= "Aug 19, 2012"
CHECK_DATE_pn-gupnp-av = "Nov 08, 2012"
CHECK_DATE_pn-gupnp-av = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp = "0.18.4"
RECIPE_UPSTREAM_DATE_pn-gupnp= "Aug 19, 2012"
CHECK_DATE_pn-gupnp = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-gupnp-tools = "0.8.4"
RECIPE_UPSTREAM_DATE_pn-gupnp-tools = "Dec 12, 2011"
CHECK_DATE_pn-gupnp-tools = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-gypsy="0.9"
RECIPE_UPSTREAM_DATE_pn-gypsy="Aug 28, 2012"
CHECK_DATE_pn-gypsy = "Aug 29, 2012"
@@ -426,7 +418,7 @@ RECIPE_UPSTREAM_DATE_pn-hal = "Nov 01, 2009"
CHECK_DATE_pn-hal = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-hdparm = "9.39"
RECIPE_UPSTREAM_DATE_pn-hdparm = "Feb 03, 2012"
CHECK_DATE_pn-hdparm = "Nov 09, 2012"
CHECK_DATE_pn-hdparm = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-hicolor-icon-theme = "0.12"
RECIPE_UPSTREAM_DATE_pn-hicolor-icon-theme = "Jan 13, 2010"
CHECK_DATE_pn-hicolor-icon-theme = "Aug 29, 2012"
@@ -451,7 +443,7 @@ CHECK_DATE_pn-insserv = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-insserv = "unknown"
RECIPE_UPSTREAM_VERSION_pn-intltool="0.50.2"
RECIPE_UPSTREAM_DATE_pn-intltool = "Feb 26, 2012"
CHECK_DATE_pn-intltool = "Nov 8, 2012"
CHECK_DATE_pn-intltool = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-iproute2 = "3.5.1"
RECIPE_UPSTREAM_DATE_pn-iproute2 = "Aug 13, 2012"
CHECK_DATE_pn-iproute2 = "Aug 29, 2012"
@@ -463,7 +455,7 @@ RECIPE_UPSTREAM_DATE_pn-iputils = "Oct 06, 2010"
CHECK_DATE_pn-iputils = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-irda-utils = "0.9.18"
RECIPE_UPSTREAM_DATE_pn-irda-utils="Jul 10, 2006"
CHECK_DATE_pn-irda-utils = "Nov 08, 2012"
CHECK_DATE_pn-irda-utils = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-iso-codes = "3.38"
RECIPE_UPSTREAM_DATE_pn-iso-codes = "Aug 08, 2012"
CHECK_DATE_pn-iso-codes = "Aug 29, 2012"
@@ -479,9 +471,9 @@ CHECK_DATE_pn-json-glib = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-kbproto = "1.0.6"
RECIPE_UPSTREAM_DATE_pn-kbproto = "Mar 23, 2012"
CHECK_DATE_pn-kbproto = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-kconfig-frontends = "3.6.0"
RECIPE_UPSTREAM_DATE_pn-kconfig-frontends = "Oct 06, 2012"
CHECK_DATE_pn-kconfig-frontends = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-kconfig-frontends = "3.5.0"
RECIPE_UPSTREAM_DATE_pn-kconfig-frontends = "Jul 22, 2012"
CHECK_DATE_pn-kconfig-frontends = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-kern-tools-native = "check"
RECIPE_UPSTREAM_VERSION_pn-kernelshark = "0.2"
RECIPE_NO_UPDATE_REASON_pn-kernelshark = "0.2 is the latest version."
@@ -500,16 +492,16 @@ RECIPE_UPSTREAM_VERSION_pn-lame = "3.99.5"
RECIPE_UPSTREAM_DATE_pn-lame = "Feb 28, 2012"
CHECK_DATE_pn-lame = "Aug 29, 2012"
RECIPE_UPSTREAM_VERSION_pn-latencytop = "0.5"
CHECK_DATE_pn-latencytop = "Nov 8, 2012"
CHECK_DATE_pn-latencytop = "Aug 29, 2011"
RECIPE_UPSTREAM_DATE_pn-latencytop = "Apr 28, 2009"
RECIPE_UPSTREAM_VERSION_pn-leafpad = "0.8.18.1"
RECIPE_UPSTREAM_DATE_pn-leafpad = "Dec 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-less = "451"
RECIPE_UPSTREAM_DATE_pn-less = "Sep 04, 2012"
CHECK_DATE_pn-less = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-less = "444"
CHECK_DATE_pn-less = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-less = "Jun 9, 2011"
RECIPE_UPSTREAM_VERSION_pn-liba52="0.7.4"
CHECK_DATE_pn-liba52 = "Aug 29, 2012"
RECIPE_UPSTREAM_DATE_pn-liba52="Jul 27, 2002"
CHECK_DATE_pn-liba52 = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libacpi = "0.2"
RECIPE_UPSTREAM_DATE_pn-libacpi = "unknown"
CHECK_DATE_pn-libacpi = "Aug 29, 2012"
@@ -534,10 +526,10 @@ CHECK_DATE_pn-libcap = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libcap = "Jan 01, 2010"
RECIPE_UPSTREAM_VERSION_pn-libcgroup = "0.38-1"
RECIPE_UPSTREAM_DATE_pn-libcgroup = "Jun 06, 2012"
CHECK_DATE_pn-libcgroup = "Nov 2, 2012"
RECIPE_UPSTREAM_VERSION_pn-libcheck = "0.9.9"
RECIPE_UPSTREAM_DATE_pn-libcheck = "Oct 22, 2009"
CHECK_DATE_pn-libcheck = "Nov 02, 2012"
CHECK_DATE_pn-libcgroup = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-libcheck = "0.9.8"
CHECK_DATE_pn-libcheck = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libcheck = "Sep 23, 2009"
RECIPE_UPSTREAM_VERSION_pn-libconvert-asn1-perl="0.22"
RECIPE_UPSTREAM_DATE_pn-libconvert-asn1-perl = "Apr 16, 2008"
CHECK_DATE_pn-libconvert-asn1-perl = "Aug 30, 2012"
@@ -566,7 +558,7 @@ CHECK_DATE_pn-libevent = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libevent = "Aug 23, 2011"
RECIPE_UPSTREAM_DATE_pn-libexif = "Jul 07, 2012"
RECIPE_UPSTREAM_VERSION_pn-libexif = "0.6.21"
CHECK_DATE_pn-libexif = "Nov 02, 2012"
CHECK_DATE_pn-libexif = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libfakekey = "0.0+svnr2031"
RECIPE_UPSTREAM_DATE_pn-libfakekey = "Jul 01, 2006"
CHECK_DATE_pn-libfakekey = "Aug 30, 2012"
@@ -623,7 +615,7 @@ RECIPE_UPSTREAM_DATE_pn-libgtkstylus = "Jun 1, 2012"
CHECK_DATE_pn-libgtkstylus = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libical = "0.48"
RECIPE_UPSTREAM_DATE_pn-libical ="Dec 13, 2011"
CHECK_DATE_pn-libical = "Nov 08, 2012"
CHECK_DATE_pn-libical = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libice = "1.0.8"
RECIPE_UPSTREAM_DATE_pn-libice = "Mar 02, 2012"
CHECK_DATE_pn-libice = "Aug 30, 2012"
@@ -632,7 +624,7 @@ RECIPE_UPSTREAM_DATE_pn-libiconv = "Aug 07, 2011"
CHECK_DATE_pn-libiconv = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libid3tag="0.15.1b"
RECIPE_UPSTREAM_DATE_pn-libid3tag="Feb 18, 2004"
CHECK_DATE_pn-libid3tag = "Nov 08, 2012"
CHECK_DATE_pn-libid3tag = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libidn = "1.25"
RECIPE_UPSTREAM_DATE_pn-libidn = "May 23, 2012"
CHECK_DATE_pn-libidn = "Aug 30, 2012"
@@ -642,15 +634,15 @@ CHECK_DATE_pn-libjson = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-liblbxutil = "1.1.0"
RECIPE_UPSTREAM_DATE_pn-liblbxutil = "Dec 4, 2009"
CHECK_DATE_pn-liblbuxutil = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmad = "0.15.1b"
RECIPE_UPSTREAM_DATE_pn-libmad = "Feb 18, 2004"
CHECK_DATE_pn-libmad = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmad = "0.15.2b"
CHECK_DATE_pn-libmad = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libmad = "Apr 04, 2004"
RECIPE_UPSTREAM_VERSION_pn-libmatchbox = "1.9"
RECIPE_UPSTREAM_DATE_pn-libmatchbox = "Aug 01, 2006"
CHECK_DATE_pn-libmatchbox = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libmpc="1.0.1"
RECIPE_UPSTREAM_VERSION_pn-libmpc="0.9"
RECIPE_UPSTREAM_DATE_pn-libmpc = "unknown"
CHECK_DATE_pn-libmpc = "Nov 8, 2012"
CHECK_DATE_pn-libmpc = "Jan 25, 2011"
RECIPE_UPSTREAM_VERSION_pn-libmusicbrainz="5.0.1"
RECIPE_UPSTREAM_DATE_pn-libmusicbrainz="unknown"
CHECK_DATE_pn-libmusicbrainz = "Aug 30, 2012"
@@ -677,7 +669,7 @@ RECIPE_UPSTREAM_DATE_pn-liboil = "Feb 01, 2010"
CHECK_DATE_pn-liboil = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libomxil = "0.9.3"
RECIPE_UPSTREAM_DATE_pn-libomxil = "May 20, 2011"
CHECK_DATE_pn-libomxil = "Nov 08, 2012"
CHECK_DATE_pn-libomxil = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libopensync-plugin-evolution2 = "0.39"
RECIPE_UPSTREAM_DATE_pn-libopensyc-plugin-evolution2 = "Aug 26, 2011"
CHECK_DATE_pn-libopensync-plugin-evolution2 = "Aug 30, 2012"
@@ -693,20 +685,19 @@ CHECK_DATE_pn-libpam = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libpam = "Oct 25, 2011"
RECIPE_UPSTREAM_VERSION_pn-libpcap="4.3.0"
RECIPE_UPSTREAM_DATE_pn-libpcap="Jun 12, 2012"
CHECK_DATE_pn-libpcap = "Nov 08, 2012"
CHECK_DATE_pn-libpcap = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libpciaccess = "0.13.1"
RECIPE_UPSTREAM_DATE_pn-libpciaccess = "Apr 09, 2012"
CHECK_DATE_pn-libpciaccess = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libpcre = "8.31"
RECIPE_UPSTREAM_DATE_pn-libpcre = "Jul 23, 2012"
CHECK_DATE_pn-libpcre = "Nov 8, 2012"
CHECK_DATE_pn-libpcre = "Aug 30, 2012"
RECIPE_NO_UPDATE_REASON_pn-libpng = "1.4.3 and later changes the API and breaks libmatchbox. Sticking with the 1.2.x series instead"
RECIPE_UPSTREAM_VERSION_pn-libpng = "1.5.11"
RECIPE_UPSTREAM_DATE_pn-libpng = "Jun 14, 2012"
CHECK_DATE_pn-libpng = "Jul 05, 2012"
RECIPE_UPSTREAM_VERSION_pn-libproxy = "0.4.10"
RECIPE_UPSTREAM_DATE_pn-libproxy = "Oct 15, 2012"
CHECK_DATE_pn-libproxy = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-libproxy="0.4.7"
CHECK_DATE_pn-libproxy = "Aug 30, 2012"
RECIPE_UPSTREAM_DATE_pn-libproxy="Jun 01, 2011"
RECIPE_UPSTREAM_DATE_pn-libpthread-stubs = "Oct 14, 2009"
RECIPE_UPSTREAM_VERSION_pn-libpthread-stubs = "0.3"
@@ -716,7 +707,7 @@ RECIPE_UPSTREAM_DATE_pn-librsvg = "Aug 19, 2012"
CHECK_DATE_pn-librsvg = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsamplerate0 = "0.1.8"
RECIPE_UPSTREAM_DATE_pn-libsamplerate0 = "Aug 15, 2011"
CHECK_DATE_pn-libsamplerate0 = "Nov 08, 2012"
CHECK_DATE_pn-libsamplerate0 = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsdl = "1.2.15"
CHECK_DATE_pn-libsdl = "Mar 14, 2012"
RECIPE_UPSTREAM_VERSION_pn-libsm = "1.2.1"
@@ -741,7 +732,7 @@ CHECK_DATE_pn-libtheora = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libtimedate-perl = "1.20"
RECIPE_UPSTREAM_VERSION_pn-libtirpc = "0.2.2"
RECIPE_UPSTREAM_DATE_pn-libtirpc = "May 02, 2011"
CHECK_DATE_pn-libtirpc = "Nov 08, 2012"
CHECK_DATE_pn-libtirpc = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libtool="2.4.2"
CHECK_DATE_pn-libtool = "Aug 30, 2012"
RECIPE_UPSTREAM_VERSION_pn-libunique = "2.91.4"
@@ -914,7 +905,7 @@ RECIPE_UPSTREAM_DATE_pn-loudmouth = "Mar 27, 2012"
CHECK_DATE_pn-loudmouth = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-lrzsz="0.12.20"
RECIPE_UPSTREAM_DATE_pn-lrzsz="Dec 31, 1998"
CHECK_DATE_pn-lrzsz = "Nov 08, 2012"
CHECK_DATE_pn-lrzsz = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-lsb = "4.1"
CHECK_DATE_pn-lsb = "Sep 5, 2012"
RECIPE_UPSTREAM_DATE_pn-lsb = "Jan 04, 2001"
@@ -926,7 +917,7 @@ CHECK_DATE_pn-lsof = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-lsof = "Apr 10, 2012"
RECIPE_UPSTREAM_VERSION_pn-ltp = "20120903"
RECIPE_UPSTREAM_DATE_pn-ltp = "Sep 3, 2012"
CHECK_DATE_pn-ltp = "Nov 27, 2012"
CHECK_DATE_pn-ltp = "Sep 5, 2012"
RECIPE_UPSTREAM_DATE_pn-lttng-ust = "Dec 15, 2011"
RECIPE_UPSTREAM_VERSION_pn-lzo = "2.06"
RECIPE_UPSTREAM_DATE_pn-lzo = "Aug 12, 2011"
@@ -960,7 +951,7 @@ RECIPE_UPSTREAM_DATE_pn-menu-cache = "May 20, 2012"
CHECK_DATE_pn-menu-cache = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-minicom = "2.6.1"
RECIPE_UPSTREAM_DATE_pn-minicom = "Mar 29, 2012"
CHECK_DATE_pn-minicom = "Nov 08, 2012"
CHECK_DATE_pn-minicom = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-mesa-dri = "8.0.3"
RECIPE_UPSTREAM_DATE_pn-mesa-dri="May 18, 2012"
CHECK_DATE_pn-mesa-dri = "Aug 31, 2012"
@@ -994,7 +985,7 @@ CHECK_DATE_pn-mpeg2dec = "Aug 31, 2012"
RECIPE_NO_UPDATE_REASON_pn-mpeg2dec = "Why are we currently at 0.4.1?"
RECIPE_UPSTREAM_VERSION_pn-mpfr="3.1.1"
RECIPE_UPSTREAM_DATE_pn-mpfr = "Jul 04, 2012"
CHECK_DATE_pn-mpfr = "Nov 8, 2012"
CHECK_DATE_pn-mpfr = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-msynctool = "0.38"
RECIPE_UPSTREAM_DATE_pn-msynctool = "Nov 11, 2008"
CHECK_DATE_pn-msynctool = "Aug 31, 2012"
@@ -1025,7 +1016,7 @@ CHECK_DATE_pn-nfs-utils = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-nfs-utils = "May 14, 2012"
RECIPE_UPSTREAM_DATE_pn-ocf-linux = "Jan 27, 2012"
RECIPE_UPSTREA_VERSION_pn-ocf-linux = "20120107"
CHECK_DATE_pn-ocf-linux = "Nov 09, 2012"
CHECK_DATE_pn-ocf-linux = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-ofono = "1.6"
RECIPE_UPSTREAM_DATE_pn-ofono="Apr 20, 2012"
CHECK_DATE_pn-ofono = "Aug 31, 2012"
@@ -1058,7 +1049,7 @@ RECIPE_UPSTREAM_DATE_pn-opkg_nogpg = "Feb 01, 2010"
CHECK_DATE_pn-opkg_nogpg = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-oprofile = "0.9.8"
RECIPE_UPSTREAM_DATE_pn-oprofile = "Aug 27, 2011"
CHECK_DATE_pn-oprofile = "Nov 8, 2012"
CHECK_DATE_pn-oprofile = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-oprofileui = "0.0+git0+82ecf8c6b53b84f80682a8312f9defa83a95f2a3"
CHECK_DATE_pn-oprofileui = "Aug 31, 2011"
RECIPE_UPSTREAM_DATE_pn-oprofileui = "Nov 14, 2011"
@@ -1121,8 +1112,8 @@ RECIPE_UPSTREAM_VERSION_pn-portmap = "6.0"
RECIPE_UPSTREAM_DATE_pn-portmap = "May 01, 2007"
CHECK_DATE_pn-portmap = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-postinsts="1.0"
RECIPE_UPSTREAM_VERSION_pn-powertop = "2.1"
CHECK_DATE_pn-powertop = "Nov 8, 2012"
RECIPE_UPSTREAM_VERSION_pn-powertop = "1.97"
CHECK_DATE_pn-powertop = "Aug 31, 2012"
RECIPE_NO_UPDATE_REASON_pn-powertop = "Do not upgrade to version 1.97 since it's a beta release of the comming PowerTOP 2.0"
RECIPE_UPSTREAM_DATE_pn-powertop = "Jan 5, 2011"
RECIPE_UPSTREAM_VERSION_pn-ppp-dialin = "check"
@@ -1139,9 +1130,9 @@ RECIPE_UPSTREAM_DATE_pn-procps = "unknown"
CHECK_DATE_pn-procps = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-pseudo = "1.2"
CHECK_DATE_pn-pseudo = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-psmisc = "22.20"
RECIPE_UPSTREAM_DATE_pn-psmisc = "Sep 20, 2012"
CHECK_DATE_pn-psmisc = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-psmisc = "22.19"
CHECK_DATE_pn-psmisc = "Aug 31, 2012"
RECIPE_UPSTREAM_DATE_pn-psmisc = "Jun 22, 2012"
RECIPE_UPSTREAM_VERSION_pn-psplash = "0.0+svnr424"
RECIPE_UPSTREAM_DATE_pn-psplash = "May 01, 2009"
CHECK_DATE_pn-psplash = "Aug 31, 2012"
@@ -1158,7 +1149,7 @@ RECIPE_UPSTREAM_VERSION_pn-python-pycurl = "7.19.0"
CHECK_DATE_pn-python-pycurl = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-python-scons = "2.2.0"
RECIPE_UPSTREAM_DATE_pn-python-scons = "Aug 05, 2012"
CHECK_DATE_pn-python-scons = "Nov 8, 2012"
CHECK_DATE_pn-python-scons = "Sep 11, 2012"
RECIPE_UPSTREAM_VERSION_pn-python="3.2.3"
RECIPE_UPSTREAM_DATE_pn-python = "Apr 10, 2012"
CHECK_DATE_pn-python = "Aug 31, 2012"
@@ -1184,7 +1175,7 @@ RECIPE_UPSTREAM_DATE_pn-quilt = "Feb 29, 2012"
CHECK_DATE_pn-quilt = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-quota = "4.00"
RECIPE_UPSTREAM_DATE_pn-quota = "Aug 17, 2011"
CHECK_DATE_pn-quota = "Nov 08, 2012"
CHECK_DATE_pn-quota = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-randrproto = "1.4.0"
RECIPE_UPSTREAM_DATE_pn-randrproto = "Jul 12, 2012"
CHECK_DATE_pn-randrproto = "Sep 03, 2012"
@@ -1205,7 +1196,7 @@ RECIPE_UPSTREAM_DATE_pn-resourceproto = "May 27, 2011"
CHECK_DATE_pn-resourceproto = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-rpcbind = "0.2.0"
RECIPE_UPSTREAM_DATE_pn-rpcbind = "May 29, 2009"
CHECK_DATE_pn-rpcbind = "Nov 08, 2012"
CHECK_DATE_pn-rpcbind = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-rpm = "5.4.10"
RECIPE_UPSTREAM_DATE_pn-rpm = "Jul 06, 2012"
CHECK_DATE_pn-rpm = "Sep 03, 2012"
@@ -1235,7 +1226,7 @@ RECIPE_UPSTREAM_VERSION_pn-sed = "4.2"
CHECK_DATE_pn-sed = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-sed = "Apr 30, 2009"
RECIPE_UPSTREAM_VERSION_pn-setserial = "2.17"
CHECK_DATE_pn-setserial = "Nov 09, 2012"
CHECK_DATE_pn-setserial = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-setserial = "Feb 09, 2000"
RECIPE_UPSTREAM_VERSION_pn-settings-daemon = "3.4.2"
RECIPE_UPSTREAM_DATE_pn-settings-daemon = "May 15, 2012"
@@ -1262,12 +1253,12 @@ RECIPE_UPSTREAM_DATE_pn-socat = "Aug 07, 2011"
RECIPE_UPSTREAM_VERSION_pn-speex="1.2rc1"
RECIPE_UPSTREAM_DATE_pn-speex="Jul 24, 2008"
CHECK_DATE_pn-speex = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.7.14.1"
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Oct 22, 2012"
CHECK_DATE_pn-sqlite3= "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-sqlite3 = "3.7.13"
RECIPE_UPSTREAM_DATE_pn-sqlite3 = "Jun 11, 2012"
CHECK_DATE_pn-sqlite3= "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-squashfs-tools = "4.2"
RECIPE_UPSTREAM_DATE_pn-squashfs-tools = "Feb 28, 2011"
CHECK_DATE_pn-squashfs-tools = "Nov 09, 2012"
CHECK_DATE_pn-squashfs-tools = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-startup-notification = "May 16, 2011"
RECIPE_UPSTREAM_VERSION_pn-startup-notification = "0.12"
CHECK_DATE_pn-startup-notification = "Sep 03, 2012"
@@ -1275,7 +1266,7 @@ RECIPE_UPSTREAM_VERSION_pn-stat = "3.3"
CHECK_DATE_pn-stat = "Dec 30, 2011"
RECIPE_UPSTREAM_VERSION_pn-strace = "4.7"
RECIPE_UPSTREAM_DATE_pn-strace = "May 02, 2012"
CHECK_DATE_pn-strace = "Nov 8, 2012"
CHECK_DATE_pn-strace = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-subversion = "1.7.6"
RECIPE_UPSTREAM_DATE_pn-subversion = "Aug 15, 2012"
CHECK_DATE_pn-subversion = "Sep 03, 2012"
@@ -1283,7 +1274,7 @@ RECIPE_UPSTREAM_VERSION_pn-sudo = "1.8.5p3"
RECIPE_UPSTREAM_DATE_pn-sudo = "Aug 13, 2012"
CHECK_DATE_pn-sudo = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysfsutils = "2.1.0"
CHECK_DATE_pn-sysfsutils = "Nov 02, 2012"
CHECK_DATE_pn-sysfsutils = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-sysfsutils = "Aug 23, 2006"
RECIPE_UPSTREAM_VERSION_pn-sysklogd = "1.5"
RECIPE_UPSTREAM_DATE_pn-sysklogd = "Oct 25, 2010"
@@ -1295,16 +1286,16 @@ RECIPE_UPSTREAM_VERSION_pn-sysprof = "1.1.8"
RECIPE_UPSTREAM_VERSION_pn-sysprof = "6b5b8432711ef5c747f8375073cd9af88922d3c6"
RECIPE_UPSTREAM_DATE_pn-sysprof = "Dec 01, 2010"
CHECK_DATE_pn-sysprof = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysstat = "10.1.2"
RECIPE_UPSTREAM_DATE_pn-sysstat = "Oct 06, 2012"
CHECK_DATE_pn-sysstat = "Nov 02, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysstat = "10.1.1"
CHECK_DATE_pn-sysstat = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-sysstat = "Jul 07, 2012"
RECIPE_UPSTREAM_VERSION_pn-sysvinit = "2.86"
RECIPE_UPSTREAM_DATE_pn-sysvinit = "Oct 10, 2006"
CHECK_DATE_pn-sysvinit = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-table = "d42a44938699ee30a998fc42bc149aebf69389db"
RECIPE_UPSTREAM_VERSION_pn-taglib = "1.8"
RECIPE_UPSTREAM_DATE_pn-taglib = "Sep 05, 2012"
CHECK_DATE_pn-taglib = "Nov 08, 2012"
RECIPE_UPSTREAM_VERSION_pn-taglib = "1.7.2"
RECIPE_UPSTREAM_DATE_pn-taglib = "Apr 19, 2010"
CHECK_DATE_pn-taglib = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-talloc = "2.0.7"
RECIPE_UPSTREAM_DATE_pn-talloc = "Sep 16, 2011"
CHECK_DATE_pn-talloc = "Sep 03, 2012"
@@ -1315,7 +1306,7 @@ RECIPE_UPSTREAM_DATE_pn-task-base="n/a"
RECIPE_UPSTREAM_DATE_pn-tcf-agent = "Jul 07, 2011"
RECIPE_UPSTREAM_VERSION_pn-tcl="8.5.12"
RECIPE_UPSTREAM_DATE_pn-tcl = "Jul 27, 2012"
CHECK_DATE_pn-tcl = "Nov 8, 2012"
CHECK_DATE_pn-tcl = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-tcp-wrappers = "Apr 08, 1997"
RECIPE_UPSTREAM_DATE_pn-telepathy-glib = "Aug 31, 2012"
RECIPE_UPSTREAM_VERSION_pn-telepathy-glib = "0.19.8"
@@ -1353,7 +1344,7 @@ RECIPE_UPSTREAM_DATE_pn-trapproto = "Jan 01, 2006"
CHECK_DATE_pn-trapproto = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-tremor="20120122"
RECIPE_UPSTREAM_DATE_pn-tremor="Jan 22, 2012"
CHECK_DATE_pn-tremor = "Nov 08, 2012"
CHECK_DATE_pn-tremor = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-tslib = "1.0"
RECIPE_UPSTREAM_DATE_pn-tslib ="Sep 09, 2006"
CHECK_DATE_pn-tslib = "Sep 03, 2012"
@@ -1399,7 +1390,7 @@ RECIPE_UPSTREAM_DATE_pn-vte="May 30, 2012"
CHECK_DATE_pn-vte = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-watchdog = "5.12"
RECIPE_UPSTREAM_DATE_pn-watchdog = "Apr 05, 2012"
CHECK_DATE_pn-watchdog = "Nov 09, 2012"
CHECK_DATE_pn-watchdog = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-wbxml2 = "0.10.8"
RECIPE_UPSTREAM_DATE_pn-wbxml2 = "Jul 06, 2010"
CHECK_DATE_pn-wbxml2 = "Sep 03, 2012"
@@ -1415,7 +1406,7 @@ RECIPE_UPSTREAM_DATE_pn-which = "Aug 01, 2008"
CHECK_DATE_pn-which = "Sep 03, 2012"
RECIPE_UPSTREAM_VERSION_pn-wireless-tools = "29"
RECIPE_UPSTREAM_DATE_pn-wireless-tools="Sep 18, 2007"
CHECK_DATE_pn-wireless-tools = "Nov 08, 2012"
CHECK_DATE_pn-wireless-tools = "Sep 03, 2012"
RECIPE_UPSTREAM_DATE_pn-wpa-supplicant="Sep 07, 2010"
RECIPE_UPSTREAM_VERSION_pn-wpa-supplicant = "1.0"
CHECK_DATE_pn-wpa-supplicant = "Sep 03, 2012"

View File

@@ -1,8 +1,8 @@
DISTRO = "poky"
DISTRO_NAME = "Poky 8.0 (Yocto Project 1.3 Reference Distro)"
DISTRO_VERSION = "1.3+snapshot-${DATE}"
DISTRO_VERSION = "1.3"
SDK_VENDOR = "-pokysdk"
SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"
SDK_VERSION := "${DISTRO_VERSION}"
MAINTAINER = "Poky <poky@yoctoproject.org>"
@@ -11,7 +11,7 @@ TARGET_VENDOR = "-poky"
LOCALCONF_VERSION = "1"
LAYER_CONF_VERSION ?= "6"
DISTRO_FEATURES_append = " largefile opengl multiarch"
DISTRO_FEATURES_append = " largefile opengl"
PREFERRED_VERSION_linux-yocto ?= "3.4%"
PREFERRED_VERSION_linux-yocto_qemux86 ?= "3.4%"
@@ -69,8 +69,8 @@ CONNECTIVITY_CHECK_URIS ?= " \
http://bugzilla.yoctoproject.org/report.cgi"
SANITY_TESTED_DISTROS ?= " \
Yocto (Built by Poky 8.0) 1.2 \n \
Yocto (Built by Poky 7.0) 1.2 \n \
Yocto (Built by Poky 8.0) 1.3 \n \
Poky 7.0 (Yocto Project 1.2 Reference Distro) 1.2 \n \
Poky 8.0 (Yocto Project 1.3 Reference Distro) 1.3 \n \
Ubuntu 10.04.4 LTS \n \
@@ -105,6 +105,6 @@ OELAYOUT_ABI = "8"
INHERIT += "poky-sanity"
#WARN_QA = "unsafe-references-in-binaries unsafe-references-in-scripts"
WARN_QA = "textrel"
WARN_QA = ""
ERROR_QA = "dev-so debug-deps dev-deps debug-files arch la2 pkgconfig la perms useless-rpaths rpaths staticdev ldflags"

View File

@@ -205,22 +205,6 @@ USER_CLASSES ?= "buildstats image-mklibs image-prelink"
# By default disable interactive patch resolution (tasks will just fail instead):
PATCHRESOLVE = "noop"
#
# Disk Space Monitoring during the build
#
# Monitor the disk space during the build. If there is less that 1GB of space or less
# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
# of the build. The reason for this is that running completely out of space can corrupt
# files and damages the build in ways which may not be easily recoverable.
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K"
#
# Shared-state files from other locations
#

View File

@@ -4,25 +4,21 @@
PACKAGE_ARCH = "all"
python () {
# Allow this class to be included but overridden - only set
# the values if we're still "all" package arch.
if d.getVar("PACKAGE_ARCH") == "all":
# No need for virtual/libc or a cross compiler
d.setVar("INHIBIT_DEFAULT_DEPS","1")
# No need for virtual/libc or a cross compiler
INHIBIT_DEFAULT_DEPS = "1"
# Set these to a common set of values, we shouldn't be using them other that for WORKDIR directory
# naming anyway
d.setVar("TARGET_ARCH", "allarch")
d.setVar("TARGET_OS", "linux")
d.setVar("TARGET_CC_ARCH", "none")
d.setVar("TARGET_LD_ARCH", "none")
d.setVar("TARGET_AS_ARCH", "none")
d.setVar("PACKAGE_EXTRA_ARCHS", "")
# Set these to a common set of values, we shouldn't be using them other that for WORKDIR directory
# naming anyway
TARGET_ARCH = "allarch"
TARGET_OS = "linux"
TARGET_CC_ARCH = "none"
TARGET_LD_ARCH = "none"
TARGET_AS_ARCH = "none"
PACKAGE_EXTRA_ARCHS = ""
# No need to do shared library processing or debug symbol handling
d.setVar("EXCLUDE_FROM_SHLIBS", "1")
d.setVar("INHIBIT_PACKAGE_DEBUG_SPLIT", "1")
d.setVar("INHIBIT_PACKAGE_STRIP", "1")
}
# No need to do shared library processing or debug symbol handling
EXCLUDE_FROM_SHLIBS = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
INHIBIT_PACKAGE_STRIP = "1"
do_package[stamp-extra-info] = ""

View File

@@ -8,6 +8,7 @@
ARCHIVE_EXCLUDE_FROM ?= ".pc autom4te.cache"
ARCHIVE_TYPE ?= "tar srpm"
DISTRO ?= "poky"
PATCHES_ARCHIVE_WITH_SERIES = 'yes'
SOURCE_ARCHIVE_LOG_WITH_SCRIPTS ?= '${@d.getVarFlag('ARCHIVER_MODE', 'log_type') \
if d.getVarFlag('ARCHIVER_MODE', 'log_type') != 'none' else 'logs_with_scripts'}'
@@ -490,7 +491,7 @@ def create_diff_gz(d):
f.close()
s=d.getVar('S', True)
distro = d.getVar('DISTRO',True) or ""
distro = d.getVar('DISTRO',True)
dest = s + '/' + distro + '/files'
if not os.path.exists(dest):
bb.mkdirhier(dest)

View File

@@ -34,21 +34,6 @@ EXTRA_AUTORECONF = "--exclude=autopoint"
export lt_cv_sys_lib_dlsearch_path_spec = "${libdir} ${base_libdir}"
# When building tools for use at build-time it's recommended for the build
# system to use these variables when cross-compiling.
# (http://sources.redhat.com/autobook/autobook/autobook_270.html)
export CPP_FOR_BUILD = "${BUILD_CPP}"
export CPPFLAGS_FOR_BUILD = "${BUILD_CPPFLAGS}"
export CC_FOR_BUILD = "${BUILD_CC}"
export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
export CXX_FOR_BUILD = "${BUILD_CXX}"
export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}"
export LD_FOR_BUILD = "${BUILD_LD}"
export LDFLAGS_FOR_BUILD = "${BUILD_LDFLAGS}"
def autotools_set_crosscompiling(d):
if not bb.data.inherits_class('native', d):
return " cross_compiling=yes"
@@ -142,11 +127,10 @@ autotools_do_configure() {
cd ${S}
# Remove any previous copy of the m4 macros
rm -rf ${B}/aclocal-copy/
ACLOCAL="aclocal --system-acdir=${B}/aclocal-copy/"
if [ x"${acpaths}" = xdefault ]; then
acpaths=
for i in `find ${S} -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \
grep -v 'acinclude.m4' | grep -v 'aclocal-copy' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do
grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do
acpaths="$acpaths -I $i"
done
else
@@ -156,19 +140,16 @@ autotools_do_configure() {
automake --version
echo "AUTOV is $AUTOV"
if [ -d ${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV ]; then
ACLOCAL="$ACLOCAL --automake-acdir=${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV"
acpaths="$acpaths -I${STAGING_DATADIR_NATIVE}/aclocal-$AUTOV"
fi
# The aclocal directory could get modified by other processes
# uninstalling data from the sysroot. See Yocto #861 for details.
# We avoid this by taking a copy here and then files cannot disappear.
# We copy native first, then target. This avoids certain races since cp-noerror
# won't overwrite existing files.
mkdir -p ${B}/aclocal-copy/
if [ -d ${STAGING_DATADIR_NATIVE}/aclocal ]; then
cp-noerror ${STAGING_DATADIR_NATIVE}/aclocal/ ${B}/aclocal-copy/
fi
if [ -d ${STAGING_DATADIR}/aclocal -a "${STAGING_DATADIR_NATIVE}/aclocal" != "${STAGING_DATADIR}/aclocal" ]; then
cp-noerror ${STAGING_DATADIR}/aclocal/ ${B}/aclocal-copy/
if [ -d ${STAGING_DATADIR}/aclocal ]; then
# for scratch build this directory can be empty
# so avoid cp's no files to copy error
cp-noerror ${STAGING_DATADIR}/aclocal ${B}/aclocal-copy/
acpaths="$acpaths -I ${B}/aclocal-copy/"
fi
# autoreconf is too shy to overwrite aclocal.m4 if it doesn't look
# like it was auto-generated. Work around this by blowing it away
@@ -181,24 +162,21 @@ autotools_do_configure() {
else
CONFIGURE_AC=configure.ac
fi
if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
: do nothing -- we still have an old unmodified configure.ac
else
bbnote Executing glib-gettextize --force --copy
echo "no" | glib-gettextize --force --copy
fi
else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
# We'd call gettextize here if it wasn't so broken...
cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
if [ -d ${S}/po/ ]; then
cp ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po/
if ! echo ${EXTRA_OECONF} | grep -q "\-\-disable-nls"; then
if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
: do nothing -- we still have an old unmodified configure.ac
else
bbnote Executing glib-gettextize --force --copy
echo "no" | glib-gettextize --force --copy
fi
else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
# We'd call gettextize here if it wasn't so broken...
cp ${STAGING_DATADIR}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
if [ -d ${S}/po/ -a ! -e ${S}/po/Makefile.in.in ]; then
cp ${STAGING_DATADIR}/gettext/po/Makefile.in.in ${S}/po/
fi
fi
for i in gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4; do
for j in `find ${S} -name $i | grep -v aclocal-copy`; do
rm $j
done
done
fi
fi
mkdir -p m4
@@ -206,8 +184,8 @@ autotools_do_configure() {
bbnote Executing intltoolize --copy --force --automake
intltoolize --copy --force --automake
fi
bbnote Executing ACLOCAL=\"$ACLOCAL\" autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
bbnote Executing autoreconf --verbose --install --force ${EXTRA_AUTORECONF} $acpaths
autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
cd $olddir
fi
if [ -e ${S}/configure ]; then

View File

@@ -80,7 +80,7 @@ BASEDEPENDS = "${@base_dep_prepend(d)}"
DEPENDS_prepend="${BASEDEPENDS} "
FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files"], d)}"
FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
# THISDIR only works properly with imediate expansion as it has to run
# in the context of the location its used (:=)
THISDIR = "${@os.path.dirname(d.getVar('FILE', True))}"
@@ -183,8 +183,6 @@ def preferred_ml_updates(d):
providers.append(v)
for pkg, reason in blacklists.items():
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-") or 'cross-canadian' in pkg:
continue
for p in prefixes:
newpkg = p + "-" + pkg
if not d.getVarFlag('PNBLACKLIST', newpkg, True):
@@ -193,18 +191,7 @@ def preferred_ml_updates(d):
for v in versions:
val = d.getVar(v, False)
pkg = v.replace("PREFERRED_VERSION_", "")
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-"):
continue
if 'cross-canadian' in pkg:
for p in prefixes:
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(v)
if newname != v:
newval = localdata.getVar(v, True)
d.setVar(newname, newval)
if pkg.endswith("-native") or pkg.startswith("nativesdk-"):
continue
for p in prefixes:
newname = "PREFERRED_VERSION_" + p + "-" + pkg
@@ -214,38 +201,16 @@ def preferred_ml_updates(d):
for prov in providers:
val = d.getVar(prov, False)
pkg = prov.replace("PREFERRED_PROVIDER_", "")
if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith("nativesdk-"):
continue
if 'cross-canadian' in pkg:
for p in prefixes:
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(prov)
if newname != prov:
newval = localdata.expand(val)
d.setVar(newname, newval)
if pkg.endswith("-native") or pkg.startswith("nativesdk-"):
continue
virt = ""
if pkg.startswith("virtual/"):
pkg = pkg.replace("virtual/", "")
virt = "virtual/"
for p in prefixes:
newname = "PREFERRED_PROVIDER_" + virt + p + "-" + pkg
if pkg != "kernel":
val = p + "-" + val
# implement variable keys
localdata = bb.data.createCopy(d)
override = ":virtclass-multilib-" + p
localdata.setVar("OVERRIDES", localdata.getVar("OVERRIDES", False) + override)
bb.data.update_data(localdata)
newname = localdata.expand(prov)
if newname != prov:
d.setVar(newname, localdata.expand(val))
# implement alternative multilib name
newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg)
if not d.getVar(newname, False):
d.setVar(newname, val)
@@ -253,7 +218,7 @@ def preferred_ml_updates(d):
mp = (d.getVar("MULTI_PROVIDER_WHITELIST", True) or "").split()
extramp = []
for p in mp:
if p.endswith(("-native", "-crosssdk")) or p.startswith("nativesdk-") or 'cross-canadian' in p:
if p.endswith("-native") or p.startswith("nativesdk-"):
continue
virt = ""
if p.startswith("virtual/"):
@@ -369,38 +334,6 @@ do_build () {
:
}
def set_packagetriplet(d):
archs = []
tos = []
tvs = []
archs.append(d.getVar("PACKAGE_ARCHS", True).split())
tos.append(d.getVar("TARGET_OS", True))
tvs.append(d.getVar("TARGET_VENDOR", True))
def settriplet(d, varname, archs, tos, tvs):
triplets = []
for i in range(len(archs)):
for arch in archs[i]:
triplets.append(arch + tvs[i] + "-" + tos[i])
triplets.reverse()
d.setVar(varname, " ".join(triplets))
settriplet(d, "PKGTRIPLETS", archs, tos, tvs)
variants = d.getVar("MULTILIB_VARIANTS", True) or ""
for item in variants.split():
localdata = bb.data.createCopy(d)
overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
localdata.setVar("OVERRIDES", overrides)
bb.data.update_data(localdata)
archs.append(localdata.getVar("PACKAGE_ARCHS", True).split())
tos.append(localdata.getVar("TARGET_OS", True))
tvs.append(localdata.getVar("TARGET_VENDOR", True))
settriplet(d, "PKGMLTRIPLETS", archs, tos, tvs)
python () {
import exceptions, string, re
@@ -588,8 +521,6 @@ python () {
if ".zip" in srcuri:
d.appendVarFlag('do_unpack', 'depends', ' unzip-native:do_populate_sysroot')
set_packagetriplet(d)
# 'multimachine' handling
mach_arch = d.getVar('MACHINE_ARCH', True)
pkg_arch = d.getVar('PACKAGE_ARCH', True)

View File

@@ -403,9 +403,9 @@ END
fi
# Check if there are new/changed files to commit (other than metadata-revs)
repostatus=`git status --porcelain | grep -v " metadata-revs$"`
HOSTNAME=`hostname 2>/dev/null || echo unknown`
if [ "$repostatus" != "" ] ; then
git add .
HOSTNAME=`hostname 2>/dev/null || echo unknown`
# porcelain output looks like "?? packages/foo/bar"
# Ensure we commit metadata-revs with the first commit
for entry in `echo "$repostatus" | awk '{print $2}' | awk -F/ '{print $1}' | sort | uniq` ; do

View File

@@ -1,4 +1,4 @@
DEPENDS_prepend = "cmake-native "
DEPENDS += " cmake-native "
# We need to unset CCACHE otherwise cmake gets too confused
CCACHE = ""

View File

@@ -39,13 +39,8 @@ def is_target(d):
return "yes"
return "no"
PERLLIBDIRS := "${@perl_get_libdirs(d)}"
PERLVERSION := "${@get_perl_version(d)}"
PERLLIBDIRS = "${@perl_get_libdirs(d)}"
FILES_${PN}-dbg += "${PERLLIBDIRS}/auto/*/.debug \
${PERLLIBDIRS}/auto/*/*/.debug \
${PERLLIBDIRS}/auto/*/*/*/.debug \
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/.debug \
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/.debug \
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/*/.debug \
"
${PERLLIBDIRS}/auto/*/*/*/.debug"

View File

@@ -23,9 +23,8 @@ cpan_build_do_configure () {
if [ ${@is_target(d)} == "yes" ]; then
# build for target
. ${STAGING_LIBDIR}/perl/config.sh
fi
perl Build.PL --installdirs vendor \
perl Build.PL --installdirs vendor \
--destdir ${D} \
--install_path lib="${datadir}/perl" \
--install_path arch="${libdir}/perl" \
@@ -33,6 +32,10 @@ cpan_build_do_configure () {
--install_path bin=${bindir} \
--install_path bindoc=${mandir}/man1 \
--install_path libdoc=${mandir}/man3
else
# build for host
perl Build.PL --installdirs site --destdir ${D}
fi
}
cpan_build_do_compile () {

View File

@@ -90,7 +90,7 @@ export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${layout_libdir}/pkgconfig"
export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
# Cross-canadian packages need to pull in nativesdk dynamic libs
SHLIBSDIRS = "${TMPDIR}/pkgdata/${HOST_ARCH}-nativesdk${HOST_VENDOR}-${HOST_OS}/shlibs/ ${TMPDIR}/pkgdata/all-${HOST_VENDOR}-${HOST_OS}/shlibs/"
SHLIBSDIR = "${TMPDIR}/pkgdata/${HOST_ARCH}-nativesdk${HOST_VENDOR}-${HOST_OS}/shlibs/"
SHLIBSDIR = "${STAGING_DIR}/${SDK_ARCH}-nativesdk${SDK_VENDOR}-${BUILD_OS}/shlibs"
do_populate_sysroot[stamp-extra-info] = ""
do_package[stamp-extra-info] = ""

View File

@@ -7,7 +7,7 @@ EXCLUDE_FROM_WORLD = "1"
CLASSOVERRIDE = "class-cross"
PACKAGES = ""
PACKAGES_DYNAMIC = ""
PACKAGES_DYNAMIC_class-native = ""
PACKAGES_DYNAMIC_virtclass-native = ""
HOST_ARCH = "${BUILD_ARCH}"
HOST_VENDOR = "${BUILD_VENDOR}"
@@ -54,7 +54,7 @@ base_sbindir = "${bindir}"
libdir = "${exec_prefix}/lib/${CROSS_TARGET_SYS_DIR}"
libexecdir = "${exec_prefix}/libexec/${CROSS_TARGET_SYS_DIR}"
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/"
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}"
python cross_virtclass_handler () {
if not isinstance(e, bb.event.RecipePreFinalise):

View File

@@ -27,6 +27,7 @@ target_exec_prefix = "${SDKPATHNATIVE}${exec_prefix_nativesdk}"
baselib = "lib"
do_populate_sysroot[stamp-extra-info] = ""
do_package[stamp-extra-info] = ""
# Need to force this to ensure consitency accross architectures
EXTRA_OECONF_FPU = ""

View File

@@ -5,13 +5,10 @@ EXTRA_OEMAKE = ""
export STAGING_INCDIR
export STAGING_LIBDIR
PACKAGES = "${PN}-staticdev ${PN}-dev ${PN}-dbg ${PN}-doc ${PN}"
PACKAGES = "${PN}-dev ${PN}-dbg ${PN}-doc ${PN}"
FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"
FILES_${PN}-staticdev += "\
${PYTHON_SITEPACKAGES_DIR}/*.a \
"
FILES_${PN}-dev += "\
${datadir}/pkgconfig \
${libdir}/pkgconfig \

View File

@@ -7,7 +7,7 @@ GNOME_COMPRESS_TYPE ?= "bz2"
SECTION ?= "x11/gnome"
SRC_URI = "${GNOME_MIRROR}/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
DEPENDS += "gnome-common-native"
DEPENDS += "gnome-common"
FILES_${PN} += "${datadir}/application-registry \
${datadir}/mime-info \

View File

@@ -15,5 +15,5 @@ EXTRA_OECONF_append = "\
"
do_configure_prepend () {
( cd ${S} && gtkdocize )
gtkdocize
}

View File

@@ -1,55 +0,0 @@
# This class will update the inputmethod module cache for virtual keyboards
#
# Usage: Set GTKIMMODULES_PACKAGES to the packages that needs to update the inputmethod modules
gtk_immodule_cache_postinst() {
if [ "x$D" != "x" ]; then
exit 1
fi
if [ ! -z `which gtk-query-immodules-2.0` ]; then
gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
fi
if [ ! -z `which gtk-query-immodules-3.0` ]; then
gtk-query-immodules-3.0 > /etc/gtk-3.0/gtk.immodules
fi
}
gtk_immodule_cache_postrm() {
if [ "x$D" != "x" ]; then
exit 1
fi
if [ ! -z `which gtk-query-immodules-2.0` ]; then
gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
fi
if [ ! -z `which gtk-query-immodules-3.0` ]; then
gtk-query-immodules-3.0 > /etc/gtk-3.0/gtk.immodules
fi
}
python populate_packages_append () {
gtkimmodules_pkgs = d.getVar('GTKIMMODULES_PACKAGES', True).split()
for pkg in gtkimmodules_pkgs:
bb.note("adding gtk-immodule-cache postinst and postrm scripts to %s" % pkg)
postinst = d.getVar('pkg_postinst_%s' % pkg, True) or d.getVar('pkg_postinst', True)
if not postinst:
postinst = '#!/bin/sh\n'
postinst += d.getVar('gtk_immodule_cache_postinst', True)
d.setVar('pkg_postinst_%s' % pkg, postinst)
postrm = d.getVar('pkg_postrm_%s' % pkg, True) or d.getVar('pkg_postrm', True)
if not postrm:
postrm = '#!/bin/sh\n'
postrm += d.getVar('gtk_immodule_cache_postrm', True)
d.setVar('pkg_postrm_%s' % pkg, postrm)
}
python __anonymous() {
if not bb.data.inherits_class('native', d) and not bb.data.inherits_class('cross', d):
gtkimmodules_check = d.getVar('GTKIMMODULES_PACKAGES')
if not gtkimmodules_check:
bb_filename = d.getVar('FILE')
raise bb.build.FuncFailed, "\n\n\nERROR: %s inherits gtk-immodule-cache but doesn't set GTKIMMODULES_PACKAGE" % bb_filename
}

View File

@@ -10,6 +10,6 @@ LABELS_append = " ${SYSLINUX_LABELS} "
ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.ext3"
do_bootimg[depends] += "${INITRD_IMAGE}:do_rootfs"
do_bootimg[depends] += "${PN}:do_rootfs"
do_bootimg[depends] += "${IMAGE_BASENAME}:do_rootfs"
inherit bootimg

View File

@@ -26,6 +26,7 @@ PARALLEL_MAKE_pn-m4 = ""
PARALLEL_MAKE_pn-opkg = ""
PARALLEL_MAKE_pn-pkgconfig = ""
PARALLEL_MAKE_pn-prelink = ""
PARALLEL_MAKE_pn-qemugl = ""
PARALLEL_MAKE_pn-rpm = ""
PARALLEL_MAKE_pn-tcl = ""
PARALLEL_MAKE_pn-beecrypt = ""

View File

@@ -8,7 +8,7 @@ SYSLINUX_LABELS = "boot"
LABELS_append = " ${SYSLINUX_LABELS} "
# need to define the dependency and the ROOTFS for directdisk
do_bootdirectdisk[depends] += "${PN}:do_rootfs"
do_bootdirectdisk[depends] += "${IMAGE_BASENAME}:do_rootfs"
ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_BASENAME}-${MACHINE}.ext3"
# creating VMDK relies on having a live hddimg so ensure we

View File

@@ -84,7 +84,6 @@ LDCONFIGDEPEND_libc-uclibc = ""
do_rootfs[depends] += "makedevs-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot ${LDCONFIGDEPEND}"
do_rootfs[depends] += "virtual/update-alternatives-native:do_populate_sysroot update-rc.d-native:do_populate_sysroot"
do_rootfs[recrdeptask] += "do_package"
IMAGE_TYPE_live = '${@base_contains("IMAGE_FSTYPES", "live", "live", "empty", d)}'
inherit image-${IMAGE_TYPE_live}

View File

@@ -17,15 +17,20 @@
# files under exec_prefix
#
# We need to have the scanelf utility as soon as
# possible and this is contained within the pax-utils-native.
# The package.bbclass can help us here.
#
inherit package
PACKAGE_DEPENDS += "${QADEPENDS}"
PACKAGE_DEPENDS += "pax-utils-native ${QADEPENDS}"
PACKAGEFUNCS += " do_package_qa "
# unsafe-references-in-binaries requires prelink-rtld from
# prelink-native, but we don't want this DEPENDS for -native builds
QADEPENDS = "prelink-native"
QADEPENDS_class-native = ""
QADEPENDS_class-nativesdk = ""
QADEPENDS_virtclass-native = ""
QADEPENDS_virtclass-nativesdk = ""
#
# dictionary for elf headers
@@ -39,7 +44,6 @@ def package_qa_get_machine_dict():
"arm" : (40, 0, 0, True, 32),
},
"linux" : {
"aarch64" : (183, 0, 0, True, 64),
"arm" : (40, 97, 0, True, 32),
"armeb": (40, 97, 0, False, 32),
"powerpc": (20, 0, 0, False, 32),
@@ -105,15 +109,11 @@ def package_qa_get_machine_dict():
"linux-gnux32" : {
"x86_64": (62, 0, 0, True, 32),
},
"linux-gnun32" : {
"mips64": ( 8, 0, 0, False, 32),
"mipsel64": ( 8, 0, 0, True, 32),
},
}
# Currently not being used by default "desktop"
WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi textrel"
WARN_QA ?= "ldflags useless-rpaths rpaths unsafe-references-in-binaries unsafe-references-in-scripts staticdev libdir"
ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch la2 pkgconfig la perms dep-cmp"
ALL_QA = "${WARN_QA} ${ERROR_QA}"
@@ -139,20 +139,6 @@ def package_qa_handle_error(error_class, error_msg, d):
bb.warn("QA Issue: %s" % error_msg)
return True
QAPATHTEST[libexec] = "package_qa_check_libexec"
def package_qa_check_libexec(path,name, d, elf, messages):
# Skip the case where the default is explicitly /usr/libexec
libexec = d.getVar('libexecdir', True)
if libexec == "/usr/libexec":
return True
if 'libexec' in path.split(os.path.sep):
messages.append("%s: %s is using libexec please relocate to %s" % (name, package_qa_clean_path(path, d), libexec))
return False
return True
QAPATHTEST[rpaths] = "package_qa_check_rpath"
def package_qa_check_rpath(file,name, d, elf, messages):
"""
@@ -161,26 +147,21 @@ def package_qa_check_rpath(file,name, d, elf, messages):
if not elf:
return
if os.path.islink(file):
return
scanelf = os.path.join(d.getVar('STAGING_BINDIR_NATIVE',True),'scanelf')
bad_dirs = [d.getVar('TMPDIR', True) + "/work", d.getVar('STAGING_DIR_TARGET', True)]
bad_dir_test = d.getVar('TMPDIR', True)
if not os.path.exists(scanelf):
bb.fatal("Can not check RPATH, scanelf (part of pax-utils-native) not found")
if not bad_dirs[0] in d.getVar('WORKDIR', True):
bb.fatal("This class assumed that WORKDIR is ${TMPDIR}/work... Not doing any check")
phdrs = elf.run_objdump("-p", d)
import re
rpath_re = re.compile("\s+RPATH\s+(.*)")
for line in phdrs.split("\n"):
m = rpath_re.match(line)
if m:
rpath = m.group(1)
for dir in bad_dirs:
if dir in rpath:
messages.append("package %s contains bad RPATH %s in file %s" % (name, rpath, file))
output = os.popen("%s -B -F%%r#F '%s'" % (scanelf,file))
txt = output.readline().split()
for line in txt:
for dir in bad_dirs:
if dir in line:
messages.append("package %s contains bad RPATH %s in file %s" % (name, line, file))
QAPATHTEST[useless-rpaths] = "package_qa_check_useless_rpaths"
def package_qa_check_useless_rpaths(file, name, d, elf, messages):
@@ -193,17 +174,15 @@ def package_qa_check_useless_rpaths(file, name, d, elf, messages):
if not elf:
return
if os.path.islink(file):
return
objdump = d.getVar('OBJDUMP', True)
env_path = d.getVar('PATH', True)
libdir = d.getVar("libdir", True)
base_libdir = d.getVar("base_libdir", True)
phdrs = elf.run_objdump("-p", d)
import re
rpath_re = re.compile("\s+RPATH\s+(.*)")
for line in phdrs.split("\n"):
for line in os.popen("LC_ALL=C PATH=%s %s -p '%s' 2> /dev/null" % (env_path, objdump, file), "r"):
m = rpath_re.match(line)
if m:
rpath = m.group(1)
@@ -446,30 +425,6 @@ def package_qa_check_desktop(path, name, d, elf, messages):
for l in output:
messages.append("Desktop file issue: " + l.strip())
QAPATHTEST[textrel] = "package_qa_textrel"
def package_qa_textrel(path, name, d, elf, messages):
"""
Check if the binary contains relocations in .text
"""
if not elf:
return
if os.path.islink(path):
return
phdrs = elf.run_objdump("-p", d)
sane = True
import re
textrel_re = re.compile("\s+TEXTREL\s+")
for line in phdrs.split("\n"):
if textrel_re.match(line):
sane = False
if not sane:
messages.append("ELF binary '%s' has relocations in .text" % path)
QAPATHTEST[ldflags] = "package_qa_hash_style"
def package_qa_hash_style(path, name, d, elf, messages):
"""
@@ -488,13 +443,14 @@ def package_qa_hash_style(path, name, d, elf, messages):
if not gnu_hash:
return
objdump = d.getVar('OBJDUMP', True)
env_path = d.getVar('PATH', True)
sane = False
has_syms = False
phdrs = elf.run_objdump("-p", d)
# If this binary has symbols, we expect it to have GNU_HASH too.
for line in phdrs.split("\n"):
for line in os.popen("LC_ALL=C PATH=%s %s -p '%s' 2> /dev/null" % (env_path, objdump, path), "r"):
if "SYMTAB" in line:
has_syms = True
if "GNU_HASH" in line:
@@ -524,24 +480,6 @@ def package_qa_check_buildpaths(path, name, d, elf, messages):
if tmpdir in file_content:
messages.append("File %s in package contained reference to tmpdir" % package_qa_clean_path(path,d))
QAPATHTEST[xorg-driver-abi] = "package_qa_check_xorg_driver_abi"
def package_qa_check_xorg_driver_abi(path, name, d, elf, messages):
"""
Check that all packages containing Xorg drivers have ABI dependencies
"""
# Skip dev, dbg or nativesdk packages
if name.endswith("-dev") or name.endswith("-dbg") or name.startswith("nativesdk-"):
return
driverdir = d.expand("${libdir}/xorg/modules/drivers/")
if driverdir in path and path.endswith(".so"):
for rdep in bb.utils.explode_deps(d.getVar('RDEPENDS_' + name, True) or ""):
if rdep.startswith("xorg-abi-"):
return
messages.append("Package %s contains Xorg driver (%s) but no xorg-abi- dependencies" % (name, os.path.basename(path)))
def package_qa_check_license(workdir, d):
"""
Check for changes in the license files
@@ -781,9 +719,6 @@ python do_package_qa () {
return
testmatrix = d.getVarFlags("QAPATHTEST")
import re
# The package name matches the [a-z0-9.+-]+ regular expression
pkgname_pattern = re.compile("^[a-z0-9.+-]+$")
g = globals()
walk_sane = True
@@ -807,11 +742,6 @@ python do_package_qa () {
errorchecks.append(g[testmatrix[e]])
bb.note("Checking Package: %s" % package)
# Check package name
if not pkgname_pattern.match(package):
package_qa_handle_error("pkgname",
"%s doesn't match the [a-z0-9.+-]+ regex\n" % package, d)
path = "%s/%s" % (pkgdest, package)
if not package_qa_walk(path, warnchecks, errorchecks, skip, package, d):
walk_sane = False

View File

@@ -8,7 +8,7 @@ valid_archs = "alpha cris ia64 \
i386 x86 \
m68knommu m68k ppc powerpc powerpc64 ppc64 \
sparc sparc64 \
arm aarch64 \
arm \
m32r mips \
sh sh64 um h8300 \
parisc s390 v850 \
@@ -22,7 +22,6 @@ def map_kernel_arch(a, d):
if re.match('(i.86|athlon|x86.64)$', a): return 'x86'
elif re.match('armeb$', a): return 'arm'
elif re.match('aarch64$', a): return 'arm64'
elif re.match('mips(el|64|64el)$', a): return 'mips'
elif re.match('p(pc|owerpc)(|64)', a): return 'powerpc'
elif re.match('sh(3|4)$', a): return 'sh'

View File

@@ -130,9 +130,8 @@ do_kernel_checkout() {
echo "WARNING. ${WORKDIR}/git is not a bare clone."
echo "Ensure that the SRC_URI includes the 'bareclone=1' option."
# We can fix up the kernel repository even if it wasn't a bare clone.
# If KMETA is defined, the branch must exist, but a machine branch
# can be missing since it may be created later by the tools.
# we can fix up the kernel repository, but at the least the meta
# branch must be present. The machine branch may be created later.
mv ${WORKDIR}/git/.git ${S}
rm -rf ${WORKDIR}/git/
cd ${S}

View File

@@ -24,9 +24,9 @@ python __anonymous () {
inherit kernel-arch deploy
PACKAGES_DYNAMIC += "^kernel-module-.*"
PACKAGES_DYNAMIC += "^kernel-image-.*"
PACKAGES_DYNAMIC += "^kernel-firmware-.*"
PACKAGES_DYNAMIC += "kernel-module-*"
PACKAGES_DYNAMIC += "kernel-image-*"
PACKAGES_DYNAMIC += "kernel-firmware-*"
export OS = "${TARGET_OS}"
export CROSS_COMPILE = "${TARGET_PREFIX}"
@@ -85,6 +85,7 @@ KERNEL_IMAGETYPE_FOR_MAKE = "${@(lambda s: s[:-3] if s[-3:] == ".gz" else s)(d.g
kernel_do_compile() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
oe_runmake include/linux/version.h CC="${KERNEL_CC}" LD="${KERNEL_LD}"
oe_runmake ${KERNEL_IMAGETYPE_FOR_MAKE} ${KERNEL_ALT_IMAGETYPE} CC="${KERNEL_CC}" LD="${KERNEL_LD}"
if test "${KERNEL_IMAGETYPE_FOR_MAKE}.gz" = "${KERNEL_IMAGETYPE}"; then
gzip -9c < "${KERNEL_IMAGETYPE_FOR_MAKE}" > "${KERNEL_OUTPUT}"
@@ -244,11 +245,11 @@ do_savedefconfig[nostamp] = "1"
addtask savedefconfig after do_configure
pkg_postinst_kernel-base () {
update-alternatives --install /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ${KERNEL_PRIORITY} || true
cd /${KERNEL_IMAGEDEST}; update-alternatives --install /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} ${KERNEL_PRIORITY} || true
}
pkg_postrm_kernel-base () {
update-alternatives --remove ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} || true
cd /${KERNEL_IMAGEDEST}; update-alternatives --remove ${KERNEL_IMAGETYPE} ${KERNEL_IMAGETYPE}-${KERNEL_VERSION} || true
}
inherit cml1
@@ -257,12 +258,11 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
# kernel-base becomes kernel-${KERNEL_VERSION}
# kernel-image becomes kernel-image-${KERNEL_VERISON}
PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-modules"
PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev"
FILES = ""
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH}"
FILES_kernel-vmlinux = "/boot/vmlinux*"
FILES_kernel-modules = ""
RDEPENDS_kernel = "kernel-base"
# Allow machines to override this dependency if kernel image files are
# not wanted in images as standard
@@ -273,8 +273,6 @@ RPROVIDES_kernel-base += "kernel-${KERNEL_VERSION}"
ALLOW_EMPTY_kernel = "1"
ALLOW_EMPTY_kernel-base = "1"
ALLOW_EMPTY_kernel-image = "1"
ALLOW_EMPTY_kernel-modules = "1"
DESCRIPTION_kernel-modules = "Kernel modules meta package"
pkg_postinst_kernel-image () {
if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
@@ -400,12 +398,10 @@ python populate_packages_prepend () {
dvar = d.getVar('PKGD', True)
use_update_modules = oe.utils.contains('DISTRO_FEATURES', 'update-modules', True, False, d)
# If autoloading is requested, output /etc/modules-load.d/<name>.conf and append
# appropriate modprobe commands to the postinst
autoload = d.getVar('module_autoload_%s' % basename, True)
if autoload and use_update_modules:
if autoload:
name = '%s/etc/modules-load.d/%s.conf' % (dvar, basename)
f = open(name, 'w')
for m in autoload.split():
@@ -419,16 +415,15 @@ python populate_packages_prepend () {
# Write out any modconf fragment
modconf = d.getVar('module_conf_%s' % basename, True)
if modconf and use_update_modules:
if modconf:
name = '%s/etc/modprobe.d/%s.conf' % (dvar, basename)
f = open(name, 'w')
f.write("%s\n" % modconf)
f.close()
if use_update_modules:
files = d.getVar('FILES_%s' % pkg, True)
files = "%s /etc/modules-load.d/%s.conf /etc/modprobe.d/%s.conf" % (files, basename, basename)
d.setVar('FILES_%s' % pkg, files)
files = d.getVar('FILES_%s' % pkg, True)
files = "%s /etc/modules-load.d/%s.conf /etc/modprobe.d/%s.conf" % (files, basename, basename)
d.setVar('FILES_%s' % pkg, files)
if vals.has_key("description"):
old_desc = d.getVar('DESCRIPTION_' + pkg, True) or ""
@@ -444,17 +439,12 @@ python populate_packages_prepend () {
module_regex = '^(.*)\.k?o$'
module_pattern = 'kernel-module-%s'
use_update_modules = oe.utils.contains('DISTRO_FEATURES', 'update-modules', True, False, d)
if use_update_modules:
postinst = d.getVar('pkg_postinst_modules', True)
postrm = d.getVar('pkg_postrm_modules', True)
else:
postinst = None
postrm = None
postinst = d.getVar('pkg_postinst_modules', True)
postrm = d.getVar('pkg_postrm_modules', True)
do_split_packages(d, root='/lib/firmware', file_regex='^(.*)\.bin$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
do_split_packages(d, root='/lib/firmware', file_regex='^(.*)\.fw$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
do_split_packages(d, root='/lib/firmware', file_regex='^(.*)\.cis$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
do_split_packages(d, root='/lib/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='%skernel-%s' % (['', 'update-modules '][use_update_modules], d.getVar("KERNEL_VERSION", True)))
do_split_packages(d, root='/lib/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='update-modules kernel-%s' % d.getVar("KERNEL_VERSION", True))
# If modules-load.d and modprobe.d are empty at this point, remove them to
# avoid warnings. removedirs only raises an OSError if an empty
@@ -466,6 +456,8 @@ python populate_packages_prepend () {
import re
metapkg = "kernel-modules"
d.setVar('ALLOW_EMPTY_' + metapkg, "1")
d.setVar('FILES_' + metapkg, "")
blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 'kernel-vmlinux' ]
for l in module_deps.values():
for i in l:
@@ -477,6 +469,9 @@ python populate_packages_prepend () {
if not pkg in blacklist and not pkg in metapkg_rdepends:
metapkg_rdepends.append(pkg)
d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends))
d.setVar('DESCRIPTION_' + metapkg, 'Kernel modules meta package')
packages.append(metapkg)
d.setVar('PACKAGES', ' '.join(packages))
}
# Support checking the kernel size since some kernels need to reside in partitions

View File

@@ -4,7 +4,6 @@ do_install() {
h=`echo $r|sed -e's,\.x$,.h,'`
install -m 0644 ${S}/sunrpc/rpcsvc/$h ${D}/${includedir}/rpcsvc/
done
install -d ${D}/${sysconfdir}/
install -m 0644 ${WORKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/
install -d ${D}${localedir}
make -f ${WORKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"

View File

@@ -246,7 +246,7 @@ python package_do_split_gconvs () {
def output_locale_binary_rdepends(name, pkgname, locale, encoding):
m = re.match("(.*)\.(.*)", name)
if m:
libc_name = "%s.%s" % (m.group(1), m.group(2).lower())
libc_name = "%s.%s" % (m.group(1), m.group(2).lower().replace("-",""))
else:
libc_name = name
d.setVar('RDEPENDS_%s' % pkgname, legitimize_package_name('%s-binary-localedata-%s' \

View File

@@ -6,7 +6,7 @@
LICENSE_DIRECTORY ??= "${DEPLOY_DIR}/licenses"
LICSSTATEDIR = "${WORKDIR}/license-destdir/"
addtask populate_lic after do_patch before do_build
addtask populate_lic after do_patch before do_package
do_populate_lic[dirs] = "${LICSSTATEDIR}/${PN}"
do_populate_lic[cleandirs] = "${LICSSTATEDIR}"
@@ -97,9 +97,9 @@ python do_populate_lic() {
pn = d.getVar('PN', True)
for package in d.getVar('PACKAGES', True):
if d.getVar('LICENSE_' + package, True):
if d.getVar('LICENSE_' + pn + '-' + package, True):
license_types = license_types + ' & ' + \
d.getVar('LICENSE_' + package, True)
d.getVar('LICENSE_' + pn + '-' + package, True)
#If we get here with no license types, then that means we have a recipe
#level license. If so, we grab only those.

View File

@@ -26,14 +26,3 @@ KERNEL_AR = "${HOST_PREFIX}ar${KERNEL_ARSUFFIX} ${HOST_AR_KERNEL_ARCH}"
# kernel modules are generally machine specific
PACKAGE_ARCH = "${MACHINE_ARCH}"
#
# Ensure the hostprogs are available for module compilation. Modules that
# inherit this recipe and override do_compile() should be sure to call
# do_make_scripts() or ensure the scripts are built independently.
#
do_make_scripts() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
-C ${STAGING_KERNEL_DIR} scripts
}

View File

@@ -1,8 +1,19 @@
RDEPENDS_${PN} += "kernel-image ${@oe.utils.contains('DISTRO_FEATURES', 'update-modules', 'update-modules', '', d)}"
RDEPENDS += "kernel-image update-modules"
DEPENDS += "virtual/kernel"
inherit module-base
#
# Ensure the hostprogs are available for module compilation. Modules that
# inherit this recipe and override do_compile() should be sure to call
# do_make_scripts() or ensure the scripts are built independently.
#
do_make_scripts() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
-C ${STAGING_KERNEL_DIR} scripts
}
addtask make_scripts before do_compile
do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
do_make_scripts[deptask] = "do_populate_sysroot"

View File

@@ -18,17 +18,10 @@ python multilib_virtclass_handler () {
e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False))
return
if bb.data.inherits_class('cross-canadian', e.data):
e.data.setVar("MLPREFIX", variant + "-")
override = ":virtclass-multilib-" + variant
e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override)
bb.data.update_data(e.data)
return
if bb.data.inherits_class('native', e.data):
raise bb.parse.SkipPackage("We can't extend native recipes")
if bb.data.inherits_class('nativesdk', e.data) or bb.data.inherits_class('crosssdk', e.data):
if bb.data.inherits_class('nativesdk', e.data):
raise bb.parse.SkipPackage("We can't extend nativesdk recipes")
save_var_name=e.data.getVar("MULTILIB_SAVE_VARNAME", True) or ""
@@ -73,20 +66,16 @@ python __anonymous () {
clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK")
clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY")
if bb.data.inherits_class('image', d):
return
clsextend.map_depends_variable("DEPENDS")
clsextend.map_variable("PROVIDES")
if bb.data.inherits_class('cross-canadian', d):
if bb.data.inherits_class('image', d) or bb.data.inherits_class('populate_sdk_base', d):
return
clsextend.rename_packages()
clsextend.rename_package_variables((d.getVar("PACKAGEVARS", True) or "").split())
clsextend.map_depends_variable("DEPENDS")
clsextend.map_packagevars()
clsextend.map_regexp_variable("PACKAGES_DYNAMIC")
clsextend.map_variable("PROVIDES")
clsextend.map_variable("PACKAGES_DYNAMIC")
clsextend.map_variable("PACKAGE_INSTALL")
clsextend.map_variable("INITSCRIPT_PACKAGES")
}
@@ -101,7 +90,7 @@ python do_package_qa_multilib() {
for i in values:
if i.startswith('virtual/'):
i = i[len('virtual/'):]
if (not i.startswith('kernel-module')) and (not i.startswith(mlprefix)) and (not 'cross-canadian' in i) and (not i.startswith("nativesdk-")):
if (not i.startswith('kernel-module')) and (not i.startswith(mlprefix)):
candidates.append(i)
if len(candidates) > 0:
bb.warn("Multilib QA Issue: %s package %s - suspicious values '%s' in %s"
@@ -120,3 +109,4 @@ python do_package_qa_multilib() {
check_mlprefix(pkg, 'RREPLACES', ml)
check_mlprefix(pkg, 'RCONFLICTS', ml)
}

View File

@@ -1,29 +1,16 @@
inherit siteinfo
# If applicable on the architecture, this routine will rename the header and
# add a unique identifier to the name for the ABI/bitsize that is being used.
# A wrapper will be generated for the architecture that knows how to call
# all of the ABI variants for that given architecture.
# If applicable on the architecture, this routine will rename the header and add
# a unique identifier to the name for the ABI/bitsize that is being used. A wrapper will
# be generated for the architecture that knows how to call all of the ABI variants for that
# given architecture.
#
# TODO: mips64 n32 is not yet recognized in this code
# when that is identified the name of the wrapped item should be "n32" and appropriately
# determined int he if coding...
#
oe_multilib_header() {
# We use
# For ARM: We don't support multilib builds.
# For MIPS: "n32" is a special case, which needs to be
# distinct from both 64-bit and 32-bit.
case ${TARGET_ARCH} in
arm*) return
;;
mips*) case "${MIPSPKGSFX_ABI}" in
"-n32")
ident=n32
;;
*)
ident=${SITEINFO_BITS}
;;
esac
;;
*) ident=${SITEINFO_BITS}
esac
# Do nothing on ARM, only one ABI is supported at once
if echo ${TARGET_ARCH} | grep -q arm; then
return
fi
@@ -33,6 +20,7 @@ oe_multilib_header() {
continue
fi
stem=$(echo $each_header | sed 's#\.h$##')
ident=${SITEINFO_BITS}
# if mips64/n32 set ident to n32
mv ${D}/${includedir}/$each_header ${D}/${includedir}/${stem}-${ident}.h

View File

@@ -6,14 +6,14 @@ inherit relocatable
EXCLUDE_FROM_WORLD = "1"
PACKAGES = ""
PACKAGES_class-native = ""
PACKAGES_virtclass-native = ""
PACKAGES_DYNAMIC = ""
PACKAGES_DYNAMIC_class-native = ""
PACKAGES_DYNAMIC_virtclass-native = ""
PACKAGE_ARCH = "${BUILD_ARCH}"
# used by cmake class
OECMAKE_RPATH = "${libdir}"
OECMAKE_RPATH_class-native = "${libdir}"
OECMAKE_RPATH_virtclass-native = "${libdir}"
# When this class has packaging enabled, setting
# RPROVIDES becomes unnecessary.
@@ -82,12 +82,13 @@ bindir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
libdir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
libexecdir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/"
do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_NATIVE}/"
do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}"
do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_NATIVE}"
# Since we actually install these into situ there is no staging prefix
STAGING_DIR_HOST = ""
STAGING_DIR_TARGET = ""
SHLIBSDIR = "${STAGING_DIR_NATIVE}/shlibs"
PKG_CONFIG_DIR = "${libdir}/pkgconfig"
EXTRA_NATIVE_PKGCONFIG_PATH ?= ""
@@ -156,3 +157,4 @@ do_package_write_deb[noexec] = "1"
do_package_write_rpm[noexec] = "1"
do_populate_sysroot[stamp-extra-info] = ""
do_package[stamp-extra-info] = ""

View File

@@ -91,3 +91,4 @@ python () {
addhandler nativesdk_virtclass_handler
do_populate_sysroot[stamp-extra-info] = ""
do_package[stamp-extra-info] = ""

View File

@@ -232,7 +232,7 @@ def splitfile(file, debugfile, debugsrcdir, d):
objcopy = d.getVar("OBJCOPY", True)
debugedit = d.expand("${STAGING_LIBDIR_NATIVE}/rpm/bin/debugedit")
workdir = d.getVar("WORKDIR", True)
workparentdir = d.getVar("DEBUGSRC_OVERRIDE_PATH", True) or os.path.dirname(os.path.dirname(workdir))
workparentdir = d.getVar("DEBUGSRC_OVERRIDE_PATH", True) or os.path.dirname(workdir)
sourcefile = d.expand("${WORKDIR}/debugsources.list")
# We ignore kernel modules, we don't generate debug info files.
@@ -277,8 +277,8 @@ def splitfile2(debugsrcdir, d):
objcopy = d.getVar("OBJCOPY", True)
debugedit = d.expand("${STAGING_LIBDIR_NATIVE}/rpm/bin/debugedit")
workdir = d.getVar("WORKDIR", True)
workparentdir = os.path.dirname(os.path.dirname(workdir))
workbasedir = os.path.basename(os.path.dirname(workdir)) + "/" + os.path.basename(workdir)
workparentdir = os.path.dirname(workdir)
workbasedir = os.path.basename(workdir)
nosuchdir = []
basepath = dvar
@@ -292,7 +292,7 @@ def splitfile2(debugsrcdir, d):
# We need to ignore files that are not actually ours
# we do this by only paying attention to items from this package
processdebugsrc += "fgrep -z '%s' | "
processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s' 2>/dev/null)"
processdebugsrc += "(cd '%s' ; cpio -pd0mL --no-preserve-owner '%s%s' 2>/dev/null)"
subprocess.call(processdebugsrc % (sourcefile, workbasedir, workparentdir, dvar, debugsrcdir), shell=True)
@@ -451,7 +451,7 @@ python package_do_split_locales() {
pkg = pn + '-locale-' + ln
packages.append(pkg)
d.setVar('FILES_' + pkg, os.path.join(datadir, 'locale', l))
d.setVar('RRECOMMENDS_' + pkg, '%s%svirtual-locale-%s' % (pndep, mlprefix, ln))
d.setVar('RDEPENDS_' + pkg, '%s%svirtual-locale-%s' % (pndep, mlprefix, ln))
d.setVar('RPROVIDES_' + pkg, '%s-locale %s%s-translation' % (pn, mlprefix, ln))
d.setVar('SUMMARY_' + pkg, '%s - %s translations' % (summary, l))
d.setVar('DESCRIPTION_' + pkg, '%s This package contains language translation files for the %s locale.' % (description, l))
@@ -1292,17 +1292,8 @@ python package_do_filedeps() {
d.setVar("FILERPROVIDESFLIST_" + pkg, " ".join(provides_files))
}
def getshlibsdirs(d):
dirs = []
triplets = (d.getVar("PKGTRIPLETS") or "").split()
for t in triplets:
dirs.append("${TMPDIR}/pkgdata/" + t + "/shlibs/")
return " ".join(dirs)
getshlibsdirs[vardepsexclude] = "PKGTRIPLETS"
SHLIBSDIRS = "${@getshlibsdirs(d)}"
SHLIBSDIR = "${TMPDIR}/pkgdata/${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/shlibs"
SHLIBSWORKDIR = "${PKGDESTWORK}/shlibs"
SHLIBSDIR = "${STAGING_DIR_HOST}/shlibs"
SHLIBSWORKDIR = "${WORKDIR}/shlibs"
python package_do_shlibs() {
import re, pipes
@@ -1327,7 +1318,7 @@ python package_do_shlibs() {
pkgdest = d.getVar('PKGDEST', True)
shlibs_dirs = d.getVar('SHLIBSDIRS', True).split()
shlibs_dir = d.getVar('SHLIBSDIR', True)
shlibswork_dir = d.getVar('SHLIBSWORKDIR', True)
# Take shared lock since we're only reading, not writing
@@ -1481,7 +1472,7 @@ python package_do_shlibs() {
d.setVar('pkg_postinst_%s' % pkg, postinst)
list_re = re.compile('^(.*)\.list$')
for dir in shlibs_dirs:
for dir in [shlibs_dir]:
if not os.path.exists(dir):
continue
for file in os.listdir(dir):
@@ -1552,7 +1543,7 @@ python package_do_pkgconfig () {
workdir = d.getVar('WORKDIR', True)
pkgdest = d.getVar('PKGDEST', True)
shlibs_dirs = d.getVar('SHLIBSDIRS', True).split()
shlibs_dir = d.getVar('SHLIBSDIR', True)
shlibswork_dir = d.getVar('SHLIBSWORKDIR', True)
pc_re = re.compile('(.*)\.pc$')
@@ -1603,7 +1594,7 @@ python package_do_pkgconfig () {
f.write('%s\n' % p)
f.close()
for dir in shlibs_dirs:
for dir in [shlibs_dir]:
if not os.path.exists(dir):
continue
for file in os.listdir(dir):
@@ -1862,9 +1853,10 @@ SSTATETASKS += "do_package"
do_package[sstate-name] = "package"
do_package[cleandirs] = "${PKGDESTWORK}"
do_package[sstate-plaindirs] = "${PKGD} ${PKGDEST}"
do_package[sstate-inputdirs] = "${PKGDESTWORK}"
do_package[sstate-outputdirs] = "${PKGDATA_DIR}"
do_package[sstate-inputdirs] = "${PKGDESTWORK} ${SHLIBSWORKDIR}"
do_package[sstate-outputdirs] = "${PKGDATA_DIR} ${SHLIBSDIR}"
do_package[sstate-lockfile-shared] = "${PACKAGELOCK}"
do_package[stamp-extra-info] = "${MACHINE}"
do_package_setscene[dirs] = "${STAGING_DIR}"
python do_package_setscene () {

View File

@@ -13,7 +13,7 @@ PACKAGES = "${PN}"
# By default, packagegroup packages do not depend on a certain architecture.
# Only if dependencies are modified by MACHINE_FEATURES, packages
# need to be set to MACHINE_ARCH after inheriting packagegroup.bbclass
inherit allarch
PACKAGE_ARCH = "all"
# This automatically adds -dbg and -dev flavours of all PACKAGES
# to the list. Their dependencies (RRECOMMENDS) are handled as usual

View File

@@ -1,2 +1,7 @@
DEPENDS_prepend = "pkgconfig-native "
PKGCONFIGRDEP = "pkgconfig"
PKGCONFIGRDEP_virtclass-native = ""
PKGCONFIGRDEP_virtclass-nativesdk = "nativesdk-pkgconfig"
RDEPENDS_${PN}-dev += "${PKGCONFIGRDEP}"

View File

@@ -7,7 +7,7 @@ SDK_DEPLOY = "${TMPDIR}/deploy/sdk"
SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${MULTIMACH_TARGET_SYS}"
TOOLCHAIN_HOST_TASK ?= "nativesdk-packagegroup-sdk-host packagegroup-cross-canadian-${@' packagegroup-cross-canadian-'.join(all_multilib_tune_values(d, 'TRANSLATED_TARGET_ARCH').split())}"
TOOLCHAIN_HOST_TASK ?= "nativesdk-packagegroup-sdk-host packagegroup-cross-canadian-${TRANSLATED_TARGET_ARCH}"
TOOLCHAIN_HOST_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_TARGET_TASK ?= "packagegroup-core-standalone-sdk-target packagegroup-core-standalone-sdk-target-dbg"
TOOLCHAIN_TARGET_TASK_ATTEMPTONLY ?= ""
@@ -24,8 +24,6 @@ PID = "${@os.getpid()}"
EXCLUDE_FROM_WORLD = "1"
SDK_PACKAGING_FUNC ?= "create_shar"
python () {
# If we don't do this we try and run the mapping hooks while parsing which is slow
# bitbake should really provide something to let us know this...
@@ -58,7 +56,7 @@ fakeroot python do_populate_sdk() {
bb.build.exec_func("tar_sdk", d)
bb.build.exec_func(d.getVar("SDK_PACKAGING_FUNC", True), d)
bb.build.exec_func("create_shar", d)
}
fakeroot populate_sdk_image() {
@@ -118,16 +116,7 @@ fakeroot create_shar() {
cat << "EOF" > ${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.sh
#!/bin/bash
INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
SDK_ARCH=$(echo ${SDK_ARCH} | sed -e "s/i[5-6]86/ix86/")
if [ "$INST_ARCH" != "$SDK_ARCH" ]; then
echo "Error: Installation machine not supported!"
exit -1
fi
DEFAULT_INSTALL_DIR="${SDKPATH}"
COMPONENTS_LEN=$(echo ".${SDKPATH}" | sed "s/\// /g" | wc -w)
printf "Enter target directory for SDK (default: $DEFAULT_INSTALL_DIR): "
read target_sdk_dir
@@ -164,14 +153,13 @@ fi
payload_offset=$(($(grep -na -m1 "^MARKER:$" $0|cut -d':' -f1) + 1))
printf "Extracting SDK..."
tail -n +$payload_offset $0| tar xj --strip-components=$COMPONENTS_LEN -C $target_sdk_dir
tail -n +$payload_offset $0| tar xj --strip-components=4 -C $target_sdk_dir
echo "done"
printf "Setting it up..."
# fix environment paths
for env_setup_script in `ls $target_sdk_dir/environment-setup-*`; do
sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g" -i $env_setup_script
done
env_setup_script=$(find $target_sdk_dir/ -name "environment-setup-${REAL_MULTIMACH_TARGET_SYS}")
sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g" -i $env_setup_script
# fix dynamic loader paths in all ELF SDK binaries
native_sysroot=$(cat $env_setup_script |grep OECORE_NATIVE_SYSROOT|cut -d'=' -f2|tr -d '"')

View File

@@ -13,7 +13,7 @@ def bad_runtime_vars(cfgdata, d):
__note("%s should be %s_${PN}" % (var, var), d)
__recipe_sanity_reqvars = "DESCRIPTION"
__recipe_sanity_reqdiffvars = ""
__recipe_sanity_reqdiffvars = "LICENSE"
def req_vars(cfgdata, d):
for var in d.getVar("__recipe_sanity_reqvars", True).split():
if not d.getVar(var, 0):
@@ -23,6 +23,11 @@ def req_vars(cfgdata, d):
val = d.getVar(var, 0)
cfgval = cfgdata.get(var)
# Hardcoding is bad, but I'm lazy. We don't care about license being
# unset if the recipe has no sources!
if var == "LICENSE" and d.getVar("SRC_URI", True) == cfgdata.get("SRC_URI"):
continue
if not val:
__note("%s should be set" % var, d)
elif val == cfgval:
@@ -88,7 +93,7 @@ def can_remove_FILESDIR(cfgdata, d):
expanded == d.expand(expected))
def can_remove_others(p, cfgdata, d):
for k in ["S", "PV", "PN", "DESCRIPTION", "DEPENDS",
for k in ["S", "PV", "PN", "DESCRIPTION", "LICENSE", "DEPENDS",
"SECTION", "PACKAGES", "EXTRA_OECONF", "EXTRA_OEMAKE"]:
#for k in cfgdata:
unexpanded = d.getVar(k, 0)

View File

@@ -14,9 +14,9 @@ do_rootfs[recrdeptask] += "do_package_write_ipk"
do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock"
IPKG_ARGS = "-f ${IPKGCONF_TARGET} -o ${IMAGE_ROOTFS} --force-overwrite --force_postinstall --prefer-arch-to-version"
IPKG_ARGS = "-f ${IPKGCONF_TARGET} -o ${IMAGE_ROOTFS} --force-overwrite --prefer-arch-to-version"
# The _POST version also works when constructing the matching SDK
IPKG_ARGS_POST = "-f ${IPKGCONF_TARGET} -o $INSTALL_ROOTFS_IPK --force-overwrite --force_postinstall --prefer-arch-to-version"
IPKG_ARGS_POST = "-f ${IPKGCONF_TARGET} -o $INSTALL_ROOTFS_IPK --force-overwrite --prefer-arch-to-version"
OPKG_PREPROCESS_COMMANDS = "package_update_index_ipk; package_generate_ipkg_conf"
@@ -111,11 +111,11 @@ fakeroot rootfs_ipk_do_rootfs () {
fi
# Also delete the status files
remove_packaging_data_files
rm -rf ${IMAGE_ROOTFS}${opkglibdir}
fi
fi
set +x
log_check rootfs
log_check rootfs
}
rootfs_ipk_write_manifest() {
@@ -134,8 +134,8 @@ rootfs_ipk_write_manifest() {
remove_packaging_data_files() {
rm -rf ${IMAGE_ROOTFS}${opkglibdir}
# We need the directory for the package manager lock
mkdir ${IMAGE_ROOTFS}${opkglibdir}
# We need the directory for the package manager lock
mkdir ${IMAGE_ROOTFS}${opkglibdir}
}
list_installed_packages() {

View File

@@ -81,9 +81,7 @@ fakeroot rootfs_rpm_do_rootfs () {
# Report delayed package scriptlets
for i in ${IMAGE_ROOTFS}/etc/rpm-postinsts/*; do
if [ -f $i ]; then
echo "Delayed package scriptlet: `head -n 3 $i | tail -n 1`"
fi
echo "Delayed package scriptlet: `head -n 3 $i | tail -n 1`"
done
install -d ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d

View File

@@ -605,8 +605,6 @@ def check_sanity(sanity_data):
f.write(current_abi)
elif abi == "7" and current_abi == "8":
messages = messages + "Your configuration is using stamp files including the sstate hash but your build directory was built with stamp files that do not include this.\nTo continue, either rebuild or switch back to the OEBasic signature handler with BB_SIGNATURE_HANDLER = 'OEBasic'.\n"
elif (abi != current_abi and current_abi == "9"):
messages = messages + "The layout of the TMPDIR STAMPS directory has changed. Please clean out TMPDIR and rebuild (sstate will be still be valid and reused)\n"
elif (abi != current_abi):
# Code to convert from one ABI to another could go here if possible.
messages = messages + "Error, TMPDIR has changed its layout version number (%s to %s) and you need to either rebuild, revert or adjust it at your own risk.\n" % (abi, current_abi)
@@ -641,9 +639,6 @@ python check_sanity_eventhandler() {
sanity_data.setVar("SANITY_USE_EVENTS", "1")
check_sanity(sanity_data)
bb.event.fire(bb.event.SanityCheckPassed(), e.data)
elif bb.event.getName(e) == "NetworkTest":
sanity_data = copy_data(e)
bb.event.fire(bb.event.NetworkTestFailed() if check_connectivity(sanity_data) else bb.event.NetworkTestPassed(), e.data)
return
}

View File

@@ -18,7 +18,6 @@
def siteinfo_data(d):
archinfo = {
"allarch": "endian-little bit-32", # bogus, but better than special-casing the checks below for allarch
"aarch64": "endian-little bit-64 arm-common",
"arm": "endian-little bit-32 arm-common",
"armeb": "endian-big bit-32 arm-common",
"avr32": "endian-big bit-32 avr32-common",
@@ -51,7 +50,6 @@ def siteinfo_data(d):
"linux": "common-linux common-glibc",
"linux-gnu": "common-linux common-glibc",
"linux-gnux32": "common-linux common-glibc",
"linux-gnun32": "common-linux common-glibc",
"linux-gnueabi": "common-linux common-glibc",
"linux-gnuspe": "common-linux common-glibc",
"linux-uclibc": "common-linux common-uclibc",
@@ -62,15 +60,10 @@ def siteinfo_data(d):
"mingw32": "common-mingw",
}
targetinfo = {
"aarch64-linux-gnu": "aarch64-linux",
"arm-linux-gnueabi": "arm-linux",
"arm-linux-uclibceabi": "arm-linux-uclibc",
"armeb-linux-gnueabi": "armeb-linux",
"armeb-linux-uclibceabi": "armeb-linux-uclibc",
"mips-linux-gnun32": "mips-linux",
"mipsel-linux-gnun32": "mipsel-linux",
"mips64-linux-gnun32": "mips-linux",
"mips64el-linux-gnun32": "mipsel-linux",
"powerpc-linux": "powerpc32-linux",
"powerpc-linux-uclibc": "powerpc-linux powerpc32-linux",
"powerpc-linux-gnuspe": "powerpc-linux powerpc32-linux",

View File

@@ -1,4 +1,4 @@
SSTATE_VERSION = "3"
SSTATE_VERSION = "2"
SSTATE_MANIFESTS ?= "${TMPDIR}/sstate-control"
SSTATE_MANFILEBASE = "${SSTATE_MANIFESTS}/manifest-${SSTATE_MANMACH}-"
@@ -17,10 +17,15 @@ SSTATE_EXTRAPATH = ""
SSTATE_EXTRAPATHWILDCARD = ""
SSTATE_PATHSPEC = "${SSTATE_DIR}/${SSTATE_EXTRAPATHWILDCARD}*/${SSTATE_PKGSPEC}"
SSTATE_DUPWHITELIST = "${DEPLOY_DIR_IMAGE}/ ${DEPLOY_DIR}/licenses/"
# In theory we should be using:
# SSTATE_DUPWHITELIST = "${DEPLOY_DIR_IMAGE}/ ${DEPLOY_DIR}/licenses/ ${DEPLOY_DIR_IPK}/all/ ${DEPLOY_DIR_RPM}/all ${DEPLOY_DIR_DEB}/all/ ${TMPDIR}/pkgdata/all${TARGET_VENDOR}-${TARGET_OS}"
# However until do_package is not machine specific, we'll have to make do with all of deploy/pkgdata.
SSTATE_DUPWHITELIST = "${DEPLOY_DIR}/ ${TMPDIR}/pkgdata/"
# Also need to make cross recipes append to ${PN} and install once for any given PACAGE_ARCH so
# can avoid multiple installs (e.g. routerstationpro+qemumips both using mips32)
SSTATE_DUPWHITELIST += "${STAGING_LIBDIR_NATIVE}/${MULTIMACH_TARGET_SYS} ${STAGING_DIR_NATIVE}/usr/libexec/${MULTIMACH_TARGET_SYS} ${STAGING_BINDIR_NATIVE}/${MULTIMACH_TARGET_SYS} ${STAGING_DIR_NATIVE}${includedir_native}/gcc-build-internal-${MULTIMACH_TARGET_SYS}"
# Also avoid python issues until we fix the python recipe
SSTATE_DUPWHITELIST += "${STAGING_LIBDIR}/python2.7/config/Makefile ${STAGING_LIBDIR}/libpython2.7 ${STAGING_INCDIR}/python2.7/pyconfig.h"
# Avoid docbook/sgml catalog warnings for now
SSTATE_DUPWHITELIST += "${STAGING_ETCDIR_NATIVE}/sgml ${STAGING_DATADIR_NATIVE}/sgml"
@@ -46,10 +51,11 @@ python () {
d.setVar('SSTATE_PKGARCH', d.expand("${SDK_ARCH}"))
elif bb.data.inherits_class('cross-canadian', d):
d.setVar('SSTATE_PKGARCH', d.expand("${SDK_ARCH}_${PACKAGE_ARCH}"))
elif bb.data.inherits_class('allarch', d) and d.getVar("PACKAGE_ARCH", True) == "all":
elif bb.data.inherits_class('allarch', d):
d.setVar('SSTATE_PKGARCH', "allarch")
d.setVar('SSTATE_MANMACH', d.expand("allarch_${MACHINE}"))
else:
d.setVar('SSTATE_MANMACH', d.expand("${PACKAGE_ARCH}"))
d.setVar('SSTATE_MANMACH', d.expand("${MACHINE}"))
if bb.data.inherits_class('native', d) or bb.data.inherits_class('crosssdk', d) or bb.data.inherits_class('cross', d):
d.setVar('SSTATE_EXTRAPATH', "${NATIVELSBSTRING}/")
@@ -108,27 +114,17 @@ def sstate_state_fromvars(d, task = None):
return ss
def sstate_add(ss, source, dest, d):
if not source.endswith("/"):
source = source + "/"
if not dest.endswith("/"):
dest = dest + "/"
source = os.path.normpath(source)
dest = os.path.normpath(dest)
srcbase = os.path.basename(source)
ss['dirs'].append([srcbase, source, dest])
return ss
def sstate_install(ss, d):
import oe.path
import subprocess
sharedfiles = []
shareddirs = []
bb.mkdirhier(d.expand("${SSTATE_MANIFESTS}"))
manifest = d.expand("${SSTATE_MANFILEPREFIX}.%s" % ss['name'])
extrainf = d.getVarFlag("do_" + ss['task'], 'stamp-extra-info', True)
if extrainf:
manifest = manifest + "." + extrainf
if os.access(manifest, os.R_OK):
bb.fatal("Package already staged (%s)?!" % manifest)
@@ -168,13 +164,8 @@ def sstate_install(ss, d):
break
if realmatch:
match.append(f)
sstate_search_cmd = "grep -rl %s %s --exclude=master.list | sed -e 's:^.*/::' -e 's:\.populate-sysroot::'" % (f, d.expand("${SSTATE_MANIFESTS}"))
cmd_array = sstate_search_cmd.split(' ')
search_output = subprocess.Popen(cmd_array, stdout=subprocess.PIPE).communicate()[0]
if search_output != None:
match.append("Matched in %s" % search_output.rstrip())
if match:
bb.warn("The recipe %s is trying to install files into a shared area when those files already exist. Those files and their manifest location are:\n %s\nPlease verify which package should provide the above files." % (d.getVar('PN', True), "\n ".join(match)))
bb.warn("The recipe is trying to install files into a shared area when those files already exist. Those files are:\n %s" % "\n ".join(match))
# Write out the manifest
f = open(manifest, "w")
@@ -316,9 +307,6 @@ def sstate_clean(ss, d):
import oe.path
manifest = d.expand("${SSTATE_MANFILEPREFIX}.%s" % ss['name'])
extrainf = d.getVarFlag("do_" + ss['task'], 'stamp-extra-info', True)
if extrainf:
manifest = manifest + "." + extrainf
if os.path.exists(manifest):
locks = []
@@ -333,6 +321,7 @@ def sstate_clean(ss, d):
bb.utils.unlockfile(lock)
stfile = d.getVar("STAMP", True) + ".do_" + ss['task']
extrainf = d.getVarFlag("do_" + ss['task'], 'stamp-extra-info', True)
oe.path.remove(stfile)
oe.path.remove(stfile + "_setscene")
if extrainf:
@@ -555,7 +544,7 @@ sstate_create_package () {
sstate_unpack_package () {
mkdir -p ${SSTATE_INSTDIR}
cd ${SSTATE_INSTDIR}
tar -xmvzf ${SSTATE_PKG}
tar -xvzf ${SSTATE_PKG}
}
# Need to inject information about classes not in the global configuration scope
@@ -620,66 +609,3 @@ def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d):
return ret
BB_SETSCENE_DEPVALID = "setscene_depvalid"
def setscene_depvalid(task, taskdependees, notneeded, d):
# taskdependees is a dict of tasks which depend on task, each being a 3 item list of [PN, TASKNAME, FILENAME]
# task is included in taskdependees too
bb.debug(2, "Considering setscene task: %s" % (str(taskdependees[task])))
def isNative(x):
return x.endswith("-native")
def isNativeCross(x):
return x.endswith("-native") or x.endswith("-cross") or x.endswith("-cross-initial")
def isSafeDep(x):
if x in ["quilt-native", "autoconf-native", "automake-native", "gnu-config-native", "libtool-native", "pkgconfig-native", "gcc-cross", "binutils-cross", "gcc-cross-initial"]:
return True
return False
# We can skip these "safe" dependencies since the aren't runtime dependencies, just build time
if isSafeDep(taskdependees[task][0]) and taskdependees[task][1] == "do_populate_sysroot":
return True
# We only need to trigger populate_lic through direct dependencies
if taskdependees[task][1] == "do_populate_lic":
return True
for dep in taskdependees:
bb.debug(2, " considering dependency: %s" % (str(taskdependees[dep])))
if task == dep:
continue
if dep in notneeded:
continue
# do_package_write_* and do_package doesn't need do_package
if taskdependees[task][1] == "do_package" and taskdependees[dep][1] in ['do_package', 'do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']:
continue
# do_package_write_* and do_package doesn't need do_populate_sysroot
if taskdependees[task][1] == "do_populate_sysroot" and taskdependees[dep][1] in ['do_package', 'do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']:
continue
# Native/Cross packages don't exist and are noexec anyway
if isNativeCross(taskdependees[dep][0]) and taskdependees[dep][1] in ['do_package_write_deb', 'do_package_write_ipk', 'do_package_write_rpm']:
continue
# Consider sysroot depending on sysroot tasks
if taskdependees[task][1] == 'do_populate_sysroot' and taskdependees[dep][1] == 'do_populate_sysroot':
# Nothing need depend on libc-initial/gcc-cross-initial
if taskdependees[task][0].endswith("-initial"):
continue
# Native/Cross populate_sysroot need their dependencies
if isNativeCross(taskdependees[task][0]) and isNativeCross(taskdependees[dep][0]):
return False
# Target populate_sysroot depended on by cross tools need to be installed
if isNativeCross(taskdependees[dep][0]):
return False
# Native/cross tools depended upon by target sysroot are not needed
if isNativeCross(taskdependees[task][0]):
continue
# Target populate_sysroot need their dependencies
return False
# Safe fallthrough default
bb.debug(2, " Default setscene dependency fall through due to dependency: %s" % (str(taskdependees[dep])))
return False
return True

View File

@@ -4,7 +4,7 @@ OE_TERMINAL[choices] = 'auto none \
${@" ".join(o.name \
for o in oe.terminal.prioritized())}'
OE_TERMINAL_EXPORTS += 'XAUTHORITY SHELL DBUS_SESSION_BUS_ADDRESS DISPLAY EXTRA_OEMAKE SCREENDIR'
OE_TERMINAL_EXPORTS = 'XAUTHORITY SHELL DBUS_SESSION_BUS_ADDRESS DISPLAY EXTRA_OEMAKE SCREENDIR'
OE_TERMINAL_EXPORTS[type] = 'list'
XAUTHORITY ?= "${HOME}/.Xauthority"
@@ -15,23 +15,17 @@ def oe_terminal(command, title, d):
import oe.data
import oe.terminal
env = dict()
for v in os.environ:
env[v] = os.environ[v]
for export in oe.data.typed_value('OE_TERMINAL_EXPORTS', d):
value = d.getVar(export, True)
if value is not None:
os.environ[export] = str(value)
env[export] = str(value)
terminal = oe.data.typed_value('OE_TERMINAL', d).lower()
if terminal == 'none':
bb.fatal('Devshell usage disabled with OE_TERMINAL')
elif terminal != 'auto':
try:
oe.terminal.spawn(terminal, command, title, env, d)
oe.terminal.spawn(terminal, command, title, None, d)
return
except oe.terminal.UnsupportedTerminal:
bb.warn('Unsupported terminal "%s", defaulting to "auto"' %
@@ -40,7 +34,7 @@ def oe_terminal(command, title, d):
bb.fatal('Unable to spawn terminal %s: %s' % (terminal, exc))
try:
oe.terminal.spawn_preferred(command, title, env, d)
oe.terminal.spawn_preferred(command, title, None, d)
except oe.terminal.NoSupportedTerminals:
bb.fatal('No valid terminal found, unable to open devshell')
except oe.terminal.ExecutionError as exc:

View File

@@ -3,8 +3,8 @@ UPDATERCPN ?= "${PN}"
DEPENDS_append = " update-rc.d-native"
UPDATERCD = "update-rc.d"
UPDATERCD_virtclass-cross = ""
UPDATERCD_class-native = ""
UPDATERCD_class-nativesdk = ""
UPDATERCD_virtclass-native = ""
UPDATERCD_virtclass-nativesdk = ""
RDEPENDS_${UPDATERCPN}_append = " ${UPDATERCD}"

View File

@@ -4,8 +4,8 @@
DEPENDS_append = "${USERADDDEPENDS}"
USERADDDEPENDS = " base-passwd shadow-native shadow-sysroot shadow"
USERADDDEPENDS_virtclass-cross = ""
USERADDDEPENDS_class-native = ""
USERADDDEPENDS_class-nativesdk = ""
USERADDDEPENDS_virtclass-native = ""
USERADDDEPENDS_virtclass-nativesdk = ""
# This preinstall function can be run in four different contexts:
#
@@ -138,18 +138,18 @@ useradd_sysroot_sstate () {
do_install[prefuncs] += "${SYSROOTFUNC}"
SYSROOTFUNC = "useradd_sysroot"
SYSROOTFUNC_virtclass-cross = ""
SYSROOTFUNC_class-native = ""
SYSROOTFUNC_class-nativesdk = ""
SYSROOTFUNC_virtclass-native = ""
SYSROOTFUNC_virtclass-nativesdk = ""
SSTATEPREINSTFUNCS += "${SYSROOTPOSTFUNC}"
SYSROOTPOSTFUNC = "useradd_sysroot_sstate"
SYSROOTPOSTFUNC_virtclass-cross = ""
SYSROOTPOSTFUNC_class-native = ""
SYSROOTPOSTFUNC_class-nativesdk = ""
SYSROOTPOSTFUNC_virtclass-native = ""
SYSROOTPOSTFUNC_virtclass-nativesdk = ""
USERADDSETSCENEDEPS = "${MLPREFIX}base-passwd:do_populate_sysroot_setscene shadow-native:do_populate_sysroot_setscene ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene"
USERADDSETSCENEDEPS_virtclass-cross = ""
USERADDSETSCENEDEPS_class-native = ""
USERADDSETSCENEDEPS_class-nativesdk = ""
USERADDSETSCENEDEPS_virtclass-native = ""
USERADDSETSCENEDEPS_virtclass-nativesdk = ""
do_package_setscene[depends] = "${USERADDSETSCENEDEPS}"
# Recipe parse-time sanity checks

View File

@@ -246,12 +246,12 @@ oe_machinstall() {
}
create_cmdline_wrapper () {
# Create a wrapper script where commandline options are needed
# Create a wrapper script
#
# These are useful to work around relocation issues, by passing extra options
# to a program
# These are useful to work around relocation issues, by setting environment
# variables which point to paths in the filesystem.
#
# Usage: create_cmdline_wrapper FILENAME <extra-options>
# Usage: create_wrapper FILENAME [[VAR=VALUE]..]
cmd=$1
shift
@@ -269,7 +269,7 @@ END
}
create_wrapper () {
# Create a wrapper script where extra environment variables are needed
# Create a wrapper script
#
# These are useful to work around relocation issues, by setting environment
# variables which point to paths in the filesystem.
@@ -308,10 +308,10 @@ def base_set_filespath(path, d):
if extrapaths != "":
path = extrapaths.split(":") + path
# The ":" ensures we have an 'empty' override
overrides = ((d.getVar("OVERRIDES", True) or "") + ":").split(":")
overrides = (d.getVar("OVERRIDES", True) or "") + ":"
for p in path:
if p != "":
for o in overrides:
for o in overrides.split(":"):
filespath.append(os.path.join(p, o))
return ":".join(filespath)

View File

@@ -4,4 +4,4 @@
# that breaks the format and have been previously discussed on the mailing list
# with general agreement from the core team.
#
OELAYOUT_ABI = "9"
OELAYOUT_ABI = "8"

View File

@@ -31,15 +31,15 @@ export localstatedir = "${base_prefix}/var"
export infodir = "${datadir}/info"
export mandir = "${datadir}/man"
export docdir = "${datadir}/doc"
export systemd_unitdir = "/lib/systemd"
# Architecture dependent paths
export bindir = "${exec_prefix}/bin"
export sbindir = "${exec_prefix}/sbin"
export libexecdir = "${exec_prefix}/libexec"
export libdir = "${exec_prefix}/${baselib}"
export libexecdir = "${libdir}/${BPN}"
export includedir = "${exec_prefix}/include"
export oldincludedir = "${exec_prefix}/include"
export systemd_unitdir = "${base_libdir}/systemd"
localedir = "${libdir}/locale"
# Linkage between native/cross/nativesdk layouts
@@ -51,7 +51,6 @@ bindir_native = "${prefix_native}/bin"
sbindir_native = "${prefix_native}/sbin"
includedir_native = "${prefix_native}/include"
libdir_native = "${prefix_native}/lib"
libexecdir_native = "${libdir_native}/${BPN}"
base_libdir_native = "/lib"
datadir_native = "${prefix_native}/share"
bindir_cross = "/bin"
@@ -99,7 +98,6 @@ HOST_EXEEXT = ""
TUNE_ARCH ??= "INVALID"
TUNE_CCARGS ??= ""
TUNE_CCARGS[vardepvalue] = "${TUNE_CCARGS}"
TUNE_LDARGS ??= ""
TUNE_ASARGS ??= ""
TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}"
@@ -269,14 +267,13 @@ SOLIBSDEV_darwin9 = ".dylib"
PACKAGE_BEFORE_PN ?= ""
PACKAGES = "${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}"
PACKAGES_DYNAMIC = "^${PN}-locale-.*"
PACKAGES_DYNAMIC = "${PN}-locale-*"
FILES = ""
FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
${sysconfdir} ${sharedstatedir} ${localstatedir} \
${base_bindir}/* ${base_sbindir}/* \
${base_libdir}/*${SOLIBS} \
${base_prefix}/lib/udev/rules.d ${prefix}/lib/udev/rules.d \
${datadir}/${BPN} ${libdir}/${BPN}/* \
${datadir}/pixmaps ${datadir}/applications \
${datadir}/idl ${datadir}/omf ${datadir}/sounds \
@@ -320,6 +317,7 @@ FILES_${PN}-locale = "${datadir}/locale"
FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE'))}"
# FILESPATH is set in base.bbclass
#FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/${BP}:${FILE_DIRNAME}/${BPN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}"
FILESDIR = "${@bb.which(d.getVar('FILESPATH', True), '.')}"
##################################################################
# General work and output directories for the build system.
@@ -337,9 +335,9 @@ GITDIR = "${CO_DIR}/git2"
BZRDIR = "${CO_DIR}/bzr"
HGDIR = "${CO_DIR}/hg"
STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"
STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}/*-*"
WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"
STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-${EXTENDPE}${PV}-${PR}"
STAMPCLEAN = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}-[0-9]*-*"
WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
T = "${WORKDIR}/temp"
D = "${WORKDIR}/image"
S = "${WORKDIR}/${BP}"
@@ -352,7 +350,6 @@ STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}"
STAGING_BINDIR_CROSS = "${STAGING_BINDIR}/crossscripts"
STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}"
STAGING_LIBEXECDIR_NATIVE = "${STAGING_DIR_NATIVE}${libexecdir_native}"
STAGING_BASE_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${base_libdir_native}"
STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}"
STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}"
@@ -361,7 +358,6 @@ STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}"
STAGING_DIR_HOST = "${STAGING_DIR}/${MACHINE}"
STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}"
STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}"
STAGING_LIBEXECDIR = "${STAGING_DIR_HOST}${libexecdir}"
STAGING_BASELIBDIR = "${STAGING_DIR_HOST}${base_libdir}"
STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}"
STAGING_DATADIR = "${STAGING_DIR_HOST}${datadir}"
@@ -631,7 +627,7 @@ export PATCH_GET="0"
# Pre-build configuration output
BUILDCFG_HEADER = "Build Configuration:"
BUILDCFG_VARS = "BB_VERSION BUILD_SYS NATIVELSBSTRING TARGET_SYS MACHINE DISTRO DISTRO_VERSION TUNE_FEATURES TARGET_FPU"
BUILDCFG_VARS = "BB_VERSION TARGET_ARCH TARGET_OS MACHINE DISTRO DISTRO_VERSION TUNE_FEATURES TARGET_FPU"
BUILDCFG_VARS[type] = "list"
BUILDCFG_NEEDEDVARS = "TARGET_ARCH TARGET_OS"
BUILDCFG_NEEDEDVARS[type] = "list"
@@ -731,7 +727,7 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= ""
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}"
DISTRO_FEATURES_BACKFILL = "pulseaudio update-modules"
DISTRO_FEATURES_BACKFILL = "pulseaudio"
DISTRO_FEATURES_append = "${@oe.utils.features_backfill("DISTRO_FEATURES",d)}"
MACHINE_FEATURES_BACKFILL = "rtc"
@@ -771,20 +767,12 @@ BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log"
# Setup our default hash policy
BB_SIGNATURE_HANDLER ?= "OEBasicHash"
BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \
SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \
USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \
PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \
CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE"
BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SESSION_MANAGER \
DBUS_SESSION_BUS_ADDRESS SSH_AGENT_PID XDG_SESSION_COOKIE SSH_AUTH_SOCK \
XAUTHORITY PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \
PARALLEL_MAKE BB_NUMBER_THREADS"
BB_SIGNATURE_EXCLUDE_FLAGS ?= "doc defaultval _append _prepend deps depends \
lockfiles type vardepsexclude vardeps vardepvalue file-checksums python \
func task export unexport noexec nostamp dirs cleandirs \
sstate-lockfile-shared prefuncs postfuncs export_func deptask rdeptask \
recrdeptask nodeprrecs stamp-base stamp-extra-info"
BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST PRSERV_PORT PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE"
BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SESSION_MANAGER DBUS_SESSION_BUS_ADDRESS SSH_AGENT_PID XDG_SESSION_COOKIE SSH_AUTH_SOCK XAUTHORITY PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS PARALLEL_MAKE BB_NUMBER_THREADS"
BB_SIGNATURE_EXCLUDE_FLAGS ?= "doc defaultval _append _prepend deps depends lockfiles type vardepsexclude \
vardeps vardepvalue file-checksums python func task export unexport noexec \
nostamp dirs cleandirs sstate-lockfile-shared prefuncs postfuncs export_func \
deptask rdeptask recrdeptask nodeprrecs stamp-base stamp-extra-info"
MLPREFIX ??= ""
MULTILIB_VARIANTS ??= ""

View File

@@ -18,7 +18,7 @@ DISTRO_FEATURES_LIBC_DEFAULT ?= "ipv4 ipv6 libc-backtrace libc-big-macros libc-b
libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc \
libc-posix-wchar-io"
DISTRO_FEATURES_LIBC ?= "${DISTRO_FEATURES_LIBC_DEFAULT}"
DISTRO_FEATURES_LIBC_class-nativesdk = "${DISTRO_FEATURES_LIBC_DEFAULT}"
DISTRO_FEATURES_LIBC_virtclass-nativesdk = "${DISTRO_FEATURES_LIBC_DEFAULT}"
DISTRO_FEATURES ?= "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g x11 ${DISTRO_FEATURES_LIBC}"
IMAGE_FEATURES ?= ""

View File

@@ -36,4 +36,3 @@ PREFERRED_PROVIDER_opkg-native ?= "opkg-native"
PREFERRED_PROVIDER_nativesdk-opkg ?= "nativesdk-opkg"
PREFERRED_PROVIDER_console-tools ?= "kbd"
PREFERRED_PROVIDER_gzip-native ?= "pigz-native"
PREFERRED_PROVIDER_make ?= "make"

View File

@@ -1,7 +1,7 @@
TUNEVALID[bigendian] = "Enable big-endian mode."
ARMPKGARCH = "${ARMPKGARCH_tune-${DEFAULTTUNE}}"
ARMPKGARCH ??= "arm"
ARMPKGSFX_ENDIAN = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", "b", "", d)}"
ARMPKGSFX_FPU ??= ""
ARMPKGSFX_DSP ??= ""

View File

@@ -1,5 +1,7 @@
DEFAULTTUNE ?= "armv4"
ARMPKGARCH ?= "armv4"
TUNEVALID[armv4] = "Enable instructions for ARMv4"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "armv4", "-march=armv4${ARMPKGSFX_THUMB}", "", d)}"
TARGET_LD_KERNEL_ARCH += "${@bb.utils.contains("TUNE_FEATURES", "armv4", "--fix-v4bx", "", d)}"
@@ -10,8 +12,6 @@ require conf/machine/include/arm/feature-arm-thumb.inc
# Little Endian
AVAILTUNES += "armv4 armv4t"
ARMPKGARCH_tune-armv4 ?= "armv4"
ARMPKGARCH_tune-armv4t ?= "armv4"
TUNE_FEATURES_tune-armv4 ?= "armv4"
TUNE_FEATURES_tune-armv4t ?= "armv4 thumb"
PACKAGE_EXTRA_ARCHS_tune-armv4 = "arm armv4"
@@ -19,8 +19,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
# Big Endian
AVAILTUNES += "armv4b armv4tb"
ARMPKGARCH_tune-armv4b ?= "armv4"
ARMPKGARCH_tune-armv4tb ?= "armv4"
TUNE_FEATURES_tune-armv4b ?= "${TUNE_FEATURES_tune-armv4} bigendian"
TUNE_FEATURES_tune-armv4tb ?= "${TUNE_FEATURES_tune-armv4t} bigendian"
PACKAGE_EXTRA_ARCHS_tune-armv4b = "armeb armv4b"

View File

@@ -5,8 +5,6 @@ require conf/machine/include/arm/arch-armv5.inc
# Little Endian
AVAILTUNES += "armv5e armv5te"
ARMPKGARCH_tune-armv5e ?= "armv5"
ARMPKGARCH_tune-armv5te ?= "armv5"
TUNE_FEATURES_tune-armv5e ?= "armv5 dsp"
TUNE_FEATURES_tune-armv5te ?= "armv5 dsp thumb"
PACKAGE_EXTRA_ARCHS_tune-armv5e = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5e"
@@ -14,10 +12,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5te = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5e ar
# Little Endian + VFP/DSP
AVAILTUNES += "armv5e-vfp armv5te-vfp armv5ehf-vfp armv5tehf-vfp"
ARMPKGARCH_tune-armv5e-vfp ?= "armv5"
ARMPKGARCH_tune-armv5te-vfp ?= "armv5"
ARMPKGARCH_tune-armv5ehf-vfp ?= "armv5"
ARMPKGARCH_tune-armv5tehf-vfp ?= "armv5"
TUNE_FEATURES_tune-armv5e-vfp ?= "armv5 vfp dsp"
TUNE_FEATURES_tune-armv5te-vfp ?= "armv5 vfp dsp thumb"
TUNE_FEATURES_tune-armv5ehf-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
@@ -29,8 +23,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vf
# Big Endian
AVAILTUNES += "armv5eb armv5teb"
ARMPKGARCH_tune-armv5eb ?= "armv5"
ARMPKGARCH_tune-armv5teb ?= "armv5"
TUNE_FEATURES_tune-armv5eb ?= "${TUNE_FEATURES_tune-armv5e} bigendian"
TUNE_FEATURES_tune-armv5teb ?= "${TUNE_FEATURES_tune-armv5te} bigendian"
PACKAGE_EXTRA_ARCHS_tune-armv5eb = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5eb"
@@ -38,10 +30,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5teb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5eb
# Big Endian + VFP/DSP
AVAILTUNES += "armv5eb-vfp armv5teb-vfp armv5ehfb-vfp armv5tehfb-vfp"
ARMPKGARCH_tune-armv5eb-vfp ?= "armv5"
ARMPKGARCH_tune-armv5teb-vfp ?= "armv5"
ARMPKGARCH_tune-armv5ehfb-vfp ?= "armv5"
ARMPKGARCH_tune-armv5tehfb-vfp ?= "armv5"
TUNE_FEATURES_tune-armv5eb-vfp ?= "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
TUNE_FEATURES_tune-armv5teb-vfp ?= "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
TUNE_FEATURES_tune-armv5ehfb-vfp ?= "${TUNE_FEATURES_tune-armv5eb-vfp} callconvention-hard"

View File

@@ -1,5 +1,7 @@
DEFAULTTUNE ?= "armv5"
ARMPKGARCH ?= "armv5"
TUNEVALID[armv5] = "Enable instructions for ARMv5"
TUNECONFLICTS[armv5] = "armv4"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "armv5", "-march=armv5${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}", "", d)}"
@@ -12,8 +14,6 @@ require conf/machine/include/arm/feature-arm-vfp.inc
# Little Endian
AVAILTUNES += "armv5 armv5t"
ARMPKGARCH_tune-armv5 ?= "armv5"
ARMPKGARCH_tune-armv5t ?= "armv5"
TUNE_FEATURES_tune-armv5 ?= "armv5"
TUNE_FEATURES_tune-armv5t ?= "armv5 thumb"
PACKAGE_EXTRA_ARCHS_tune-armv5 = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5"
@@ -21,10 +21,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5 armv
# Little Endian + VFP/DSP
AVAILTUNES += "armv5-vfp armv5t-vfp armv5hf-vfp armv5thf-vfp"
ARMPKGARCH_tune-armv5-vfp ?= "armv5"
ARMPKGARCH_tune-armv5t-vfp ?= "armv5"
ARMPKGARCH_tune-armv5hf-vfp ?= "armv5"
ARMPKGARCH_tune-armv5thf-vfp ?= "armv5"
TUNE_FEATURES_tune-armv5-vfp ?= "armv5 vfp"
TUNE_FEATURES_tune-armv5t-vfp ?= "armv5 vfp"
TUNE_FEATURES_tune-armv5hf-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
@@ -37,8 +33,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vf
# Big Endian
AVAILTUNES += "armv5b armv5tb"
ARMPKGARCH_tune-armv5b ?= "armv5"
ARMPKGARCH_tune-armv5tb ?= "armv5"
TUNE_FEATURES_tune-armv5b ?= "${TUNE_FEATURES_tune-armv5} bigendian"
TUNE_FEATURES_tune-armv5tb ?= "${TUNE_FEATURES_tune-armv5t} bigendian"
PACKAGE_EXTRA_ARCHS_tune-armv5b = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5b"
@@ -46,10 +40,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv5tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5b ar
# Big Endian + VFP/DSP
AVAILTUNES += "armv5b-vfp armv5tb-vfp armv5hfb-vfp armv5thfb-vfp"
ARMPKGARCH_tune-armv5b-vfp ?= "armv5"
ARMPKGARCH_tune-armv5tb-vfp ?= "armv5"
ARMPKGARCH_tune-armv5hfb-vfp ?= "armv5"
ARMPKGARCH_tune-armv5thfb-vfp ?= "armv5"
TUNE_FEATURES_tune-armv5b-vfp ?= "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
TUNE_FEATURES_tune-armv5tb-vfp ?= "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
TUNE_FEATURES_tune-armv5hfb-vfp ?= "${TUNE_FEATURES_tune-armv5b-vfp} callconvention-hard"

View File

@@ -1,5 +1,7 @@
DEFAULTTUNE ?= "armv6"
ARMPKGARCH ?= "armv6"
TUNEVALID[armv6] = "Enable instructions for ARMv6"
TUNECONFLICTS[armv6] = "armv4 armv5"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "armv6", "-march=armv6", "", d)}"
@@ -9,10 +11,6 @@ require conf/machine/include/arm/arch-armv5-dsp.inc
# Little Endian
AVAILTUNES += "armv6 armv6t armv6hf armv6thf"
ARMPKGARCH_tune-armv6 ?= "armv6"
ARMPKGARCH_tune-armv6t ?= "armv6"
ARMPKGARCH_tune-armv6hf ?= "armv6"
ARMPKGARCH_tune-armv6thf ?= "armv6"
TUNE_FEATURES_tune-armv6 ?= "armv6 vfp"
TUNE_FEATURES_tune-armv6t ?= "armv6 vfp thumb"
TUNE_FEATURES_tune-armv6hf ?= "${TUNE_FEATURES_tune-armv6} callconvention-hard"
@@ -24,10 +22,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv6thf = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp} a
# Big Endian
AVAILTUNES += "armv6b armv6tb armv6hfb armv6thfb"
ARMPKGARCH_tune-armv6b ?= "armv6"
ARMPKGARCH_tune-armv6tb ?= "armv6"
ARMPKGARCH_tune-armv6hfb ?= "armv6"
ARMPKGARCH_tune-armv6thfb ?= "armv6"
TUNE_FEATURES_tune-armv6b ?= "${TUNE_FEATURES_tune-armv6} bigendian"
TUNE_FEATURES_tune-armv6tb ?= "${TUNE_FEATURES_tune-armv6t} bigendian"
TUNE_FEATURES_tune-armv6hfb ?= "${TUNE_FEATURES_tune-armv6b} callconvention-hard"

View File

@@ -1,5 +1,7 @@
DEFAULTTUNE ?= "armv7a"
ARMPKGARCH ?= "armv7a"
TUNEVALID[armv7a] = "Enable instructions for ARMv7-a"
TUNECONFLICTS[armv7a] = "armv4 armv5 armv6 armv7"
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "armv7a", "-march=armv7-a", "", d)}"
@@ -10,10 +12,6 @@ require conf/machine/include/arm/feature-arm-neon.inc
# Little Endian base configs
AVAILTUNES += "armv7a armv7at armv7a-neon armv7at-neon"
ARMPKGARCH_tune-armv7a ?= "armv7a"
ARMPKGARCH_tune-armv7at ?= "armv7a"
ARMPKGARCH_tune-armv7a-neon?= "armv7a"
ARMPKGARCH_tune-armv7at-neon ?= "armv7a"
TUNE_FEATURES_tune-armv7a ?= "armv7a vfp"
TUNE_FEATURES_tune-armv7at ?= "armv7a vfp thumb"
TUNE_FEATURES_tune-armv7a-neon ?= "armv7a vfp neon"
@@ -25,10 +23,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv7at-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} arm
# VFP Tunes
AVAILTUNES += "armv7ahf armv7athf armv7ahf-neon armv7athf-neon"
ARMPKGARCH_tune-armv7ahf ?= "armv7a"
ARMPKGARCH_tune-armv7athf ?= "armv7a"
ARMPKGARCH_tune-armv7ahf-neon?= "armv7a"
ARMPKGARCH_tune-armv7athf-neon ?= "armv7a"
TUNE_FEATURES_tune-armv7ahf ?= "${TUNE_FEATURES_tune-armv7a} callconvention-hard"
TUNE_FEATURES_tune-armv7athf ?= "${TUNE_FEATURES_tune-armv7at} callconvention-hard"
TUNE_FEATURES_tune-armv7ahf-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} callconvention-hard"
@@ -40,10 +34,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf}
# Big Endian
AVAILTUNES += "armv7ab armv7atb armv7ab-neon armv7atb-neon"
ARMPKGARCH_tune-armv7ab ?= "armv7a"
ARMPKGARCH_tune-armv7atb ?= "armv7a"
ARMPKGARCH_tune-armv7ab-neon?= "armv7a"
ARMPKGARCH_tune-armv7atb-neon ?= "armv7a"
TUNE_FEATURES_tune-armv7ab ?= "${TUNE_FEATURES_tune-armv7a} bigendian"
TUNE_FEATURES_tune-armv7atb ?= "${TUNE_FEATURES_tune-armv7at} bigendian"
TUNE_FEATURES_tune-armv7ab-neon ?= "${TUNE_FEATURES_tune-armv7a-neon} bigendian"
@@ -55,10 +45,6 @@ PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} ar
# Big Endian + VFP
AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-neon armv7athfb-neon"
ARMPKGARCH_tune-armv7ahfb ?= "armv7a"
ARMPKGARCH_tune-armv7athfb ?= "armv7a"
ARMPKGARCH_tune-armv7ahfb-neon?= "armv7a"
ARMPKGARCH_tune-armv7athfb-neon ?= "armv7a"
TUNE_FEATURES_tune-armv7ahfb ?= "${TUNE_FEATURES_tune-armv7ab} callconvention-hard"
TUNE_FEATURES_tune-armv7athfb ?= "${TUNE_FEATURES_tune-armv7atb} callconvention-hard"
TUNE_FEATURES_tune-armv7ahfb-neon ?= "${TUNE_FEATURES_tune-armv7ab-neon} callconvention-hard"

Some files were not shown because too many files have changed in this diff Show More