Commit Graph

29 Commits

Author SHA1 Message Date
Richard Purdie 1bf8d83d5a utils: Update bb.which reference and other syntax cleanup
* bb.which -> bb.utiis.which()
* Use modern form of datastore access
* Use True, not 1
* Drop pointless imports

(From OE-Core rev: 106a4f5b41e5bdeabe588b9ba362f3693b1a9989)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-17 14:35:16 +01:00
Richard Purdie 2631eff585 utils.bbclass: Tweak create_wrapper
Currently the full path is specified to exec however this may incorporate a
build path which in the nativesdk case, is not transformed to a target system
path. This leads to failures due to incorrect paths.

This patch ensures the full build path is not encoded into the wrapper script.

(From OE-Core rev: 4569d7403638e4c1f637e3a6adb8dea620dc8543)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-18 17:33:14 +01:00
Ross Burton 3aaa4f78c6 utils.bbclass: ensure $0 is correct in wrapper scripts
Some packages (eg mesa) will invoke a tool with --version and do string matches
on the output (i.e. mesa does $LEX --version |grep "^flex ").  This doesn't work
with the combination of wrapper scripts and binaries that use $0 as they output
"flex.real".

Luckily bash's exec lets you set $0.  As we want to use this we can't use env,
but using export appears to work just as well.

(From OE-Core rev: e8d2a2a3646f964ec61ece62e14788cd7184dd01)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-30 21:10:23 +01:00
Richard Purdie f823f0a0c0 bitbake.conf/utils: Drop some OVERRIDES from FILESPATH
There are several overrides that don't make sense as part of FILESPATH. This
introduces FILESOVERRIDES and allows us to drop some of the pointless ones,
simplifying the files search path further and improving the user experience.

If needed by specific recipes, other overrides can be added back in for
specific cases.

(From OE-Core rev: b8b1b39961332c99d62ee466f7859bd62a0f806f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-12-11 15:58:36 +00:00
Richard Purdie 73ef532777 utils: Optimise looping in base_set_filespath
Calling split on the same expression, once per loop iteration is
inefficent and pointless, particularly in a function called by
every recipe during parsing.

(From OE-Core rev: 566c0e874fc1610f3f97737b5601ef22026c918a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21 16:56:03 +00:00
Richard Purdie 68b7f18edd utils.bbclass: Fix documentation of create_cmdline_wrapper
(From OE-Core rev: 56160ca49dd546b7db07ae2021eefef7279b0f10)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-14 14:38:28 +00: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
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
Richard Purdie 2717309501 utils.bbclass: add helper function to add all multilib variants of a specific package
This is useful for the scenario where we want to add 'gcc' to
the root file system for all multilib variants

(From OE-Core rev: 7cd54693363882854cd026ebe071e9f2e03d364e)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:58 +01:00
Robert Yang 70caf1e1bc utils.bbclass: remove the unused oe_system
The following functions in meta/classes/utils.bbclass were not
used by anyone, and they didn't work when I tried to use them:

def oe_popen_env(d):
def oe_run(d, cmd, **kwargs):
def oe_popen(d, cmd, **kwargs):
def oe_system(d, cmd, **kwargs):

There error was:
AttributeError: type object 'str' has no attribute 'getVar'

We have bitbake/lib/bb/process.py to instead, so remove them.

[YOCTO #2489]

(From OE-Core rev: 15ad62ab1be060d8a7cdc2d28167ea3af4cfd5d5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-25 11:17:53 +01:00
Richard Purdie 7ad49364fd utils.bbclass: Testing via env in create_wrapper is a nice idea but breaks things
For example, pseudo-native wants to set LD_LIBRBARY_PATH but setting this
into the environment here causes the existing pseudo (running during do_install)
to poke into paths in /opt and this breaks builds.

The simplest fix is simply not to do this. Comments tweaks to match the code.

(From OE-Core rev: 1efa999ed02186c9c58cb48418e0c62ecdc82ac7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-26 10:05:14 +01: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 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
Martin Jansa ec63594a8e utils.bbclass: skip empty paths when handling FILESEXTRAPATHS
* if there is multiple .bbappend files with FILESEXTRAPATHS_prepend := "/:"
  then the one parsed last is causing trailing ':' and that's causing empty element in
  path = extrapaths.split(:) + path
* it's hard to keep all .bbappends from foreign layers to follow this rule, so it's better
  to be able to handle trailing ':'

(From OE-Core rev: 3b5591d423324da076d038ad335af47b616a7903)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 18:23:35 -07: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
Lianhao Lu 375cf1561c utils.bbclass/multilib.class: Added misc supporting functions.
1. Added variable MULTILIB_VARIANTS to store all the instance variants
for multilib extend.

2. Added function all_multilib_tune_values to collect the variable
values for all multilib instance.

3. multilib bbclass handler will save the orignal value of all variables
defined in MULTILIB_SAVE_VARNAME.

(From OE-Core rev: 18bba910e04bff75460f408e4557d4bae21ad592)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 15:26:17 +01:00
Saul Wold 39130137e4 utils.bbclass: Don't forget to pass the cmdline options
This ensure that the command line options from the creation of the wrapper
are actaully passed into the wrapper.

(From OE-Core rev: 190b4f17f5fc9879e680278dd0e31e26e5f5bca0)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-27 12:02:45 +01:00
Darren Hart e94e86c2d7 utils.bbclass: make FILESEXTRAPATHS colon delimited
Fixes [YOCTO 1102]

Path variables are typically : delimited. White space is allowed in paths, so
is not a good choice for separating paths. Currently utils.bbclass performs the
following:

    extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "").split()

This splits FILESEXTRAPATHS on whitespace. It later splits overrides on : and
reassembles them all together as : delimited.

There is only one user of FILESEXTRAPATHS in oe-core (qt4-tools-native, which
uses : anyway) and none in oe.

Change the split() in utils.bbclass to split on : instead of whitespace. When
splitting on a defined string (":") we must be careful to handle the empty
string case which returns [''] instead of [].

Tested building qt4-tools-native and core-image-minimal for surgarbay from
meta-intel with a couple extra layers with FILESEXTRAPATHS modifications added.

(From OE-Core rev: a6a892f520d22ef8020c98528d38ee08f6cda034)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-27 16:55:16 +01:00
Saul Wold bc386f67b3 utils.bbclass: modify create_wrapper to correctly follow symlinks
This ensures you look up the symbolic link to get the full path

(From OE-Core rev: a10bd976f4cef54ac50b0c82f885c17a26e5989f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-19 23:40:36 +01:00
Saul Wold ccfd344782 utils.bbclass: modify create_wrapper to correctly follow symlinks
This ensures you look up the symbolic link to get the full path

(From OE-Core rev: 9215d23fd26c62d250749b8084a52f383cb16fba)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-19 20:48:29 +01:00
Darren Hart fc934af7c8 logging: update existing oe* logging users to the bb* interface
The new bash logging class provides bbnote, bbwarn, bbfatal, and bbdebug
replacements (as well as bbplain and bberror) for the oe* equivalents. Use the
new bb* API in preparation to delete the oe* logging API.

This patch was automatically generated by a sed script. The result has been
visually inspected and used to build core-image-sato for qemux86.

(From OE-Core rev: a1f09fce5caba389d0484b169f0cde85d64514fa)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-04 00:54:37 +01:00
Saul Wold 9c63e3fd29 utils.bbclass: add new wrapper script
Add a new create_cmdline_wrapper() function that takes cmdline options
for commands that need different directories

Related to [BUGID #775

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-02-25 16:20:31 -08:00
Richard Purdie 984e90f4d7 meta/classes: Update classes to use new fetcher API
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-07 09:06:37 +00:00
Scott Garman 14770205c1 staging.bbclass, utils.bbclass: remove la mangling code
libtool v2.4 --with-libtool-sysroot eliminates the need for
la mangling.

Based on Khem Raj's OE commits.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2011-01-21 01:36:15 -08:00
Richard Purdie edd290bd1a base/utils.bbclass: Drop former checksum code now bitbake is handling this for us
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-12-20 15:34:50 +00:00
Richard Purdie a9c46e44d4 base/utils.bbclass: Sync up overlapping functions
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-11-02 11:50:50 +00:00
Richard Purdie 26a4b23220 utils.bbclass: Add functions from OE.dev
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-11-02 10:33:52 +00: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 9c5386c1fd base.bbclass: Split up as per the patch in OE.dev by Chris Larson making code more readable and modularised
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-19 23:12:06 +00:00