Commit Graph

345 Commits

Author SHA1 Message Date
Christopher Larson f63f387b83 package.bbclass: drop unnecessary and broken packages.remove()
(From OE-Core rev: 5480371d0473482437ce4350e6593f006101ef40)

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

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

(From OE-Core rev: acd7b1c2ee9f3ff84c45a723dba5e0bc5f6a100c)

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

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

The resulting core package has

| Version: 1.7.33+git234+cd01e8c-r11

and because the subpackage has

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

image build fails with

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

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

(From OE-Core rev: 6e46664085fa49bc204fc944ca23ed6383e2ec51)

Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Cc: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20 12:58:57 +00:00
Robert P. J. Day faf94a9d6d package.bbclass: Skip testing "packages" a second time.
Since the "packages" variable is already tested a few lines above in
the same routine:

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

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

(From OE-Core rev: 371fbacff47828cfff99f1152f9e269e27c474da)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:44 +00:00
Constantin Musca 94516ced8d package.bbclass: don't prepend MLPREFIX to LOCALEBASEPN
- all the recipes that overwrite LOCALEBASEPN must consider
also the MLPREFIX
- if the LOCALEBASEPN variable is not overwritten then it will
have the correct prefix (LOCALEBASEPN ??= "${PN}")

(From OE-Core rev: 855d64a3091c5358e2e1a7f4247929515b068708)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07 11:09:37 +00:00
Constantin Musca 1674541ed8 multilib: fix allarch/kernel/module-base multilib issues
- skip the non-packagegroup allarch recipes in multilib_virtclass_handler
- extend PROVIDES/RPROVIDES for allarch recipes which are not packagegroups
- use variants from MULTILIB_GLOBAL_VARIANTS (lib32 lib64 libx32) to create
additional pkgdata files for multilib allarch: ${pkgdatadir}/${variant}-${PN}
and ${pkgdatadir}/runtime/${variant}-${pkg}
- use variants from MULTILIB_VARIANTS to create additional pkgdata files
for multilib kernel/module-base recipes
- add a sanity check to determine if the current multilib is in
MULTILIB_GLOBAL_VARIANTS

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

(From OE-Core rev: bc4da2573dfb59ea2fc4af359701818df20f7663)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-31 09:43:25 +00:00
Constantin Musca 9240695462 package.bbclass: prepend MLPREFIX to LOCALEBASEPN
We need to prepend MLPREFIX to LOCALEBASEPN in order to
fully enable multilib

[YOCTO #3440]

(From OE-Core rev: 91fe09a9a8b317d27145efff4201f1138d6a45d4)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:35 +00:00
Ross Burton 3488973587 package.bbclass: make do_split_packages handle non-existent root directories
This function has different behaviour if the split directory doesn't exist
depending on the recursive argument: non-recursive uses os.listdirs which throws
an exception, recursive uses os.walk which doesn't.

do_split_packages should silently handle non-existent directories because it's
mainly used for plugin directories, which may end up being empty though changing
the distro configuration (for example, connman without wifi distro feature).

So, add an early exit if the split root doesn't exist.

(From OE-Core rev: 937101e3fdd6afd00f6f8a8be411a67110c4ae78)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:54:36 +00:00
Constantin Musca 59a704679c prs: use the PRServer to replace the BB_URI_LOCALCOUNT functionality
- adapt the PRServer to generate an incremental number for every revision set
associated with a (PN, PV)
- use one incrementing value rather than several
- PV becomes 0.1+gitAUTOINC+deadbeefdecafbad_decafbaddeadbeef
- if PV contains 'AUTOINC' set PKGV to the same thing with AUTOINC replaced
with the "auto PR" value
- if the PRServer isn't running replace AUTOINC with 0 (no package feeds, but usual
image creation would work)
- use the PR table with "AUTOINC-${PV-without-SRCREVs}" as key
- modify prexport/primport to address the generated srcrev entries
- this patch addresses the following proposal:
http://lists.linuxtogo.org/pipermail/bitbake-devel/2012-November/003878.html

(From OE-Core rev: b27b438221e16ac3df6ac66d761b77e3bd43db67)

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

(From OE-Core rev: 432cfbb403f0e864d1fad383c2bbb6f9bdb80770)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 09:10:02 +00:00
Richard Purdie d59d4306fc package: Hardlink debug source to improve performance
When copying the source files needed for the -dbg package, use hardlinks
where possible. This saves some disk space and hence helps performance
of the builds.

(From OE-Core rev: 6775feb9fe935ab01fd9cae2b2d3fce5824a9a72)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-23 12:28:31 +01:00
Richard Purdie 92b44ec00e package.bbclass: Exclude the PKGTRIPLETS variable
Without this, we'd rerun packaging for every machine since this variable contains
a machine specific component.

(From OE-Core rev: 61131828c59178c923b3d5b5fcacf0dbcba275a5)

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

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

(From OE-Core rev: cc088489d70fb27d460c3dbe35d6ea382123c134)

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

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

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

(From OE-Core rev: 2be67f95abaa7e8655a1ca8f4ffe66b3e099a650)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-18 12:13:12 +01:00
Richard Purdie 71030c6b37 package.bbclass: Fix regression in -dbg packages introduced by explode_dep_versions change
We need to iterate over the dictionary pulling out the values, not take the top
level keys. If we don't do this, we end up with dependencies on the values of
PACKAGES, not library dependencies.

(From OE-Core rev: 7219bca11f554fbe2ed30f1537491987d65e9316)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-03 10:02:22 +01:00
Richard Purdie 5fdbda6922 classes: Update to use corrected bb.utils.explode_dep_versions2 API
The bb.utils.explode_dep_versions function has issues where dependency information
can be lost. The API doesn't support maintaining the correct information so this
changes to use a new function which correctly handles the data.

This patch also fixes various points in the code to ensure that we do not have any
duplicates in things that use explode_dep_versions.

A new sanity test to test the contents of the R* variables is also added.

[Some changes from Mark Hatle <mark.hatle@windriver.com>]

(From OE-Core rev: 16a892431d0c0d03f8b561b92909cf2f11af4918)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-02 11:40:53 +01:00
Paul Eggleton 272cb74d70 Rename task to packagegroup
"Package group" is a much more appropriate name for these than task,
since we use the word task to describe units of work executed by
BitBake.

(From OE-Core rev: 424dcf7046e4ad09dcc664eb1992201195247fcf)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-04 12:52:55 +01:00
Tomas Frydrych 4759a71d3b package.bbclass: fix stripping for kernel modules
runstrip(path, elftype, d) does bitwise & on the elftype parameter, so it has
to be passed an integer. Passing None fails with: TypeError: unsupported
operand type(s) for &: 'NoneType' and 'int'.

(From OE-Core rev: 67f21c6c698464959c27c7e65ee537ab4c378944)

Signed-off-by: Tomas Frydrych <tomas@sleepfive.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-02 05:52:09 -07:00
Paul Eggleton bf64b6ec39 classes/package: document do_packages_split arguments
This function takes quite a number of arguments and can be tricky to use
properly; this is not made easier if it is undocumented, so document all
of the arguments. (No functional changes, comments only.)

(From OE-Core rev: 324fbcc047819b6948d13eda627ec898cb1f1eb8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-22 13:59:54 +01:00
Richard Purdie 48619958d5 meta/classes: Various python whitespace fixes
It was pointed out we have a number of weird indentations in the python functions.
This patch cleans up 3, 7 and other weird indentations for the core bbclass files.

It also fixes some wierd (odd) shell function indentation which my searches picked up.

(From OE-Core rev: 8385d6d74624000d68814f4e3266d47bc8885942)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-21 12:15:30 +01:00
Laurentiu Palcu 21049ec964 package.bbclass: change RPATHs for cross-canadian binaries
When building the meta-toolchain, the binaries didn't get relocatable
RPATHs. They were hardcoded to the default path. Hence, if one had
already installed one SDK in the default path and one in another
location, the later toolchain's binaries would search and load libraries
from the first location, ending in a "Segmentation Fault".

[YOCTO #2927]

(From OE-Core rev: b40a03c43d5d9d738a9aa5b43b2ecfe74fc95018)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 13:06:42 +01:00
Paul Eggleton 06ad59cca9 classes/package: don't make locale pkgs depend on PN pkg if not in PACKAGES
If ${PN} is not in PACKAGES then don't add it as an RDEPENDS for each
locale package. This fixes the installation of gcc-runtime locale
packages, for example.

(From OE-Core rev: d36c3235b3022c07f064929f55114f808a7634f6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-06 15:35:45 +01:00
Laurentiu Palcu e3a13b8d93 package.bbclass: change RPATHs for nativesdk packages
Change binaries RPATHs, to include $ORIGIN, to make them relocatable.

(From OE-Core rev: f6362c5248914485fc8bf3c3f0ca6cc962bf753e)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:39 +01:00
Martin Jansa 5ab3a11149 package.bbclass: fix TypeError in runstrip
* some packages have .ko files which are not elf, without this change
  it fails with TypeError, with this change only runstip fails and
  reports where:
  ERROR: runstrip: ''arm-oe-linux-gnueabi-strip'  '/OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/emacs-23.4-r0/package/usr/share/emacs/23.4/etc/tutorials/TUTORIAL.ko'' strip command failed

(From OE-Core rev: a834ab8a6d53cae504fa112a89bab93d726539ec)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 11:59:05 +01:00
Paul Eggleton 22965c4715 classes/package: ensure pkgdata is cleaned out first
If do_package needs to be re-run and packages are removed/renamed as a
result, we want the corresponding stale pkgdata files to no longer be
present; for that we need to ensure all of the old pkgdata files are
cleaned out prior to creating the new ones. This is particularly
important now we rely on pkgdata more heavily (for complementary
packages, license manifest, etc.).

(From OE-Core rev: 5dee47b476a6f715ab02af5e758441a2a934eea3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:16 +01:00
Richard Purdie 754d240d2c package.bbclass/eglibc-locale: Ensure the correct PN is used for locale packages
(From OE-Core rev: fc4b138948656d482603b80f8c8e86fdbb185df4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:53 +01:00
Paul Eggleton a5227e205b classes/package: reduce dbg package dependencies
Make dbg package dependencies added via DEPCHAIN_POST less aggressive -
only add dependencies on dbg packages for shared library dependencies.
This avoids dragging in extraneous packages (such as eglibc-dbg forcing
bash-dbg to be installed) whilst preserving the ability to easily debug
into shared libraries in use by an application by just requesting the
installation of the single dbg package for that application.

For task recipes however we preserve the previous behaviour, since when
you install task-xxx-dbg you expect the dbg packages for every package
in the task to be installed. Unfortunately not all of our tasks inherit
from task.bbclass so we just use a name match - this should be tidied up
later.

Fixes [YOCTO #2599].

(From OE-Core rev: 352522d474cb75992d7865545b6fbe4e157a5f99)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-28 09:20:52 +01:00
Paul Eggleton e95738004f classes/package: do not add self-dependencies to dev/dbg packages
Avoid adding dependencies to dev and dbg packages on themselves via the
DEPCHAIN_* handling code. These don't actually cause any problems, but
they do complicate dependency graphs.

(From OE-Core rev: ecdf7874470cff24cb23b7fd2723096b15aead31)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 18:53:04 +01:00
Andrei Gherzan 5334a93d26 package.bbclass: Create symlinks for packages with different packaged name
While generating license.manifest package information is searched in:
filename=`ls ${TMPDIR}/pkgdata/*/runtime/${pkg}| head -1`
This is ok as long as package name is the same as the package name
after packaging.
For example dbus is packaged as dbus-1. So, searching
ls ${TMPDIR}/pkgdata/*/runtime/dbus-1 will fail because there is no file
with this package name.

Create a symlink to the pkgdata file in a runtime-reverse directory so
that these reverse lookups are possible.

Fixes [YOCTO #2638].

(From OE-Core rev: 76ef414b8a017557cf5f3ad7b3ca8a324f7aad29)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:47 +01:00
Richard Purdie 73cf0335c4 Remove a number of unneeded import os/bb calls
The bb and os modules are always imported so having these extra import calls
are a waste of space/execution time. They also set a bad example for people
copy and pasting code so clean them up.

(From OE-Core rev: 7d674820958be3a7051ea619effe1a6061d9cbe2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 12:24:50 +01:00
Richard Purdie bfd279de32 Convert tab indentation in python functions into four-space
(From OE-Core rev: 604d46c686d06d62d5a07b9c7f4fa170f99307d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-19 10:24:50 +01:00
Peter Seebach 07a9e9ee48 package.bbclass: Allow overriding of debugedit starting path
In the usual case, the computed path used for debugedit to fix
up path references for the target filesystem is correct. However,
prebuilt binary components, such as prebuilt toolchains, can
have debug paths that do not reflect paths within the local
build directory. Providing an override lets us continue to use
the standard debugedit logic in package.bbclass.

(From OE-Core rev: 32b1fde106bf423873a4a56e1111f230494e2d4a)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:54 +01:00
Amy Fong b1c2b57b3e package install failure on systems without /sbin/ldconfig
Package install failures due to issues in post install rules.

package_do_shlibs only looks for libraries in a directory "lib", this should be
modified to the variable baselib.

ldconfig_postinst_fragment failure observed on systems without /sbin/ldconfig
        [ -x /sbin/ldconfig ] && /sbin/ldconfig
results in the post install rule returning a failure. Modify to
        if [ -x /sbin/ldconfig ]; then /sbin/ldconfig; fi

(From OE-Core rev: 3f85ab6d0d05a4e34fe73fa343d2b3b942fc69b7)

Signed-off-by: Amy Fong <amy.fong@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:53 +01:00
Saul Wold 0a1d5f5977 package.bbclass: enable the use of package_qa_handle_error
This will allow the reporting of these errors as either WARNINGs (default)
or ERRORs if installed_vs_shipped is added to the ERROR_QA of the policy
file (such as a <distro_name>.conf file.

V2: found the code I had intended to send instead of that other junk,
    was just not watching what I pushed on that one, sorry. (this is edit in
    no in the actual commit message)

(From OE-Core rev: 20d4205a4e408b6a99db392d4df458156113106a)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:35 +01:00
Mark Hatle 63c6f46b22 package.bbclass: Allow a package to skip per file dependency generation
Most of the time skipping per file dependency generation is a bad idea, but
when building a nativesdk or similar you may be required to pickup host
dependencies.  These host dependencies can not always be reconciled within
the scope of other nativesdk components, so if we skip them we can facilitate
this unique situation.

(From OE-Core rev: a1ca125de55a8e7cab402e2ba5737a56d4e890c2)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-03 14:55:00 +01:00
Richard Purdie 58977a94dd package.bbclass: Add missing PKGR, PKGV, PKGE and ALTERNATIVE variables from PACKAGEVARS
These variables all take package name extensions and should be considered in sstate
dependency processing.

This may also fix some multilib alternatives issues (unconfirmed).

[YOCTO #2056]

(From OE-Core rev: 64422f7c5da160050a5454817c8fa9d070104b34)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:45 +01:00
Richard Purdie b3e76b33f3 package.bbclass: Add warning about FILES containing '//'
'//' in a FILES variable causes hard to track down issues with
packaging. This adds a warning and attempts to auto-correct the issue to
try and make the problem more user friendly.

[YOCTO #2448]

(From OE-Core rev: 0e33e314b1d2d3779658696f13a274b20d698667)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 17:32:31 +01:00
Richard Purdie 0d9e893711 Revert "meta: replace os.popen with subprocess.Popen"
This reverts commit e83d8e58a6b107eea87df0ec233a1bc932b2c6e as the conversion
is not correct. Its replacing readlines() calls which generate an array with
what are effectively strings. There are split("\n") calls missing in many
cases so this needs to be reverted until it gets fixed.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 14:21:29 +01:00
Robert Yang 5996b2b58e meta: replace os.popen with subprocess.Popen
Replace os.popen with subprocess.Popen since the older function would
fail (more or less) silently if the executed program cannot be found

There are both bb.process.run() and bb.process.Popen() which wraps the
subprocess module, use it for simplifying the code.

Note: We don't need the "2>/dev/null" or "2>&1" since bb.process.run()
can handle it, it will raise exception when error occurs, we should
handle the exception ourselves if we want to ignore the error.

More info:
http://docs.python.org/library/subprocess.html#subprocess-replacements

[YOCTO #2454]

(From OE-Core rev: e83d8e58a6b107eea87df0ec233a1bc932b2c6ea)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:45 +01:00
Robert Yang e40995e569 meta: replace os.system with subprocess.call
Replace os.system with subprocess.call since the older function would
fail (more or less) silently if the executed program cannot be found

More info:
http://docs.python.org/library/subprocess.html#subprocess-replacements

[YOCTO #2454]

(From OE-Core rev: a07d03cc6f67c88feb9813ae7deb6e4a93552dfe)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:45 +01:00
Mark Hatle 6ac7e9b598 update-alternatives.bbclass: Refactor the implementation
Refactor in order to:
  * Deprecate the old interfaces, but keep them for compatibility
  * Provide a new, interface -- capable of working with split packages
  * Each update-alternative will now set proper "per-file" provides

Note: this adds a warning message when the older deprecated behavior is
used.  The older behavior has been fully tested using oe-core.

(From OE-Core rev: 309117d26de6a87b16406a44a0cefcbaaf7b5d7a)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:37 +01:00
Mark Hatle d03e29fec2 package.bbclass: Add additional debugging for dependencies
When trying to understand why a QA wanring such as:

ERROR: QA Issue: foo rdepends on bar-dev

it is very difficult to figure out where the bar-dev dependency
comes from, since many of them are added dynamically.

This adds a debug statement that says which dependency adds an
rdepends to the system.

Also, while doing this work, it was noted that the same dependencies
were being scanned for over and over.  Instead we shorten the list
by only added to the dep list if the dependency was not already there.

(From OE-Core rev: 257b9e371143421b78a6991ef5401e564918c164)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-25 11:18:03 +01:00
Lianhao Lu 8de572f95a (libc-)package.bbclass: Added MLPREFIX to locale packages.
Added multilib prefix to the locale related package names/dependencies.

(From OE-Core rev: a52f7cf2cc90d918e3250c410995dcc1f3bfd5ee)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-18 15:25:10 +01:00
Richard Purdie c73779d150 package.bbclass: Drop dubious use of packages[0] from do_split_packages and do_split_locales
As the comment says, using packages[0] is rather broken and can be incorrect,
as demonstrated by the recent gdk-pixbuf change. Replacing it with PN is
a bit more correct and more likely to do what was originally intended
by this function.

(From OE-Core rev: 5d0144fe6bd1febc2d1e651bbcff891c80f20b88)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-12 11:23:35 +01:00
Richard Purdie a246af9bf7 package.bbclass: Drop EXPORT_FUNCTIONS use against mapping_rename_hook
The usage of this function renaming and it being called using
bb.build.exec_func() causes needless indirection loops, confusing log
files and seems generally pointless.

This simplification makes the process much simpler and faster. I can't
come up with a good reason why the export_functions functionality is
needed for this function.

(From OE-Core rev: 74daad03ca29a03b0005f7d2b90a0347d5b583a5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-11 18:03:31 +01:00
Richard Purdie 6123ee024b package.bbclass: Ensure kernel modules get stripped
Kernel modules are not marked as executable but we do expect to strip them.
This patch adds in missing code to ensure we do this. Without this images
are getting sigificantly bloated in size.

(From OE-Core rev: 00b0a5f2f51bb3f88bbb9ae558c2859e3c1c406c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-22 16:00:03 +01:00
Andrei Gherzan 00a6199b92 "The suite of statements in a function definition executes with a local namespace that is different from the global namespace. This means that all variables created within a function are local to that function. When the suite finishes, these working variables are discarded."
In this way the needs_ldconfig variable in linux_so never gets True in the statements
below this function. As global statement is generally discouraged, a return value
would be a clean and fast way to solve this issue.

[YOCTO #2205]

RP: Added logic to ensure the value doesn't get overwritten once set
(From OE-Core rev: 6d39af4f85220f20bad09b0fdd3ee0a7ec19c12d)

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>---
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-11 12:57:17 +01:00
Robert P. J. Day 951aa5ea1f Various typoes fixed, all comments or output strings.
Typoes fixed: "enviroment", "editted", "spliting", "scheulder".

(From OE-Core rev: 17e981a857a51b0bec08c929e8539d36d83874b6)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-26 12:13:05 +01:00
Elizabeth Flanagan bdf2d94c35 INCOMPATIBLE_LICENSE: support for spdx and pkg licenses
This adds a few things to the incompatible license functionality

1. INCOMPATIBLE_LICENSE was unable to distinguish any variation
within LICENSE (e.g. GPLv3 v. GPLv3.0). This now utilizes the
SPDXLICENSEMAP of the license indicated as INCOMPATIBLE_LICENSE

2. Given a recipe where the main LICENSE was incompatible but
a package of the recipe was compatible, the entire recipe would
be excluded. This allows us some finer grained control over what
exactly gets excluded.

(From OE-Core rev: a8d7246f7b13ef2636c325263c8bfa22552d7a57)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-25 12:23:38 +01:00
Robert Yang a80203625a package.bbclass: do not split debug pkg when no debugsources.list
We don't have to split the debug pkg if it is null (No debugsources.list
since the find-debuginfo.sh would not generate it for the null pkg).

Serval pkg's debug pkg is null, and there were a few errors: (53 pkgs
had such errors in a core-image-sato build):

log.do_package:sort: open failed: debugsources.list: No such file or directory

[YOCTO #2076]

(From OE-Core rev: f88e3f420b4e95ab5ba4a075df8ed65b817f8b45)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-14 13:17:44 +00:00
Andreas Oberritter b9027a9416 package.bbclass: sort dynamically generated packages
* do_split_packages and package_do_split_locales dynamically add
  packages in order of appearance of os.walk() or os.listdir().
  This order varies between multiple build hosts (and probably
  also between successive builds).
* Sort the list of dynamically added packages, to get a consistent
  and reproducible order.
* This reduces the diffs in buildhistory and improves
  comparability between builds.

(From OE-Core rev: 76f46391239d3e123cfde900c52ca12ac73fd84f)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-13 11:45:12 +00:00
Richard Purdie 19b38a6486 package.bbclass: Drop python depends from rpmdeps
This python depends is added by rpmdeps every time it finds a python
script. This is not necessary since we handle this in otherways. It
also breaks things like nativesdk since the dependency is not renamed.
The easiest solution is just to ignore this dependency.

(From OE-Core rev: 5c8ad2638baac0501cecf38f8d3e8467d56afb8a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-11 18:27:45 +00:00
Richard Purdie b1aeaa8b0d meta: Replace bb.data.expand(xxx, d) -> d.expand(xxx)
sed \
 -e 's:bb.data.\(expand([^,()]*\), *\([^) ]*\) *):\2.\1):g' \
 -i `grep -ril bb.data.expand *`

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-05 10:23:53 -08:00
Richard Purdie 06f2f8ce0a meta: Convert getVar/getVarFlag(xxx, 1) -> (xxx, True)
Using "1" with getVar is bad coding style and "True" is preferred.
This patch is a sed over the meta directory of the form:

sed \
 -e 's:\(\.getVar([^,()]*, \)1 *):\1True):g' \
 -e 's:\(\.getVarFlag([^,()]*, [^,()]*, \)1 *):\1True):g' \
 -i `grep -ril getVar *`

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-05 10:22:56 -08:00
Richard Purdie d01dadfb87 meta/classes: Convert to use appendVar and appendVarFlags
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-05 10:22:36 -08:00
Richard Purdie 7c46f0b109 package.bbclass: Add a sanity check to the debugsrcdir removal code
(From OE-Core rev: 9f6b9d7d0402b883fc3ad3cdead40e838ce31a27)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24 16:11:27 +00:00
Shane Wang 9531161d40 package.bbclass: set package size into pkgdata for hob2's use
Write the size of a package into its pkgdata for hob2 to get the size
and show on the UI for image making.

(From OE-Core rev: 9c446d007957dab36ee2c012f0a5b22494a7a84f)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24 00:39:09 +00:00
Richard Purdie 2fb9aace07 package.bbclass: Remove empty directories created as part of srcdebug handling
We can create directories like /usr/src/debug as part of the debug file
manipulations. If these are going to end up empty, remove them to avoid QA
warnings like:

WARNING: For recipe task-core-x11, the following files/directories were installed but not shipped in any package:
WARNING:   /usr
WARNING:   /usr/src
WARNING:   /usr/src/debug
WARNING: For recipe task-core-console, the following files/directories were installed but not shipped in any package:
WARNING:   /usr
WARNING:   /usr/src
WARNING:   /usr/src/debug

(From OE-Core rev: 4f4451f7c0f9762092eb3dbc995b4afa2572ceb6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24 00:12:02 +00:00
Richard Purdie 12306d01a0 package.bbclass: Optimise the per file rpm handling
Currently a process was being forked off for each individual file
this class wanted to inspect with rpmdeps. This converts it to use
rpmdeps-oecore which allows batch processing of these dependencies.

For do_package for perl, this reduced the time by about 1 minute (33%).

(From OE-Core rev: 548037acd63bd4859f8de8d23a3d12f36ce9f97f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-10 14:38:45 +00:00
Koen Kooi 8d4d9a15c4 package bbclass: allow per package PRIVATE_LIBS
If a recipe packages multiple versions of shlib (e.g. powervr drivers) we only want the shlib code to pickup $PN, not $PN-foo subpackages.
This keeps backward compatibility with the global PRIVATE_LIBS usage if no per package PRIVATE_LIBS are set for a given package. In other words: this doesn't break the firefox recipe.

(From OE-Core rev: ce46dbddef40ae3eef7238ac07438b15bd09e156)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-01 15:15:15 +00:00
Koen Kooi ae3184c96e classes: replace 'Poky' with 'OE-core'
(From OE-Core rev: 1fdcd32520a05465b0d54c062f28bac9cdf74a20)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-01 15:07:42 +00:00
Paul Eggleton ee7fb2b86d classes/package: remove out-of-date notice referring to the OE bugtracker
OpenEmbedded doesn't officially use a bug tracker anymore, and a message
asking the user to fix the metadata could be applied to almost any error
that occurs, so just remove the whole message.

(From OE-Core rev: ee486e30432ffd3ef97ba16511a9a1a38bad3826)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-17 14:53:25 +00:00
Enrico Scholz 866ed43c12 package.bbclass: quote pathname given to objdump
Packaging will fail with executable files containing spaces in their
names. Patch quotes the parameter passed to 'objdump'.

(From OE-Core rev: 7f7db286ca0b70bd5cce643c3b84f77ad45cc786)

Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-17 14:53:22 +00:00
Lianhao Lu 18c88fcec8 package.bbclass: per recipe PRSERV_HOST support
[YOCTO #1126]
Added per recipe PRSERV_HOST PRSERV_PORT support.

(From OE-Core rev: d5b8caac0e7fc4b05c76b4d3da0508e2a53f28cd)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-11 10:37:43 +00:00
Lianhao Lu a05e3a57c6 meta/PRService: Added export/import fuctions.
[YOCTO #1556]
- Modified meta/class/package.bbclass and prserv.bbclass according to
the change in PR service by adding PACKAGE_ARCH into the query tuple.

- Added prexport.bbclass, primport.bbclass to export/import AUTOPR
  values from/to PRService.

- Move PR service related common code to lib/oe/prservice.py.

- Supported reading the AUTOPR values from the exported .inc file
instead of reading it from remote PR service.

- Created a new script bitbake-prserv-tool to export/import the AUTOPR
values from/to the PR service.

Typical usage scenario of the export/import is:
1. bitbake-prserv-tool export <file> to export the AUTOPR values from
the current PR service into an exported .inc file.

2. Others may use that exported .inc file(to be included in the
local.conf) to lockdown and reproduce the same AUTOPR when generating
package feeds.

3. Others may "bitbake-prserv-tool import <file>" to import the AUTOPR
values into their own PR service and the AUTOPR values will be
incremented from there.

(From OE-Core rev: 9979107d8eaf503efd921564385859b1e83dbb3c)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-11 10:37:43 +00:00
Mark Hatle 77edb006bb package.bbclass: Adjust RPM call to use dynamic location for magic files
The magic file could be installed somewhere else if the system native prefix
settings are changed.  Adjust the packaging files to compensate for this.

(From OE-Core rev: 93c0e9915b5c9bf8b0877c76f89de721adfbfd66)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-24 10:05:44 +00:00
Elizabeth Flanagan 30301333f8 package.bbclass: Adding license collection
emite_package_data needs to have LICENSE, as pkgdata is as an
audit of licenses collected during do_populate_license.

(From OE-Core rev: 60f0b866b4b7c4aa337a2ff764455741a73665da)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-08 15:24:32 +00:00
Richard Purdie 0a434ac101 getVar/setVar cleanups
Complete the bb.data.getVar/setVar replacements with accesses
directly to the data store object.

(From OE-Core rev: 2864ff6a4b3c3f9b3bbb6d2597243cc5d3715939)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-27 10:25:34 +00:00
Richard Purdie 7a2458f451 package.bbclass: Ensure paths to rpmmarcos and rpmpopt are set
If rpm-native was built in an alternative location, it may not relocate correctly
unless the rpmpopt and macros paths are explicitly specified.

This fixes errors seen on the Yocto autobuilder where pkgconfig
"provides" entries could disappear leading to image dependency failures.

(From OE-Core rev: fb01bd81197057e62106aac966f9ebc4c5054f97)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-22 13:07:11 +00:00
Henning Heinold fc744a789d package.bbclass: fix path for relative links on elf files, when moved to debugdir
* relative links for elf files like ../foo.so ends up in the
  debugdir with ../.debug/foo.so, this causes infinite fileaccessloops
  fix it by adding an extra "../" to the link path

(From OE-Core rev: 27cf695f1cf259f8c79214e95a0c4bc2c0779b81)

Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-21 16:48:52 +00:00
Richard Purdie f2d077255d package.bbclass: Ensure we tell rpmdeps where to find its magic file
Without this, if rpmddeps came from a sstate package which was relocated
it might not find its magic file and if that happens, requires/provides
in packages could get corrupted. This leads to failures at rootfs time
during builds with messages like:

libdbus-1.so.3 is needed by libdbus-glib-1-2-0.92-r1.armv5te

since the provides would be missing in the dbus package.

(From OE-Core rev: abe2a948905a997314c61a8fcd35e2b42a3f4408)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-17 12:31:01 +00:00
Richard Purdie c8dee9b92d Convert to use direct access to the data store (instead of bb.data.*Var*())
This is the result of running the following over the metadata:

sed \
-e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \
-e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \
-e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \
-e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \
-e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \
-e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \
-i `grep -ril bb.data *`

(From OE-Core rev: b22831fd63164c4db9c0b72934d7d734a6585251)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:51:19 +00:00
Richard Purdie 0182b2bca3 package.bbclass: Fix various problems
Before this change:

a) Ownership and permissions of files copied from packages to
   package-split could get lost during the copy process. This change
   ensures they are preserved.
b) Ownership and permissions of directories could also get lost.
   Most of the complexity in this patch is addressing this problem
   ensuring newly created directories match the source ones being
   copied.
c) There was no warning about directories being created but not
   shipped by any package.

This patch fixes all of the above issues.

(From OE-Core rev: 6021e309e69d823e1467648aee12a32182945569)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-01 17:43:57 +00:00
Mark Hatle 737f8bbb4f Update python dependencies to be simply to "python"
Previously python dependencies were of the format "python(abi) = ..."
This format is not yet supportable within OE, so revert to a form
we know we can handle.

Introduce a change to package.bbclass that ensures it will causes the
sstate-cache's "package" to invalidate.  Since pythondeps changed, the
output of rpmdeps changes, which causes the per-file dependency
information to change.... thus we need to invalidate the cache!

(From OE-Core rev: 30064a98dc9049db4a37f119d15fbb59aa3c8377)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-21 13:42:53 +01:00
Lianhao Lu 99dd3c0b2c image/package.bbclass: Revise multilib support for DEBIAN_NAME.
[YOCTO #1486]
1. image.bbclass: In multilib_sanity_check, duplicated files except
those matching to MULTILIBRE_ALLOW_REP are allowed if they're equal.

2. pacakge.bbclass: Allow DEBIAN_NOAUTONAMES variable to be
automatically mapped in multilib case.

(From OE-Core rev: 66f9045e17c39f5c64a0699b72ea460a0701717a)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-16 18:07:26 +01:00
Tom Zanussi f5a1b3c8f7 package.bbclass: fix spurious 'installed but not shipped' warning
For packages that have files installed that aren't in a subdirectory,
the following build WARNING is emitted (this for initramfs-live-boot
as an example):

WARNING: For recipe initramfs-live-boot, the following files were
 installed but not shipped in any package:
WARNING:   init

The problem is that the filenames added to the 'seen' array are always
added with a path separator at the beginning of the filename, but when
the package dir is walked for comparison, any files at the top-level
will be missing the beginning path separator and the comparison will
fail despite the fact that the file was actually packaged.  This
because the remainder between the dirname and the dvar base name is
used in the path join and in the case of files at the top-level, the
remainder is the empty string, where it should be '/' for comparison
purposes.

(From OE-Core rev: cb19503139b9102f02ba3e5be63d5e85f280f2ef)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-16 17:23:59 +01:00
Richard Purdie c7869b4d4c package.bbclass: Ensure task's variable dependencies are correctly caputred in the sstate checksum
[YOCTO #1388]

This change is needed to correctly add the dependencies for the do_package
task which bitbake is unable to automatically detect itself.

(From OE-Core rev: 0614b9aa62a46f81d334ca4230080cc707347f3c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-31 19:38:30 +01:00
Dongxiao Xu de36669053 package.bbclass: Fix recrdeptask of image type recipes
For image type of recipes, we need to define do_package_write as its
do_build recrdeptask, which ensures that all packaging types listed in
PACKAGE_CLASSES will be built out.

[YOCTO 1370]

(From OE-Core rev: b68cd33673fdc17711d7b9fde9cc23b0d8498c17)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-29 13:48:00 +01:00
Lianhao Lu 57bd62ad5c package(_ipk).bbclass: opkg using ALL_MULTILIB_PACKAGE_ARCHS
[YOCTO #1345]
The new variable ALL_MULTILIB_PACKAGE_ARCHS contains all the values of
PACKAGE_ARCHS for each multilib variants. The opkg backend now uses this
new value insteald of the PACKAGE_ARCHS to update the opkg indexes and
to generate the opkg configuration files. This allows the normal
packages and multilib packages may be installed into the same rootfs.

(From OE-Core rev: b774bf44ef004276da12a83ebd69715c00b596ac)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-17 15:14:56 +01:00
Chris Larson ce110eddfc package: allow setting a section for locale packages
(From OE-Core rev: 521cab0239352e3b4316183c20e63cc06f5ae92b)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-12 17:21:53 +01:00
Chris Larson 07de9dc55c package: include SECTION in the pkgdata
(From OE-Core rev: 47664bb8309f5d791d7aa040a38c7324cb4f14e6)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-12 17:21:53 +01:00
Yu Ke 350a8916c3 do_split_packages: revise for multilib case
in multilib case, the PACKAGE_DYNAMIC is overrided with multilib
prefix. Take multilib:lib64-perl as example. the "perl-module-*"
will become "lib64-perl-module-*"

the output_pattern in do_split_packages is designed to work with
PACKAGE_DYNAMIC, so it should be applied with the same logic, i.e.
overriding with multilib prefix. otherwise the do_split_package will
split incorrect files

this patch implements the mulitlib override logic for do_split_packages

We also need to rename the extra_depends to support multilib case
(from Dongxaio Xu).

(From OE-Core rev: a4bc86713892502aeefbbdb3053e8cf1e1fc0bdb)

Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27 16:18:50 +01:00
Richard Purdie c18aa8d065 multilib: Add support for compiling recipes against multiple ABIs
This patch adds the core multilib class which can be used along with a
parameter specifying the mutlilib to use in BBCLASSEXTEND.

The MLPREFIX variable is added and can be used in cases where its too
difficult to dynmaically work out where a mutltilib prefix is needed
to be added to a variable.

This includes:
  * SHLIBSDIR and PACKAGE_ARCH fixes from Lianhao Lu.
  * PACKAGE_DYNAMIC mapping from Yu Ke
  * PACKAGE_INSTALL mapping from Yu Ke
  * RPROVIDES mapping from Yu Ke
  * TARGET_VENDOR fix from Mark Hatle
  * Ignorning *-native-runtime dependnecies as well as *-native from Yu Ke
  * Map PKG and ALLOW_EMPTY from Dongxiao Xu
  * Ensure RCONFLICTS and PKG field dependencies are remapped (from Dongxiao Xu)
  * Ensure PN and MLPREFIX are set at the same time to ensure consistent BPN values (Yu Ke)

(From OE-Core rev: 5d9453049915db48ec4b5972e12287417ebb61a2)

Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27 16:18:40 +01:00
Mark Hatle 30ddd02277 package.bbclass: fixup_perms - change symlink processing
We switch to using os.lchown in order to avoid following a symlink.

We also now check if an item is a symlink, if so we avoid the
os.chmod as a symlink inherits the mode of it's target.

(From OE-Core rev: c64d075b3d367e6c76aafa17782585d026b1f31e)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27 15:45:48 +01:00
Richard Purdie e8e6f9df59 package.bbclass: Make unshipped packages message more readable
(From OE-Core rev: bc73fa1256d678c09c0d9b50e0153623861dcf32)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 13:36:56 +01:00
Mark Hatle 8781c843cf classes/package.bbclass: Add fixup_perms
Add a new function that is responsible for fixing directory and file
permissions, owners and groups during the packaging process.  This will fix
various issues where two packages may create the same directory and end up
with different permissions, owner and/or group.

The issue being resolved is that if two packages conflict in their ownership
of a directory, the first installed into the rootfs sets the permissions.
This leads to a least potentially non-deterministic filesystems, at worst
security defects.

The user can specify their own settings via the configuration files
specified in FILESYSTEM_PERMS_TABLES.  If this is not defined, it will
fall back to loading files/fs-perms.txt from BBPATH.  The format of this
file is documented within the file.

By default all of the system directories, specified in bitbake.conf, will
be fixed to be 0755, root, root.

The fs-perms.txt contains a few default entries to correct documentation,
locale, headers and debug sources.  It was discovered these are often
incorrect due to being directly copied from the build user environment.

The entries needed to match the base-files package have also been added.

Also tweak a couple of warnings to provide more diagnostic information.

(From OE-Core rev: 8c720efa053f81dc8d2bb604cdbdb25de9a6efab)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30 22:54:04 +01:00
Richard Purdie 1f0e24236f package.bbclass: PACKAGELOCK is a shared lock file so inform sstate as such
(From OE-Core rev: 60f74e47160508c9150d880b1f627dc7e3f0d3ab)

Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-09 15:48:26 +01:00
Khem Raj c412674cf8 package.bbclass,prserv.bbclass: Compare USE_PR_SERV with "1" or "0"
Value of USE_PR_SERV is either "1" or "0" looking at
settings in bitbake.conf
USE_PR_SERV = "${@[1,0][(bb.data.getVar('PRSERV_HOST',d,1) is None) or (bb.data.getVar('PRSERV_PORT',d,1) is None)]}"
So we compare the strings

(From OE-Core rev: 5f6179324ac3956ad87123005bfcab4e8f30e67b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-29 09:40:04 +01:00
Lianhao Lu 66d27435be classes/package(prserv).bbclass: Get PRAUTO and use PKGV/PKGR.
1. Added package_get_auto_pr to PACKAGEFUNCS to get the auto
incremented value(PRAUTO) from remote PR service.

2. use PKGV/PKGR for pkgdata which will be used by package_write_xxx.

3. Added supporting functions in prserv.bbclass.

(From OE-Core rev: b1f6120c04731d3d66f322ce550b0d223c118dab)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-27 17:55:49 +01:00
Chris Larson e3d0d9897e Move packagedata code into oe.packagedata (sync from OE)
(From OE-Core rev: e6858627ab087f2f25ebbd6c4422eeae35f3b0ac)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-20 19:07:51 +01:00
Phil Blundell f5cc1f2c03 backport USE_LDCONFIG and PACKAGE_SNAP_LIB_SYMLINKS from oe master
This is a backport of the corresponding package.bbclass functionality
(which is needed by micro) from the openembedded tree.

(From OE-Core rev: 600dbb7cb384c2290af38b993a9bea3a4dfc4494)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-17 15:14:47 +01:00
Koen Kooi 6e50e0c6b0 package.bbclass: convert unpackaged file message from 'info' to 'warn' so that it shows up on the console
(From OE-Core rev: c4365aac40718286d7cc74a0b387cdb8f47e7723)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-09 14:09:07 +01:00
Mark Hatle 7517529b9f package.bbclass: Fix missing debug src files
The previous change used egrep instead of fgrep.  We need to use fgrep because
there are expression like syntaxes in some file names, we need exact matches.

(From OE-Core rev: 0de88dc9aa30f29ec1ab5cc0c541c8be859392ab)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-16 16:45:06 +00:00
Mark Hatle d8a82c2e79 package.bbclass: Change the debug directory to avoid conflicts
The debug directory before was below ${WORKDIR}.  Unfortunately if
something was based on a git tree, it meant that "git" was the
directory name being preserved for usr/src/debug usage.  The patch
moves to using "${WORKDIR}/.." as the base, to ensure that the
WORKDIR naming is used in usr/src/debug.

(From OE-Core rev: dbc752c75786b0985fbeb4986467ae01290f424a)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:46:01 -08:00
Richard Purdie 3edadc9802 package.bbclass: Rewrite package_do_filedeps() to reduce the amount of subprocesses created and improve speed
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-25 22:43:34 +00:00
Richard Purdie b40b193741 package.bbclass: Fix debug sources directory creation to reference the target system
Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
2011-02-25 22:43:33 +00:00
Mark Hatle 40ea19d6e1 package.bbclass: Refactor split and strip function
Refactor the function to eliminate additional interations/walks of the
filesystem..

Elimiate multiple runs of the external 'file' command as well.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-25 22:43:33 +00:00
Mark Hatle 16102e1890 Revise stripping and splitting of debug information
We now support two styles of debug information generation, the '.debug' style,
which is the same as previously implemented.  This style simply splits the
debug information and makes it available in the same general directory.

  /bin/foo -> /bin/.debug/foo

The new 'debug-file-directory' style splits the debug information and places
it into the single debug-file-directory, /usr/lib/debug:

  /bin/foo -> /usr/lib/debug/bin/foo.debug

Both also find and copy all referenced source code to a new /usr/src/debug
directory.  This allows the -dbg files to be used for stand-a-lone debugging
on or off the target device.

File stripping is now handled as a seperate operation from file splitting.
This allows us to split the debug information, but also leave it in the
original file -- or prevent the debug information from being split.

Also enhance the comments within local.conf.sample to provide a better
understanding of the control the user has over debug file generation.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-25 22:43:33 +00:00
Richard Purdie fa1e7d52b2 package.bbclass: Ensure dependency version information is preserved
[BUGID #176]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-25 16:34:47 +00:00
Dongxiao Xu 0d0279a881 package.bbclass: Use hard link for package split instead of copy
When doing package split, we use hard link instead of copy, which can
save about 10% disk space when building poky-image-minimal.

If fail, it will fall back to the copyfile function.

[Updated by Richard to use os.link and avoid an exec() call per file]

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2011-02-25 15:58:42 +00:00
Richard Purdie 0b17cbc8f2 package.bbclass: Unbreak per file dependencies and blacklist doc packages
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-25 12:13:56 +00:00
Mark Hatle 6f6bffe5df package.bbclass: Breakout the strip from the populate_packages
Break out the file split/strip from the populate_packages.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-12 00:30:29 +00:00
Richard Purdie d1a1635a45 package.bbclass: Only set recrdeptask for do_build if packaging is enabled for the recipe
Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
2011-02-10 12:01:04 +00:00
Mark Hatle 3e6d91ece0 package.bbclass: Preserve hard links!
Hard links were not being preserved in the move from the install image
-> package copy.  Again they were being discarded in the package ->
packages-split copy as well.

By preserving the hard links we have the potential to save a ton of rootfs
space.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-09 22:46:30 +00:00
Richard Purdie 51d7e314f8 package.bbclass: Optimise file dependency calculations to ignore locales and kernel modules as these never have dependencies we'd detect anyway
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-03 20:18:52 +00:00
Mark Hatle 8a52fda62f bitbake.conf & package.bbclass: Use default SUMMARY and DESCRIPTION
A new default SUMMARY and DESCRIPTION was defined for any package that
previously did not contain one.  This value is based on the original
SUMMARY_${PN} value.

The new default SUMMARY and DESCRIPTION is used as a basis for all of
the automatic summary and descriptions for the various package splits,
include ${PN}, ${PN}-dbg, ${PN}-dev, ${PN}-doc, and locales.

A recipe may also override any of the automatic summaries by simply
specifying the value.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-03 11:48:48 -08:00
Richard Purdie 95f13b1687 package.bbclass: Ensure SUMMARY is written to pkgdata as well as DESCRIPTION
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-02 14:44:37 +00:00
Paul Eggleton c75ad4694c package.bbclass: add nodeprrecs flag to RRECOMMENDS_pkgname
Setting this flag disables the normal additions to RRECOMMENDS for a package
(useful when splitting dev / dbg packages).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-02-01 16:26:03 +00:00
Richard Purdie eed008baf2 package.bbclass: Disable EXPORT_FUNCTIONS for do_package
As discovered by Lianhao Lu and Kevin Tian:
"""
do_package checksum changes with switching the order In PACKAGE_CLASSES, e.g:

From
PACKAGE_CLASSES = "package_rpm package_ipk"
To
PACKAGE_CLASSES = "package_ipk package_rpm"

This is undesired since the order only matters for final rootfs generation. The actual
cause is related to how do_package is generated, which depends on when
package.bbclass is first brought in.
"""

Since we never need the EXPORT_FUNCTIONS funcationality for do_package we just drop
it which removes this problem and stablisised checksums.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-31 16:22:14 +00:00
Mark Hatle f6ddba2a9d rpm: Uprev to RPM 5.4.0
Update RPM to the latest release, RPM 5.4.0.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-01-28 17:52:55 +00:00
Dongxiao Xu 7f41f1a888 bitbake: machine specific sysroots implementation
This commit changes the sysroots path to be machine specific.

Changes includes:

1) STAGING_DIR_TARGET and STRAGING_DIR_HOST points to machine specific
paths.

2) task stamp files. Adding ${MACHINE} info into stamp files for
do_populate_sysroots and do_package tasks. Add a BB_STAMPTASK_BLACKLIST
to keep native, nativesdk, crosssdk, and cross-canadian stamp unchanged.

3) siteconfig path. Separate the site config path for different machines
to avoid one machine adopting the cache file of another machine.

4) sstate. Add machine name to sstate manifest file.
Change relocation code for sstate paths since sysroot is machine.
Keep native, nativesdk, crosssdk, and cross-canadian unchanged.

5) toolchain scripts. Change the environment path to point to machine
specific sysroots in toolchain scripts bbclass.

6) Relocate la files when populating to a different machine of the same
architecture.

7) Exclude STAGING_DIR_TARGET and STAGING_DIR_HOST parameter from sstate
siginfo since they contain ${MACHINE} information.

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2011-01-25 12:25:46 +00:00
Richard Purdie ede381d56b package.bbclass: Take a shared lock when reading to improve do_package parallelism
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-19 11:04:15 +00:00
Kevin Tian d9ff2f897a package.bbclass: make sure 'sysroots' created before lockfile
package sstate requires a lock under sysroots/, which however may not be
created when sstate_setscene functions are executed and then causes failures.
here we make sure 'sysroots' created before do_package_setscene is executed.

Signed-off-by: Kevin Tian <kevin.tian@intel.com>
2010-11-07 20:40:06 +00:00
Richard Purdie 8e2150e5dc meta/classes: Mark do_package_write and do_build as noexec tasks
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-11-06 14:33:45 +00:00
Richard Purdie 48b42dae51 classes: Only enable fakeroot on setscene tasks with packaging
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-10-22 16:34:06 +01:00
Richard Purdie 36f1ae42fe pseudo/fakeroot: Move the pseudo directory creation into bitbake
If sstate was used to accelerate a build, the pseudo directory might not have
been created leading to subsequent task failures.

Also, sstate packages were not being installed under pseudo context meaning
file permissions could have been lost.

Fix these problems by creating a FAKEROOTDIRS variable which bitbake ensures
exists before running tasks and running the appropriate setscene tasks under
fakeroot context.

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-10-22 13:00:40 +01:00
Richard Purdie 2d93cb0a0d Revert "classes: Disable setscene tasks for initial testing"
This reverts commit 084ec86402.
2010-10-05 22:26:33 +01:00
Richard Purdie fac3ca94a2 package.bbclass: Ensure all packages package when running a build
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-09-08 15:55:10 +01:00
Mark Hatle c849ec75e7 rpm: Fix autoconf/libtool usage
In order to resolve a host-contamination problem, we re-work the way that
autoconf and friends are invoked during the compilation of RPM.

This has a side effect of fixing another bug where RPM was being renamed
HOST_ARCH-HOST_OS-rpm.  So we remove the "fixes" for that behavior as well.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-09-03 18:30:47 -07:00
Mark Hatle 84f7f70308 package_rpm: Enable per file dependencies
Switch the per file dependency handing to passing the information to
rpm via the standard 'external' dependency scripting.  This ensures that
the dependencies found by RPM exactly match the ones presented by
package.bbclass.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-09-02 10:01:22 +01:00
Mark Hatle f29f9364a3 package.bbclass: Fix per-file dependency generation
The overall file list was being constructed with the wrong variable, it
should have had FLIST in the name.

Also it was possible to construct the system with some illegal variable
names.  Names that would have include "[]".  So translate these away...

Finally fix an issues where a filename with an _ could cause a package
variable conflict.  Again translate this away..

Signed-off-by: Mark Hatle <mhatle@windriver.com>
2010-08-23 20:52:45 +01:00
Richard Purdie ca95d02ce0 package.bbclass: Fix shlibs race
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-23 15:41:21 +01:00
Mark Hatle b9f4ff1386 package.bbclass: Fix do_shlibs
The current packages shlibs processing is written to a local temporary file.
This file is not consulted when evaluting the provider of the dependency,
instead we need to cache the local values into the dictionary while we write
the temp file.

Signed-off-by: Mark Hatle <mhatle@windriver.com>
2010-08-23 15:27:36 +01:00
Richard Purdie 86c2b56705 package.bbclass: If files are unreadable, add read access for stripping
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-22 00:28:28 +01:00
Mark Hatle 54e3a82d9c package.bbclass: Add perfile dependency identification
Using the rpmdeps commands, we enable the discovery of per-file dependencies.
These dependencies are generated for all packages, and may or may not be used
by any given packaging mechanism.  Currently RPROVIDES and RDEPENDS are
generated in this process.

Signed-off-by: Mark Hatle <mhatle@windriver.com>
2010-08-20 23:39:55 +01:00
Richard Purdie 084ec86402 classes: Disable setscene tasks for initial testing
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-19 22:36:26 +01:00
Richard Purdie 29ca893649 package.bbclass: Implement packaged-staging2
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-19 20:06:25 +01:00
Richard Purdie 6c7bc9e2eb package.bbclass: Document the process followed in the class from a high level
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-12 21:35:48 +01:00
Richard Purdie a0dd61eb2b package.bbclass: Use --preserve-dates option when stripping kernel modules
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-10 15:36:29 +01:00
Richard Purdie d3630f8174 kernel/package.bbclass: Handle kernel module stripping centrally
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-10 14:47:41 +01:00
Richard Purdie 246dbec868 package.bbclass: Clear package directory copy before installing new files to prevent stale data
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-20 17:11:27 +00:00
Richard Purdie 5716a14bf4 package.bbclass: Fix runtime_maping_rename so version information isn't removed
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-19 10:13:10 +00:00
Richard Purdie b772c8cde5 bitbake.conf/base.bbclass: Rename the staging directory to sysroots and the populate_staging task to populate_sysroot
This change makes the purpose of the staging directory more obvious and
the taskname more true to what it now actually does.

The layout version number is increased due to the change in layout
but code to convert existing directories and insert a symlink for
backwards compatibility is included.

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:42 +00:00
Richard Purdie c54117458a classes: Remove and sanitise import statements
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:28 +00:00
Richard Purdie 7501b625b6 package.bbclass: Add the option to declare package preprocess function hooks
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:22 +00:00
Richard Purdie 4b0332c431 package.bbclass: Change to operate on a copy of the install directory instead of directly. Also take the opportunity to rename the temp directories so their function is clear
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:22 +00:00
Richard Purdie 0eee29e451 package.bbclass: Remove hardcoded use of PKGDEST variable
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:22 +00:00
Richard Purdie 4f4a3da843 package.bbclass: Move variable checks to one place making the code more readable
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:22 +00:00
Richard Purdie ae0e1ad29b package.bbclass: Cleanup getVar syntax to use True, not 1 as third argument
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-10-29 23:24:19 +00:00
Richard Purdie 3927e38eba Merge ssh://gitserver@git.pokylinux.org/poky 2009-04-28 08:24:11 +01:00
Koen Kooi f94bd6b312 package bbclass: add an 'allow_links' param to get symlinks packaged, usefull for splitting out libraries 2009-03-11 12:05:53 +01:00
Richard Purdie be10b46b73 base.bbclass: Use explode_deps from bb.utils and remove the obsolete base.bbclass version 2009-02-05 23:54:11 +00:00
Richard Purdie c2c16bced8 base.bbclass: Move package metadata handling functions into their own class file 2009-02-05 23:54:11 +00:00
Richard Purdie 628db3a7cf package.bbclass: Ignore virtual-locale- packages when building -dev and -dbg dependency chains
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5399 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-10-02 22:05:09 +00:00
Richard Purdie 5bcae485f5 package.bbclass: Write out extra useful data into the pkgdata files
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5388 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-10-02 19:56:19 +00:00
Richard Purdie 9a21f65eef package.bbclass: Adjust to handle split packages already being present in PACKAGES
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5177 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-09-10 22:29:43 +00:00
Richard Purdie ba239b002f package.bbclass: Skip symlinks when searching for shlib dependencies since we can cross into the build system binaries
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4838 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-07-15 10:56:56 +00:00
Marcin Juszkiewicz d3f559d86d package.bbclass: changed library regexp to get dependencies for opensync plugins properly
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4696 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-06-18 08:37:33 +00:00
Richard Purdie 3b53488987 bitbake.conf/siteinfo.bbclass/package.bbclass: Add in support for 'darwin8'
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4424 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-05 22:19:28 +00:00
Marcin Juszkiewicz 02a180ab6f package.bbclass: unbreak
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4242 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-11 20:37:51 +00:00
Richard Purdie 028178b722 package.bbclass: Add patch to try and handle dynamic librbary dependencies on darwin through libtool
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4237 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-11 15:19:45 +00:00
Richard Purdie 7c097c7812 package.bbclass: Sync with OE.dev
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4062 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-03-19 16:05:35 +00:00
Richard Purdie 8dac31d678 package.bbclass: Avoid double suffix depchain packages
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3711 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-02-07 20:20:34 +00:00
Richard Purdie 69683bfe8c package.bbclass: Abstract shlibs path to SHLIBSDIR variable
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3576 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-01-23 21:03:26 +00:00
Richard Purdie 822779e598 package.bbclass: Fix shlibs and pkgconfig magic to use HOST_SYS, not TARGET_SYS
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3511 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-01-17 21:51:05 +00:00
Richard Purdie 0f1ddc5c32 package.bbclass: Account for DEPENDS in -dev packages
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3439 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-01-09 13:50:38 +00:00
Richard Purdie bbb0b8bba7 package.bbclass: Various cleanups and bugfixes, some form OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3347 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-12-19 11:07:14 +00:00
Richard Purdie 6480e3a2f6 package.bbclass: Don't strip files in .debug directories
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3346 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-12-19 10:32:12 +00:00
Richard Purdie 3526acda1a package.bbclass: Remove debug code
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3245 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-11-27 15:09:56 +00:00
Richard Purdie 48c7f7fc85 package.bbclass: Remove PKGMAPS functionality and supersede with pkgdata. Remove duplicate unneeded PACKAGES checks.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3225 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-11-24 23:06:56 +00:00
Richard Purdie c065977948 classes: Use internal bitbake functions and fix packaging unlocking on error paths
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3222 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-11-24 14:55:57 +00:00
Richard Purdie 6e23136cc7 package.bbclass: Make populate_packages copy files, not move them during do_package
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2950 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-10-23 21:57:31 +00:00
Richard Purdie 62b67b04d4 package.bbclass: Remove depchains packaged() check. This broke after pkgdata was split for multimachine issues and I'm not sure we need/want it anyway, we're only dealing with Recommends, not Depends
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2824 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-10-02 14:19:54 +00:00
Richard Purdie 82bdad4c78 package.bbclass: Append to do_package[deptask], cleanup up PACKAGES checks, generate .packaged file for depchains benefit (fixing -dev and -dbg package dependencies). People should wipe do_install stamps and rebuild to fix package dependencies
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2815 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-27 11:52:15 +00:00
Richard Purdie f403f6ef10 package.bbclass: Cleanup install references into a configurable variable
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2681 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-03 14:16:12 +00:00
Richard Purdie d475a771eb package.bbclass: Fix typo
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2550 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-24 10:59:50 +00:00
Richard Purdie 9bb91785c9 package.bbclass: Add back package_write task in a new form
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2535 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-21 22:39:57 +00:00
Richard Purdie a4b8304b62 package.bbclass: More pkgdata fixes, (install task needs to rerun on existing builds)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2530 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-21 11:51:25 +00:00
Richard Purdie 48fd37f5f9 packaging: Split deb and ipk creation into separate tasks so changing the packaging type means the new type of packages are automatically generated.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2526 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-21 09:37:30 +00:00
Richard Purdie 7024f1af86 package.bbclass: Deal with write protected files correctly
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2374 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-06 14:05:51 +00:00
Richard Purdie dd51fc0ffb package.bbclass: Try stripping files more enthusiastically
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2372 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-06 09:10:08 +00:00
Richard Purdie 60b4328491 package.bbclass: Convert runstrip shell into python
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2371 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-06 08:54:41 +00:00
Richard Purdie cee4b2a05a package.bbclass: Disable locale RDEPENDS since it currently does nothing due to broken depends, breaks meta-toolchain and is incompatible with debian
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1965 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-06-18 11:36:18 +00:00
Richard Purdie 9697c0ca8b package.bbclass: do_package[deptask] only needs to be set when PACKAGES != ""
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1619 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-05-09 09:54:54 +00:00
Richard Purdie aca29f112c package.bbclass/insane.bbclass: Don't set task dependencies when PACKAGES is empty
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1455 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-04-10 11:23:14 +00:00
Richard Purdie 36875b21fc package.bbclass: Adjust package_depchains to work for cases where multiple pre or postfix packages are specified
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1433 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-04-04 11:06:37 +00:00
Richard Purdie 69fbfd5c69 package.bbclass: Only need file-native if packaging
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1428 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-04-03 11:46:15 +00:00
Richard Purdie 409335beae classes: Rework core dependencies to work properly at the task level
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1427 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-04-03 11:31:02 +00:00
Richard Purdie 887b8b1289 package.bbclass: Improve recommends dependency code to catch all dependencies for -dbg and -dev packages, not just some
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1409 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-03-29 09:49:07 +00:00
Ross Burton 968b14a121 Fix spelling
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1374 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-03-21 10:11:50 +00:00
Ross Burton 56a65b34e8 Fix bashisms
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1281 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-02-21 17:21:43 +00:00
Richard Purdie 2dc275c3ca package.bbclass: Add fakeroot-native as a PACKAGE_DEPENDS
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@985 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-11-29 15:14:05 +00:00
Chris Larson d726bba0e0 package.bbclass: depchains: don't -destructively- set the pkg's RRECOMMENDS.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@823 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-27 19:25:05 +00:00
Richard Purdie 7759703169 package.bbclass: Partially fix another dubious use of packages[0]
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@812 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-22 12:06:41 +00:00
Richard Purdie 2af3b213e5 package.bbclass: Fix split_locales to remove spurious references to -dbg packages. The way it selects the principle package name needs totally reworking as the current code is flawed but apply a workaround for now (this is unrelated to other changes to package.bbclass)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@810 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-21 22:03:13 +00:00
Richard Purdie 866ab593a0 package.bbclass: Sync with OE upstream
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@808 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-20 16:09:53 +00:00
Richard Purdie e2b821a834 package.bbclass: Split into two tasks, one which prepares the packages and then package_write which actually generates the packages. The two stage approach allows us to avoid circular dependency issues from classes like debian.bbclass. As the data being emitted into pkgdata/ changed, you need to either wipe tmp or rerun the do_install/do_package tasks (wipe the do_xyz stamps from the stamps dir). Everything will repackage anyway due to the new task.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@807 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-20 16:09:05 +00:00
Richard Purdie 49d42d9fe6 base.bbclass, package.bbclass: Clean up and document. Should be no actual code changes
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@806 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-10-20 14:31:06 +00:00
Chris Larson 8d804ea40a Merge devgen branch to trunk.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@743 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-09-21 16:29:02 +00:00
Chris Larson dd9ff71de4 Package.bbclass: sync with upstream oe legitimize_package_name.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@730 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-09-20 16:40:07 +00:00
Richard Purdie 04f6953333 classes: Reorder tasks so staging occurs after packaging. Add do_install into the task chain with dirs fix. Changes merged from OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@727 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-09-18 20:31:39 +00:00
Richard Purdie 283e9868e7 classes/base.bbclass:
* Add stamps for do_fetch task
  * Remove empty NOTE messages
  * Add do_configure task dependecy for DEPENDS handling
classes/debian.bbclass:
  * Add do_package task dependecy for RDEPENDS handling
classes/image_ipk.bbclass:
  * Add do_package task dependecy for recursive RDEPENDS handling
classes/package.bbclass:
  * Add do_package task dependecy for DEPENDS handling
classes/rootfs_ipk.bbclass:
  * Derive image PR from DATE and TIME
  * Add stamps to do_rootfs task (PR changing will trigger rebuilds instead)


git-svn-id: https://svn.o-hand.com/repos/poky/trunk@605 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-08-14 00:38:08 +00:00
Richard Purdie 25f46620dd Update debug packages to place symbol files in a .debug directory - fixes certain packaging problems
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@578 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-07-28 15:12:05 +00:00
Richard Purdie 2ca73b57dc Add automatic generation of -dbg packages. These contain the debug symbols that are stripped from binaries and the symbols are linked to the original binaries via the gnu-debuglink section. If the -dbg packages are installed, oprofile and gdb will use them for symbol lookup.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@546 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-07-24 08:35:37 +00:00
Richard Purdie b2f192faab Rename /openembedded/ -> /meta/
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@530 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-07-21 10:10:31 +00:00