Commit Graph

28158 Commits

Author SHA1 Message Date
Tom Zanussi 73ce09065f wic: Add SourcePlugin class
Define the SourcePlugin class, which is the class that should be
subclassed to create a 'source' plugin.

'Source' plugins provide a mechanism to customize various aspects of
the image generation process in wic, mainly the contents of
partitions.

The initial version of wic defined a --source param for partitions,
which was in the first revision hard-coded to two possible values:
rootfs and bootimg.

This patch essentially removes the hard-coded --bootimg param and
replaces it with a plugin system that maps the value specified as
--source to a particular 'source' plugin instead.

A 'source' plugin is created as a subclass of SourcePlugin and the
plugin file containing it is added to scriptsl/lib/mic/plugins/source/
to make the plugin implementation available to the wic implementation.

When the wic implementation needs to invoke a partition-specific
implementation, it looks for the plugin that has the same name as the
--source param given to that partition.  For example, if the partition
is set up like this:

  part /boot --source bootimg-pcbios   ...

then the methods defined as class members of the plugin having the
matching .name class member would be used.

To be more concrete, here's the plugin definition that would match a
'--source bootimg-pcbios' usage, along with an example method that
would be called by the wic implementation when it needed to invoke an
implementation-specific partition-preparation function:

  class BootimgPcbiosPlugin(SourcePlugin):
      name = 'bootimg-pcbios'

  @classmethod
      def do_prepare_partition(self, part, ...)

If the subclass itself doesn't implement a function, a 'default'
version in a superclass will be located and used, which is why all
plugins must be derived from SourcePlugin.

This scheme is extensible - adding more hooks is a simple matter of
adding more plugin methods to SourcePlugin and derived classes.  The
code that then needs to call the plugin methods the uses
plugin.get_source_plugin_methods() to find the method(s) needed by the
call; this is done by filling up a dict with keys containing the
methon names of interest - on success, these will be filled in with
the actual methods. fPlease see the implementation for examples and
details.

Note that a source plugin need not restrict itself to methods that
apply directly to partitions - methods can also be defined for higher
level processing such as at the 'disk' level.  The
get_default_source_plugin() of DirectImageCreator allows the default
source plugin to be retrieved; by default this is set to be the same
plugin used for the /boot partition, but that can be overridden by
specifying a different --source and therefore different plugin on the
'bootloader' line.  This isn't ideal, but it avoids forcing a new
high-level object to be defined for that purpose.

Note that the '--source rootfs' param remains as its current
hard-coded value, which is just the rootfs to be used to populate the
partition - by default, that's just the value of the bitbake
ROOTFS_DIR variable (or whatever was passed in using the -r param).
Note that this also could also be overridden by creating a source
plugin using a different name; at this point, unlike with bootimg,
there's been no need to do so.

(From OE-Core rev: 663833d8ecccb36ab42150bc5c9c00be79fa5b93)

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Tom Zanussi 363488fc9a wic: Add wic-specific bootloader subclass
Add a new wic-specific bootloader subclass so we can add a --source
param to hang non-partition plugin off of.

By default, the bootloader gets the /boot partition source plugin, but
this can be overridden by the --source bootloader param if needed.

(From OE-Core rev: f90e4097c4e69d4f61c69923cb5d1ebb6b74d2ff)

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Tom Zanussi 3cb93017e6 wic: Create and use new functions for getting bitbake variables
Add get_bitbake_var() and bitbake_env_lines() functions for use by
plugins, which will need access to them for customization.

(From OE-Core rev: f0bb47b0d7ab6520c105ce131844269172de3efd)

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Tom Zanussi 534d9ba70a wic: Move some common items to oe.misc
Move a couple items into a more common location since they're going to
need to be accessible from source plugins.

(From OE-Core rev: 95ca523949e838850b5afa090ba16f91b8557c12)

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Khem Raj 1ddc105659 binutils: Package additional file when using ld-is-gold
Fixes QA warnings like

WARNING: QA Issue: binutils: Files/directories were installed but not
shipped
  /usr/bin/ld.bfd
  /usr/bin/dwp

(From OE-Core rev: 6503ad0484d5a9cc3f8338eb4f176d65c2f3c13a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Ross Burton c8962ab4db oeqa/runtime/systemd: remove race in settle()
The settle() function had a race where services could still be activating at two
minutes but then when the final log is output, they've activated.

Remove this race and generally clean up the code.

(From OE-Core rev: 8d107e0a828868702cfe035104c1f0b51da4291e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:43:07 +00:00
Richard Purdie 6b7b9ea316 tcl-native: Depend on zlib-native
tcl can use its internal zlib. If it detects zlib during configure, then it
gets removed from the sysroot during the build (since its no in DEPENDS),
it causes build failures.

Worse, if the configure test fails to find zlib, it still appents -lz to
the other autoconf tests meaning several fail when they shouldn't. This results
in conflicts with system macros and other bizarre issues.

The easiest fix is to depend on zlib-native and make things determinstic.

(From OE-Core rev: b01db0424b9cf73e51808f57043710a1c665b2c5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 11:00:45 +00:00
Richard Purdie 76f52a81f6 insane: Fix python function whitespace changes
(From OE-Core rev: 9dee6c2fe0d1882521c0f9a6998257a652845854)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-03 16:16:30 +00:00
Paul Eggleton 220f4f5806 classes/buildhistory: fix expansion of escape sequences
OE-Core commit 259b8718a31b886f8a158aeb5de164840c9a28b2 fixed UTF-8
errors but broke decoding of escape sequences in strings (e.g.
pkg_postinst scripts had \n \t in them instead of newlines and tabs.)
We need a second call to decode() here as specifying 'string_escape' as
the second parameter won't do anything.

(From OE-Core rev: 15e0cdff08b8b9b826bbb9f00192a27318a3ee65)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-03 11:57:09 +00:00
Phil Blundell b37dd451a5 rootfs_ipk: Ensure that BAD_RECOMMENDATIONS are honoured for all architectures
Commit a5362de60c0051f16b88a40bd9cb41915bee0b0f restricted us to writing
only a single entry to the status file for any given package.  This
avoids writing garbage entries (with no Status) when multiple versions
of the same package exist in the feed.  However, in the case where the
same version exists for multiple architectures (for example, has been
built for both cortexa15 and generic armv7a), we do need to write out
status file entries for all of them since we can't trivially determine
which one opkg will decide to install.

Fix this by undoing a5362de60c0051f16b88a40bd9cb41915bee0b0f and writing
out an entry for everything that matches, but ensuring that we force the
Status to the correct value for each one.

(From OE-Core rev: 12d7b44c817bdf6eea425bda607379594057c3fb)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:42 +00:00
Phil Blundell 6d989d09d5 lttng-ust: Move lttng-gen-tp to ${PN}-bin
This helper script is used only during development and is not generally
useful on the target.  Inherit lib_package to move it to a different
package from the libraries.

(From OE-Core rev: f606f69254097dc6b3517416b43ddbf80027a8c1)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:42 +00:00
Phil Blundell cc169c91f2 image.bbclass: Also uninstall update-alternatives and shadow for read-only-rootfs
If the rootfs is read-only then we aren't going to be updating any
alternatives or modifying the password file and these binaries will
be redundant.  In an ideal world we would be able to stop them from
being installed in the first place but this is non-trivial to arrange.
As a workaround in the meantime, let's just uninstall them once image
construction is finished.

(From OE-Core rev: d41097a970e9bfa553cd4bc3c9fad4b9073d7bd5)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:42 +00:00
Phil Blundell 88a6b2b64b base-passwd: Remove unnecessary DEPENDS
Commit 5cab5935d6924e0aca5da4b682bb83e54f20bc1d added dependencies on
docbook-utils-native and linuxdoc-tools-native, even though the same
commit ostensibly disabled building of the documentation and there was
no explanation of why these dependencies might be necessary.  It appears
that they don't serve any useful purpose so let's remove them again.

(From OE-Core rev: 435f0c2c86cec4bc40731eaddec6c59260dd1ef5)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:42 +00:00
Khem Raj 9341575733 wireless-tools: Upgrade 29 -> 30.pre9
This also fixes the underlinking problems that
are unearthed with newer binutils 2.24
where one of the wireless-tools libraries is asking
for symbols from libm but all the symbols it asks
for are unfortunately weak and they do not let new
linker convince enough to link libm even though -lm
is on cmdline since we are using --as-needed by default
in linker, which means we end up with errors like

| make: *** [iwconfig] Error 1
| libiw.so.30: undefined reference to `ceil'
| libiw.so.30: undefined reference to `pow'
| libiw.so.30: undefined reference to `log10'
| libiw.so.30: undefined reference to `floor'
| collect2: error: ld returned 1 exit status

(From OE-Core rev: e347b6b119f83a29802ae4499ddcb3ff6a23b317)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Noor 0deebd1a6b libcgroup: Add bison-native and flex-native in depends
* libcgroup requires native packages for bison and flex to configure
  itself successfully. Added those in its DEPENDS.

(From OE-Core rev: b50bdeaea15fcd24fd2c03fd02d4a1a365948cef)

Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Sipke Vriend c99622e38b lib/oeqa: allow multiple layers to provide their own TEST_TARGET class
Use a python module "folder" rather than a single module within
layers to ensure multiple layers can define a TEST_TARGET class.
Current implementation using controllers.py module will only allow
a single layer to define test targets.

Add a controllers folder as well as a TestTargetLoader class whose
job is to load the given TEST_TARGET class from any number of
python modules within the oeqa/controllers/ directory of any
layer.
The only condition will be that layers will need to ensure
the TEST_TARGET class name they provide is unique otherwise there
is no guarantee which class is instantiated. a bb.warn is used
to alude to this if it happens.

(From OE-Core rev: 3f25705f4a986e06cbd397aaea52b841c1a1e054)

Signed-off-by: Sipke Vriend <sipke.vriend@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Ross Burton 6e59874e88 glib-2.0: fix handling of skipped tests
Backport a patch from upstream to fix skipped tests, essential for gdk-pixbuf to
pass without enabling all loaders.

(From OE-Core rev: 4bf996557409b63c2d783f175c6325c966aae236)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Laszlo Papp 152679df1f meta/recipes-core/base-passwd/base-passwd/noshadow.patch: Split it into two parts
The current change contains two different logics resulting that users like me
may need to partially override the behavior of it. It would be easier for end
users to keep one change while dropping the other if needed, like in our case.

(From OE-Core rev: 0ca984f32682151cfeff852167f0174aca20a8bc)

Signed-off-by: Laszlo Papp <lpapp@kde.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Marius Avram b96375bd83 libpng: upgrade to 1.6.8
Note: license has not changed. MD5 sum of files changed because new
contributors were added to LICENSE and png.h file contains the
version of the new release.

(From OE-Core rev: f825549d18477bc2c02e96f7a879b36bad1be18d)

Signed-off-by: Marius Avram <marius.avram@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:41 +00:00
Khem Raj d4b11e8f16 binutils: Upgrade to 2.24
This builds and runs images for all qemu machines

(From OE-Core rev: 015eca84f1b0f25868b47d2480bb60cea698f70e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
David Nyström a42f84682f nss: Add nativesdk to BBCLASSEXTEND and bugfix
Since shsignlibs is used
from the nss postinstall hook. It should be included in
nativesdk to make offline rootfs construction possible.

(From OE-Core rev: 42bc72d21226e76c9b013fc052f17d847dc6a97a)

Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
David Nyström 092afbc886 nspr: Added nativesdk to BBCLASSEXTEND
nspr is a dependency of nss. Since shsignlibs is used
from the nss postinstall hook. It should be included in
nativesdk to make offline rootfs construction possible.

(From OE-Core rev: f7433d024baaa074f3e5f05a28ab22543bee7001)

Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
David Nyström 0b30e6ebe5 nativesdk-packagegroup-sdk-host: Adding nativesdk-postinst-intercept to SDK
Adding ability to use postinstalls intercepts in the nativesdk env, and
making sure the correlate between repo + SDK.

This to enable rootfs generation from a package repository using only a
package repository and the toolchain tarball.

See https://github.com/nysan/rootfs-sandbox for examples.

(From OE-Core rev: a54bab492903322e2a2495ea9576ee6b3272700a)

Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
David Nyström 8f76b91c34 postinst-intercept: New recipe to include postinstall intercepts in nativesdk
Adding ability to use postinstalls intercepts in the nativesdk env, and
making sure the correlate between repo + SDK.

This to enable rootfs generation from a package repository using only a
package repository and the toolchain tarball.

See https://github.com/nysan/rootfs-sandbox for examples.

(From OE-Core rev: 5d5ef0f5620ec525491c53e8457e7c65c226bfb4)

Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
Khem Raj ad9b3e2614 python-setuptools: Remove its provided by python-distribute
Use python-distribute-native in packagegroup-toolset-native

Also fixes warnings like

WARNING: The recipe python-setuptools is trying to install files into a
shared area when those files already exist. Those files and their
manifest location are:

/srv/ssd/sgw/builds/world/tmp/sysroots/qemux86-64/usr/lib/python2.7/site-packages/setuptools.pth
    Matched in manifest-qemux86-64-python-distribute

/srv/ssd/sgw/builds/world/tmp/sysroots/qemux86-64/usr/lib/python2.7/site-packages/site.pyc
    Matched in manifest-qemux86-64-python-distribute

/srv/ssd/sgw/builds/world/tmp/sysroots/qemux86-64/usr/lib/python2.7/site-packages/site.py
    Matched in manifest-qemux86-64-python-distribute

Conflicts:
	meta/recipes-devtools/python/python-setuptools_1.4.bb

(From OE-Core rev: ddb0c70a7d4d51a1f404c194a562325137222146)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj aacfd003d5 python-distribute: Add recipes for python2 and python3
in python3-distribute rename easy_install to easy3_install

(From OE-Core rev: 712d65335b9a92bba427949f8885102d0aefbeb4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 6a539a7f73 python_2.7.3.bb: Inherit python-dir
So it can get the correct python direcotries for python2

(From OE-Core rev: cfc780ec26474a61bd52a8f6a66c7280fa12a075)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 1c8869bca4 python3: Add target and native recipes
3.3.3 is latest bugfix release in 3.3 series

License text is changed to reflect year and prev releases

+++ ../Python-3.3.2/LICENSE     2013-05-15 09:32:54.000000000 -0700
@@ -74,7 +74,9 @@
     3.2.1           3.2         2011        PSF         yes
     3.2.2           3.2.1       2011        PSF         yes
     3.2.3           3.2.2       2012        PSF         yes
+    3.2.4           3.2.3       2013        PSF         yes
     3.3.0           3.2         2012        PSF         yes
+    3.3.1           3.3.0       2013        PSF         yes

 Footnotes:

@@ -110,8 +112,8 @@
 distribute, and otherwise use Python alone or in any derivative
version,
 provided, however, that PSF's License Agreement and PSF's notice of
copyright,
 i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
2009, 2010,
-2011, 2012 Python Software Foundation; All Rights Reserved" are
retained in Python
-alone or in any derivative version prepared by Licensee.
+2011, 2012, 2013 Python Software Foundation; All Rights Reserved" are
retained
+in Python alone or in any derivative version prepared by Licensee.

We use native python in disutils bbclass and this needs
to peek into target sysroot when building plugins in cross
environment. Otherwise anything that inherits distutils3.bbclass
will not build.

Fix host include contamination issue

Let compiler append sysroot to include path if it can

Fix the compiler invocation and linker flags when cross compiling

The details are in patch header. This should fix the QA errors about
host contamination

Add virtual/libintl to dep list

There is use of libintl.h but we dont
express the dependency

Add lzma dependency for python3-misc

Fixes

and from test-dependencies.sh run there is undeterministic lzma
dependency:

WARN: packages/armv5te-oe-linux-gnueabi/python3/python3-misc/latest lost
dependency on  liblzma

Fix staging warnings due to duplicate install

WARNING: The recipe python3 is trying to install files into a shared
area when those files already exist. Those files and their manifest
location are:

builds/world/tmp/sysroots/qemux86-64/usr/include/python3.3m/pyconfig.h
builds/world/tmp/sysroots/qemux86-64/usr/lib/libpython3.3m.so.1.0
builds/world/tmp/sysroots/qemux86-64/usr/lib/libpython3.3m.so
builds/world/tmp/sysroots/qemux86-64/usr/lib/python3.3/config/Makefile

Let compiler search includes relative to sysroot

This makes it cross compilable and assumption on hardcoded
paths is fixed.

Errors like below would appear if ncursesw is installed on build host

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

(From OE-Core rev: 185fcfc3286b355394ae89300f22b8cb7aaa43c1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>

Fix linking not happening issue in modules

We need to tweak CONFIGURE_LDFLAGS for python3 instead of LDFLAGS
directly

Add second compile stage which uses original makefile

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 3f57c714d0 distutils: Introduce PYTHON_ABI variable
In python3 this has to be taken care of, it defines a variable to
denote ABI currently its at 'm' and it uses this to construct
the directory names for installing the python headers and library
names in sysroot. e.g. it will be something like ../python3.3m/...

We need this information when we are using distutils to cross build
python extentions and want to know the locations of python headers
and libraries install locations

(From OE-Core rev: 9a3e4ac4a4eeed64ec80d400130dff3d26daf336)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 0221af0f4e classes: Add distutils for python3
In line with python2 add distutils and setuptools
classes for handing python3

Use python-distribute instead of python-setuptools in setuptools bbclass

Remove --single-version-externally-managed since its setuptools
specific and we dont use it anymore

Do build_ext as separate step during compile

Add DISTUTILS_BUILD_EXT_ARGS for modules to pass flags to build_ext step
in setup.py

Add build_ext as sepate step during compile and add
the cross sysrooted library and headers since we are cross
compiling

Use ${PYTHON_PN} in place of hardcoding python name

Remove the /etc/share if its empty

Since OE-Core times we now have machine specific sysroots
for targets unlike before when we used arch specific sysroots
so reflect that here

Use MACHINE for sysroot when not building for build host

Python's machinery replaces directories in sysroot path to match OE's
staging area sysroots. Earlier we use to have HOST_SYS represent sysroot
always but now we use MACHINE to represent target sysroots but HOST_SYS
to represent host sysroot. This patch caters to that difference

(From OE-Core rev: 8bb0206ed67228c88dd5bc2d8b36ce28f48b78f4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 8314590f09 classes/distutils: Introduce PYTHON_PN
This is needed to accomodate python3 alongside
python2

(From OE-Core rev: ae931c2cf9e48e1fb74b4b727dbf668ea880023f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj 867b1eee25 package_rpm.bbclass: Trigger the regexp on exact keyword match
This causes issues when postinstalls have ERROR keywords
its interpreted as error and image build is cancelled

(From OE-Core rev: f5bc3cfac9545c402b415695c4e0f98ad38fb2b0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj 962ea3dfcc python3native.bbclass: Add python3 abstraction class
(From OE-Core rev: ead30aa5e3046f450ee688e14f6d5268d9ed0bd8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj c1a3286d9f python-3.3-manifest: Add python3 manifest file
Like python2 mostly except

This will package collections into python3-core instead
of python3-misc fixes errors like

Traceback (most recent call last):
File "/usr/lib/python3.3/site.py", line 69, in

     import os
   File "/usr/lib/python3.3/os.py", line 659, in <module>
     from collections.abc import MutableMapping
 ImportError: No module named 'collections'

(From OE-Core rev: e314404876e62c05c7ea5f5e79b2b05c3ed9ab84)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj 31a48f4845 generate-manifest-3.3.py: Add script to generate python 3.3 manifests
Bases on python 2.7.x generator

Package collections/ in python-core

(From OE-Core rev: 468115573275d6c32924e56bff660b9f6d38de84)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Martin Jansa 358dd840c5 sstate-cache-management.sh: don't remove all packagedata sstate archives
* packagedata task was introduced in:
  commit 6107ee294afde395e39d084c33e8e94013c625a9
  Author: Richard Purdie <richard.purdie@linuxfoundation.org>
  Date:   Wed Jan 23 14:27:33 2013 +0000
  Subject: Split do_packagedata task from do_package
* rm_by_stamps wasn't using do_packagedata or do_packagedata_setscene
  stamp files to find which sstate archives to keep, so it was removing
  all of them

(From OE-Core rev: 66ef2e62a7b5fe36c718f56a8ea9d7f6fd77c393)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:30:34 +00:00
Martin Jansa 7010358190 sstate-cache-management.sh: Fix available architectures
* grep for AVAILTUNES isn't enough in cases where AVAILTUNE doesn't
  match exactly with TUNE_PKGARCH, e.g. AVAILTUNE "cortexa8thf-neon"
  and TUNE_PKGARCH "cortexa8t2hf-vfp-neon", instead of trying to find
  dynamically every available TUNE_PKGARCH (we have _a lot_ of them
  even with oe-core only), add parameter --extra-archs where user can
  define extra architectures he supports in given build
* Don't replace '-' with '_' for extra-archs, it does apply to MACHINE
  names and some AVAILTUNES, but e.g. cortexa8thf-neon shouldn't be
  converted to cortexa8thf_neon
* Add empty architecture for populate_lic sstate archives
* Add ${build_arch}_${arch} combinations for toolchain recipes (e.g.
  gcc-cross is using x86_64_i586

(From OE-Core rev: a27cc54fb2d0e59f3a800893c1848cb26a7c5335)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:30:34 +00:00
Martin Jansa 6d295ce0c5 sstate-cache-management.sh: Show total number of files when showing how many will be deleted
* it's good to see some the ratio of delted files until now it was
  showing only when all or none files were to be removed

(From OE-Core rev: 54e6e25f1a369fa6c21ce0f9db3479b1a481825f)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:30:34 +00:00
Martin Jansa a397dec90b sstate-cache-management.sh: Fix rm_by_stamps() to work after SSTATE_SWSPEC change
* format of filenames for sstate archives was changed in:
  commit 6f823a23c5f1d0ffa0a27db1c1bc1907de788505
  Author: Richard Purdie <richard.purdie@linuxfoundation.org>
  Date:   Fri Dec 20 12:06:02 2013 +0000
  Subject: sstate: Convert to use ':' as a filename sperator and use SSTATE_SWSPEC globally
* this one doesn't need special care for old sstate- names
  they will be removed automatically as they don't match with
  any checksum in rigth format from stamps directory

(From OE-Core rev: aa36f9c9b5abac58de899f98803d1c4375678044)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:30:33 +00:00
Martin Jansa a8a7e7b289 sstate-cache-management.sh: Fix remove_duplicated() to work after SSTATE_SWSPEC change
* format of filenames for sstate archives was changed in:
  commit 6f823a23c5f1d0ffa0a27db1c1bc1907de788505
  Author: Richard Purdie <richard.purdie@linuxfoundation.org>
  Date:   Fri Dec 20 12:06:02 2013 +0000
  Subject: sstate: Convert to use ':' as a filename sperator and use SSTATE_SWSPEC globally
* remove_duplicated() wasn't able to find available architectures and
  duplicate files since this change
* add extra step to remove old sstate archives starting with sstate-
  (instead of sstate:)

(From OE-Core rev: ddb26341611c3dff41ea92a73d93ec01ae2865de)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:30:33 +00:00
Richard Purdie 731a7455ef scripts/cp-noerror: Avoid a race
Its possible something can delete $1 (since it may be empty) whilst cp-noerror
is starting. Add an exception to handle this issue since if this happens, we
shouldn't return an error.

(From OE-Core rev: 13061ed1e1f347589d6955d5cc50a50574b00218)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:23:45 +00:00
Chen Qi 48bcbc355a meta-yocto: rename busybox's bbappend file to match the current version
Rename the bbappend file to match the current version of busybox.

(From meta-yocto rev: de32658ea7bab306a0a0f5413f6a7ec752b2d478)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:13 +00:00
Krzysztof Sywula f7e6513dc1 Revert "poky-tiny: Assume pkgconfig is provided"
This reverts commit a54932dc37.
pkgconfig does not pull in glib->dbus anymore

(From meta-yocto rev: 4556c2b14f00d011e203d70bcc0ba8e70ec74d51)

Signed-off-by: Krzysztof Sywula <krzysztof.m.sywula@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:13 +00:00
Tobias Blom b21468434c apmd.service: Fix typo (not mandatory EnvironmentFile prefix)
Prefix to EnvironmentFile should be preciding the filenamn.

(From OE-Core rev: 1f694e4cb493b0737b6009382c0957e6837ebbed)

Signed-off-by: Tobias Blom <tobias.blom@techne-dev.se>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:13 +00:00
Cristian Iorga 7538e256c0 minicom: fix for multilib and x32 build crash
For source URI, the use of ${PN}-${PV} leads to
build failures for multilib and x32.
${BP} is properly used instead.

Partial fix for [YOCTO #5781].

(From OE-Core rev: 2e0dbfaed17fb89381e3bf155a29cd606b698c7c)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Stefan Stanacar a1dff02d03 oeqa/runtime: syslog: update --help test
busybox 1.22 now returns exitcode 0 instead of 1 for
--help options, so this test needs to be updated when
busybox gets upgraded to 1.22.

https://bugs.busybox.net/show_bug.cgi?id=5612
http://git.busybox.net/busybox/commit/?id=efd0698f74caab0a0c8a51228b923ee142e8e278

(From OE-Core rev: 1e560d234b6d3040a7a9f0eb023f1e4a654be1ea)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Chen Qi 5baa8bea91 procps: make the 'watch' command register to /bin/watch
This solves the integration problem with busybox.

Previously, there was a patch in busybox to move 'watch' to /usr/bin.
Such patch is not accepted by upsteam and really not necessary as
our ALTERNATIVE system can easily solve such intergration problem.

(From OE-Core rev: 9e6e2aee21ff59687ddfd0e23fd0add9ee81d397)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Chen Qi 95ff97e659 coreutils: move 'stat' to base_bindir_progs
To correctly integrate with busybox in our system, we should add
'stat' to base_bindir_progs so that the 'stat' commands from busybox
and coreutils both register to /bin/stat.

Previously there was a patch in busybox to move 'stat' to /usr/bin.
But as we can easily solve this integration problem by modifying the
coreutils recipe, this patch has been removed. After all, maintaining
a patch that's not accepted by upsteam should not be our No.1 choice.

(From OE-Core rev: d98d6122bdfd84faaa37912ca66dabebc7eb9da6)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Chen Qi d22f12ca76 meta-skeleton: rename busybox's bbappend file
As busybox has been upgraded, rename this bbappend file to make it
match the current version of busybox.

(From OE-Core rev: 12e33bd0dc02720122eb8088b08a181b13b6ef0e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Chen Qi b1ea345537 busybox: upgrade to stable 1.22.1
Upgrade busybox to the stable release 1.22.1.

During this upgrade, 9 patches are removed. Reasons are detailed below.

The following 6 patches are removed as they have been merged.
    meta/recipes-core/busybox/busybox/busybox-lineedit-initialize-delptr.patch
    meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch
    meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch
    meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch
    meta/recipes-core/busybox/busybox/find-get-rid-of-nested-functions.patch
    meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch

The following three patches are removed because they are mainly about moving
binaries from /bin to /usr/bin to make the update-alternative work correctly
at rootfs time. We can easily solve this problem by changing recipes. There's
no compelling reason why such patches are needed.
    meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch
    meta/recipes-core/busybox/busybox/stat-usr-bin.patch
    meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch

(From OE-Core rev: fa282186d82e8fe3c590d4ea79e464116e5ceea2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00