Commit Graph

76 Commits

Author SHA1 Message Date
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
Darren Hart c37b2094cb insane.bbclass: print full path on invalid LICENSE_FILES_CHKSUM
Currently only the basename is printed when os.path.isfile() returns a failure
for the license file. If the file is present, but in the wrong directory, this
can be non-obvious to debug. Use the full path instead.

Make a minor grammatical correction in the error message while we're at it.

(From OE-Core rev: 80bd0c774fb691977b20e2d775212d849a33bf2b)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-20 17:13:37 +01:00
Richard Purdie b5bdb6a5dc insane: Promote most warnings into QA errors by default
We agreed a while back that we'd start ERRORing on QA issues, not just
WARNING about them. This patch changes the default QA levels to error
on everything except ldflag and useless rpath issues.

It also stops giving out QA warnings about desktop files since it
adds noise to the build and until someone plans to seriously tackle
that problem, its pointless.

We can promote the ldflag and rpath warnings too, when the issues in
OE-Core are resolved (they're mostly there now, just a few more to go).

(From OE-Core rev: f9305dac1926207c0ed580168708a18ce2581891)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-29 16:46:47 +01:00
Dmitry Eremin-Solenikov 1b449dd0b0 insane.bbclass: don't warn on .so files in -nativesdk packages
There is no point in warning against .so symlinks in -nativesdk
packages. They have to contain such links, so shut up the warning.

(From OE-Core rev: 287d02a731e45ce5d843db1fd4d78ba17e9ed487)

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-22 05:12:29 +01:00
Chris Larson f1982dfb52 insane: add linux-gnu to the platform data
(From OE-Core rev: 206f1501b0ccdd971ee40f3d112b4756077a9af9)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-12 17:21:52 +01:00
Nitin A Kamble 153ae95c9b insane.bbclass: add entries for linux-gnux32
For x86_64 new ABI : x32, there is a new
name for the TARGET_OS: linux-gnux32

(From OE-Core rev: 9dd0a7bf64ca2ca3613ab45dc779e9dcc1592342)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-09 15:17:57 +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
Kumar Gala ea82abad76 insane.bbclass: Recognise powerpc64
(From OE-Core rev: a7a03e7c683b30f525a5858f586f3f99ce2daf57)

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-22 11:56:49 +01:00
Phil Blundell 5608570089 insane: improve diagnostic for redundant rpath
Make it more obvious which file, and which recipe, are at issue.

(From OE-Core rev: 207a2176bdebe217daf81d5c5b1d2ab4ab2e6adc)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 22:20:28 +01:00
Phil Blundell 122ccf2657 insane: make GNU_HASH check slightly more robust (avoids false negatives with gold); add check for useless rpaths
It isn't safe to make assumptions about the order of the entries in the dynamic section.  Fix the ldflags test to cope with the case where GNU_HASH comes before NEEDED and/or INIT.

Also, add a new warning for binaries which contain useless (but benign) rpath entries pointing to the default search locations.

(From OE-Core rev: 9adac72a77dafd2a203e29beec0b65f0ef5f2cb6)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-14 15:07:50 +01:00
Paul Eggleton 7354fc9213 insane.bbclass: skip rdepends QA checks for kernel / modules
The kernel and module recipes have very few dbg/dev packages, however
they can easily have false positive results from the rdepends QA checks
(e.g. kernel-module-lirc-dev). Thus disable these tests for any recipe
that inherits kernel or module-base.

(From OE-Core rev: 7a383f8ae8433c14b6995966216b9e6e81ea6a51)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-12 15:22:09 +01:00
Paul Eggleton 18ce7e2ef3 insane.bbclass: fix error/warning status being inverted
Fix package_qa_handle_error so that it returns the correct values in order
to determine error/warning status.

(From OE-Core rev: a66ed717f5f5991ee4072df67428564677e7d220)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-08 17:35:03 +01:00
Paul Eggleton 34ea005d6a insane.bbclass: allow dev-deps to be skipped via INSANE_SKIP
Add the missing check in package_qa_check_rdepends to allow dependencies
from non-development packages on development packages to be skipped.

(From OE-Core rev: 26fd8892337e60aa439cedde51b15c42a6fd8540)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-08 17:35:03 +01:00
Adrian Alonso 0156ed6731 insane: add microblaze little endian target info
* Add microblaze little endian target info to
  package_qa_get_machine_dict

(From OE-Core rev: 33679729f0dafedb143e2dd6174472de46fc36fe)

Signed-off-by: Adrian Alonso <aalonso@secretlab.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-07 13:45:31 +01:00
Richard Purdie e69f0f8796 insane.bbclass: Fix indentation error
(From OE-Core rev: 128261100809f16517304739e30cdd73bd951651)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 14:04:29 +01:00
Richard Purdie 88ad4f308a insane.bbclass: Add warnings for packages which are not -dev packages which depend on -dev packages
Based on some code from Phil Blundell but reworked against insae.bbclass changes.

(From OE-Core rev: 2e06a1a843756e9d50291c4533b10096af2d852b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 14:01:44 +01:00
Richard Purdie 7e07f03bc4 insane.bbclass: Allow INSANE_SKIP to work on a per test basis
(From OE-Core rev: fbff17f0f01db55c7093f089ec06840179c389bd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 11:39:09 +01:00
Richard Purdie 31ea94b217 insane.bbclass: Start to rework this so specific checks can be easily made warnings/errors
This patch means the warning/error handling can be controlled from local.conf
and/or from the distro level and no longer uses numbers but strings instead.

The system becomes extensible so that other classes can extend the path QA
checks at least.

It also removes all th duplicate error message code, we should have *one*
good error message.

Much work remains including making INSANE_SKIP take the classes of QA test
to skip but its a start.

(From OE-Core rev: 0fbe849b56d6457b6547a1202c4938d35316d8b8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-01 23:27:27 +01:00
Otavio Salvador e646a99972 insane.bbclass: skip license checksum if LICENSE is "CLOSED"
(From OE-Core rev: 2d2d7710cc51c2656e89c3aec3f3fc0a5b65eb30)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-10 09:57:08 +01:00
Adrian Alonso 3e1f013ed3 insane: add micrblaze target info
* package_qa_get_machine_dict
* Add microblaze dic entry for QA
* Prebuilt toolchain triplet microblaze-unknown-linux-gnu-
* TARGET_OS is linux-gnu for this toolchain

(From OE-Core rev: 0fb36b3232de531b4b3d5ca9e39dd610646d5e8c)

Signed-off-by: Adrian Alonso <aalonso@secretlab.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-10 09:56:19 +01:00
Khem Raj 499a7b911c insane.bbclass: Checking for NLS too when checking gettext dependency
Checking for gettext is not needed when --disable-nls is used

Let user know what variant of gettext is missing e.g. gettext-native,
gettext-nativesdk etc, reveals a bit more for user

Check for virtual/gettext

(From OE-Core rev: 7d4cb46017616867dea589be03973897a02991eb)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-04 00:54:47 +01:00
Richard Purdie 0e89459017 gettext.bbclass: Updates to better handle gettext alternatives
* Change gettext dependency to virtual/gettext

* Ensure INHIBIT_DEFAULT_DEPS removes gettext dependencies

* Use BASEDEPENDS to ensure dependencies are added in native/nativesdk cases

(From OE-Core rev: d19735ad5a45f969918fb73ea4845bef48d9ee24)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-04 00:40:40 +01:00
Khem Raj 01102bd2d2 insane.bbclass: Move code to add function to tasks toward the end
Cosmetic change to make syntax highlighters happy

(From OE-Core rev: 1efeeecc33862e4d8c618e1f118ba60258bc6c64)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-28 10:45:42 +01:00
Khem Raj 511abe9167 classes: Use linux-uclibceabi instead of linux-uclibgnuceabi for os portion of triplet
(From OE-Core rev: 7aa1671941222e6dcd94fd943ede9e75f6c9f5ed)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-04 14:08:10 +01:00
Mark Hatle 78c2b79d54 insane.bbclass: Fix ELF bitsize comparison
Fix the way the ELF size is compared to ensure that incorrectly
sized ELF binaries are captured during the file scan.

lib/oe/qa.py is changed to accept a bitsize as a parameter.  Instead
of previously defining true/false, it now takes "0" undefined, "32"
32-bit, and "64" 64-bit as the size argument.  This allows us to
preserve existing behavior of only loading one ELF type, while
allowing the function to be able to discover the size on it's own.

(From OE-Core rev: 17dae13fabe2932a47ecc86fcafb1d177226513f)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-03 16:57:44 +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
Mark Hatle 2f3a7348b7 insane.bbclass: Fix config.log error message
[BUG #702]

The previous error message was confusing.  It was looking for both library and
include host contamination, but the message only indicated include files.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2011-02-08 17:53:15 +00:00
Scott Garman 6656381714 insane.bbclass: skip checks on .la installed status
Enabling libtool sysroot support triggers these errors but they
are a valid change in behavior.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2011-01-21 01:36:15 -08:00
Richard Purdie b939ff53ed insane.bbclass: Make sure QA issues are reported as warnings
Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
2011-01-13 16:17:06 +00:00
Richard Purdie 26cd5c2af0 insane.bbclass: Enable the package_qa_hash_style check
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-07 16:27:16 +00:00
Saul Wold d2d5456cd3 insane.bbclass: Fix message for LIC_FILES_CHKSUM Errors
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-01-06 10:06:32 +00:00
Saul Wold 1c75a5df68 insane.bbclass: make LIC_FILES_CHKSUM failures report errors
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2010-12-23 14:28:22 +00:00
Qing He 85bd3d644a insane.bbclass: fix qa_configure and qa_staging
fix the typo in `postfuncs' and effectively re-enables
qa_configure and qa_staging

Signed-off-by: Qing He <qing.he@intel.com>
2010-11-14 21:08:22 -08:00
Mark Hatle dd81d5882b insane: Update the insane class to check for host contamination
[BUGID #376]

Update to the insane class to detect the new gcc and binutils poison
messages located within the config.log.  (Continue to scan for the old
style message.)

Add a new compile and install log check to the package_qa that scans the
logs for the same types of messages "unsafe for cross-compilation".

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2010-10-01 18:45:32 +01:00
Richard Purdie 47f704ea74 insane.bbclass: Update to match the packaging classes when handling OVERRIDES
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-23 15:27:36 +01:00
Nitin A Kamble 23363c990c insane.class: print the recipe name in the warning.
Now Warning includes the package name like zlib is printed bellow:

WARNING: zlib: Recipe file does not have license file information
(LIC_FILES_CHKSUM)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-07-15 13:46:06 +01:00
Joshua Lock 04472ecf9d insane.bbclass: move license check to after configure
Only checking the license at packaging time means we don't check native builds,
so move the check to after do_configure

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-07-15 09:54:48 +01:00
Richard Purdie fae8d5e985 insane.bbclass: Relax fatal errors for now until we get have time to work through the backlog
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-07-08 23:51:06 +01:00
Richard Purdie b44d32ef41 insane.bbclass: Portions of code were not running, fix this and sync with OE.dev. Also add tests for bad sysroot rpaths in binaries
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-07-08 10:24:15 +01:00
Kevin Tian 4057e1a811 insane.bbclass: allow reporting all md5 mismatch warnings
instead of exiting when once one md5 mismatch is seen. This would be
helpful to save time on filling md5sum for multiple license check
files.

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2010-06-30 13:19:05 +01:00
Nitin A Kamble fc81ca7d2d insane.bbclass: Throw better error if path is bad
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-06-07 16:05:12 +01:00
Nitin A Kamble 8825d4d455 License Checking: convert an error into warning
If license file md5 information (LIC_FILES_CHKSUMS variable) is
missing in the recipe then just throw a warning instead of the build
failure.
  Once enough recipes' LIC_FILES_CHKSUMS are filled then this warning
will be reverted back to the the fetal error.
  If LIC_FILES_CHKSUMS field is present but invalid then the it still
causes a fetal build error.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-05-12 10:54:05 -07:00
Nitin A Kamble 2ca1f78a95 License Change checking:
Added a new variable in recipe : LIC_FILES_CHKSUM

It is a required field for every recipe.

It describes license text location in the source files. And also stores
md5sum of that license text. Any change in this license text triggers build
error. Which enables developer to review any changes in the license and
update the license fields in the recipe accordingly.

For Example: contents of zlib_1.2.3.bb
LICENSE = "zlib"
LIC_FILES_CHKSUM = "file://README;md5=ae764cfda68da96df20af9fbf9fe49bd \
  file://zlib.h;beginline=1;endline=30;md5=6ab03f03a5ee92d06b809797d4d5586d "

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-05-11 16:25:39 -07:00
Joshua Lock e7fa3529f3 Update classes to use lib/oe
Adapt modifications from upstream to make Poky classes use lib/oe for the
common Python functionality.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-06 12:53:16 +01:00
Richard Purdie 847324b79b classes/conf: Update to handle gcc-runtime
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-29 22:28:49 +01:00
Richard Purdie fd34f26511 insane.bbclass: Since we have no legacy packaging, no need to repeatedly scan staging
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-26 16:00:13 +00:00
Richard Purdie ed2be0f349 insane.bbclass: Fix typo
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 11:37:56 +00:00
Richard Purdie 9604ad0ddf cross-canadian: Fix gettext issues
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 11:25:42 +00:00
Joshua Lock aef159c70c insane.bbclass: Fix multiline string
Earlier commit had created a multiline string without
updating the python string quotation (""" for multiline).

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-06 13:18:18 +00:00
Joshua Lock aee835ba8f insane.bbclass: enhance gettext error message
Point the user at gettext.bbclass which handles adding the
correct gettext to DEPENDS.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-06 09:32:41 +00:00