summaryrefslogtreecommitdiffstats
path: root/bitbake/bin/bitbake-layers
Commit message (Collapse)AuthorAgeFilesLines
* bitbake: bitbake-layers: make show-cross-depends avoid long pathRobert Yang2013-02-151-8/+48
| | | | | | | | | | | | | | | | | | | | | | | | | The "bitbake-layers show-cross-depends" print the absolute path in the past, now it will print the relative path (relative to the layer dir) by default, and add the "-f" option to make it print the absolute path. For example: $ bitbake-layers show-cross-depends [snip] meta-intel/meta-jasperforest/conf/machine/jasperforest.conf requires meta/conf/machine/include/ia32-base.inc [snip] $ bitbake-layers show-cross-depends -f [snip] /path/to/poky/meta-intel/meta-jasperforest/conf/machine/jasperforest.conf requires /path/to/poky/meta/conf/machine/include/ia32-base.inc [snip] [YOCTO #3824] (Bitbake rev: df217701318d60559be0b10214b883b8ce4f5d2a) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers: print the recipe's depends that crosses a layer ↵Robert Yang2013-01-311-0/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | boundary Figure out the dependency between recipes that crosses a layer boundary * Introduction: - For the .bb file, we need check the following depends: > Check the DEPENDS, RDEPENDS and inherits according to the cooker_data. > The cooker_data doesn't have the info about "require/include xxx", so we need check them manually. - For the .bbclass, .inc and .conf file, we can't get their file depends from the cooker_data, we need check them manually. * Usage: $ bitbake-layer show-cross-depends I don't like the name "show-cross-depends", figure-out-cross-depends might be better, but most of the commands are "show-xxx" for bitbake-layers. * Output: (snipped) /work/poky/meta/recipes-support/libusb/libusb-compat_0.1.4.bb inherits /work/poky/meta-yocto/classes/poky-sanity.bbclass /work/poky/meta-intel/meta-cedartrail/recipes-cdv-media/images/core-image-cdv-media.bb requires /work/poky/meta/recipes-sato/images/core-image-sato.bb /work/poky/meta-yocto/recipes-core/tiny-init/tiny-init.bb RDEPENDS /work/poky/meta/recipes-core/busybox/busybox_1.20.2.bb /work/poky/meta-intel/common/recipes-bsp/amt/lms_7.1.20.bb DEPENDS /work/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb /work/poky/meta/classes/distrodata.bbclass includes /work/poky/meta-yocto/conf/distro/include/package_regex.inc /work/poky/meta-intel/meta-sys940x/conf/machine/sys940x.conf requires /work/poky/meta/conf/machine/include/tune-atom.inc [YOCTO #3387] (Bitbake rev: 100502ef722bf19b6c125a5e017f31686ad18421) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers: fix get_file_layerRobert Yang2013-01-251-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The get_file_layer can't handle the nested layer correctly, e.g.: meta-intel/conf/layer.conf meta-intel/meta-cedartrail/conf/layer.conf They are two layers, the file: meta-intel/common/recipes-bsp/amt/lms_7.1.20.bb belongs to meta-intel's layer, but the get_file_layer() may return meta-cedartrail accordig to BBLAYERS' order, since it uses: for layerdir in self.bblayers: if regex.match(os.path.join(layerdir, 'test')): return self.get_layer_name(layerdir) which doesn't care the filename, re-match the filename would fix the problem. [YOCTO #3387] (Bitbake rev: 7a31b9eac4d894c302f0e052a132c31b17d13d1f) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tinfoil: create simple interface for bitbake-based utilitiesPaul Eggleton2012-09-071-99/+47
| | | | | | | | | | | | The code to initialise BitBake within bitbake-layers should be useful for other utilities that need to query configuration or recipe information, so refactor it out into its own class, "Tinfoil" (to continue with our cooking metaphor). (Bitbake rev: e5707e3938ace47c4a8d1fa2e81583fd4dc6b95d) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers: use parsable title for show-appendsPaul Eggleton2012-08-221-1/+1
| | | | | | | | | | | Print title text surrounded by === as we do with other subcommands so that you can filter it out in scripts. (You will also want to filter out lines starting with "WARNING:" if you just want the list). (Bitbake rev: ba15ba16a5d863886bcfd5b3f0bdfff2a6de11a0) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers: avoid full parse for show-layers subcommandPaul Eggleton2012-08-221-4/+7
| | | | | | | | | | We don't actually need to parse all recipes just to show the configured layers, so just parse the configuration instead. (Bitbake rev: 406477cbae066b6379873e266cb79801e545a61c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers: fix help for show-overlayed to match behaviourPaul Eggleton2012-08-021-1/+1
| | | | | | | | | | show-overlayed actually lists the same recipe in multiple layers regardless of priority, so change the help description to match. (Bitbake rev: 17217ff707e41780cb473b9cdd2621dd18b982c2) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: hide deprecation warningsPaul Eggleton2012-04-171-0/+2
| | | | | | | | | | | | There are a number of DeprecationWarnings within BitBake code which bitbake itself filters out; bitbake-layers was not doing this, resulting in a stream of warnings printed out when used with Python < 2.7 (these warnings default to disabled on version 2.7 and above.) (Bitbake rev: 0a2378237f07eb1c812e2308e64b7d70781e2b39) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix traceback in show-overlayed with nothing overlayedPaul Eggleton2012-03-201-1/+1
| | | | | | | | | | There is no logger.note, use logger.plain instead (which is what we really want here anyway.) (Bitbake rev: c4f7fd708c48d4323db4bbeb3074f576f5be7aa2) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: add copyright noticePaul Eggleton2012-02-091-0/+3
| | | | | | | | | | This ought to have been added earlier. (I consulted with Chris Larson on the notice covering his work.) (Bitbake rev: 69ed02b645bdc28c1bf24e436beeed37d226b56b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: list overlayed classes in show-overlayedPaul Eggleton2012-02-011-0/+47
| | | | | | | | | | | | Classes (.bbclass files) can be overlayed in a layer although they are currently located by BitBake in a different way (via BBPATH instead of using layer priority) and thus it is useful to be able to see when this is in effect and which layer's class is actually being used. (Bitbake rev: f6493e4bad005a82580380d800ebf4c438292f5b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: add show-recipes subcommandPaul Eggleton2012-02-011-5/+52
| | | | | | | | | | | | | Add a show-recipes subcommand which lists all available recipes, with the layer they are provided by. You can optionally filter the output by recipe name (PN). (This is a generalised version of the show-overlayed subcommand.) (Bitbake rev: 05e86ba966f5a26721891c82b21afa48768a67cc) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: improve show-overlayed outputPaul Eggleton2012-02-011-11/+105
| | | | | | | | | | | | | | | | | | | | | | Make the following improvements to the show-overlayed subcommand: * Show recipes that are overlayed when the version is higher or lower, not just when it is the same. This gives a much better picture of the influence each layer is having over the metadata used for building. This can be disabled with the -s option if you just want to see recipes with the same version as before. * Default to showing name (PN), layer and version rather than the full path and filename. The old style formatting can be used by specifying the -f option. * Mark skipped recipes as such in the output, and print them in the correct sorted place in the list rather than at the end * Prefix/suffix title line with === so it can be filtered out easily in shell scripts if desired (Bitbake rev: 43b473275d3cb2e60a14e4a52cdc4654b3f4e5e7) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: use directory name as layer namePaul Eggleton2012-02-011-19/+20
| | | | | | | | | | | | | | | | | | | It turns out that using the collection name as specified within layer.conf (i.e. what gets added to BBFILE_COLLECTIONS) as a name to refer to the layer is not particularly useful, since layer creators aren't necessarily setting these to a meaningful value - e.g. OE-Core uses "normal", meta-oe uses "openembedded-layer", etc. In any case, BitBake uses the directory name in its list of configured layers in the system information presented upon starting a build, so let's just do the same here and avoid confusion. Also rename the get_append_layer function to get_file_layer since it is in no way specific to bbappends. (Bitbake rev: 35d2c1c618826e961dbf4b9889b829f469346d74) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: use dashes in subcommandsPaul Eggleton2012-02-011-5/+7
| | | | | | | | | | | Rather than the slightly awkward underscores, use dashes in subcommands e.g. show-layers instead of show_layers. (The old underscored forms continue to be accepted however.) (Bitbake rev: 6d311ddc1be04ae5bd0a1ebee94b44968e8a3f27) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: close files in apply_append()Paul Eggleton2012-01-101-0/+2
| | | | | | | | | | It's recommended practice to close files when finished with them and the code in this function was not doing this. (Bitbake rev: 470a160813ce6cf04f83258d46ded5c2ab8bc520) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: flatten: warn the user if output structure is incorrectPaul Eggleton2012-01-101-0/+38
| | | | | | | | | | | | | | | | | | If you flatten layers that have different directory structures you may not end up with a usable layer in the output directory - some files won't be picked up by BitBake. To try to avoid this problem, once flattening has completed, get the BBFILES entries that correspond to the layer from which the output layer's conf/layer.conf came from, and check through all of the .bb/.bbappend files in the output directory to see if any will not be referred to by BBFILES in the output layer. If any are found, show a warning to the user. (Bitbake rev: 8e4dc97614f2022855143b49d18795ca0352b237) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: flatten: allow specifying layers to flattenPaul Eggleton2012-01-101-8/+67
| | | | | | | | | | | | | | | | | | You can now optionally specify two or more layers to flatten into the output, rather than flattening all of the layers in the current configuration (but this is still the default behaviour if no layers are specified). Note that this means the output layer may still contain bbappends where the corresponding recipes are not present in the list of layers to flatten. There is also a caveat when a layer not being flattened would be "inbetween" the flattened layers (see the command help for details.) Implements feature request in [YOCTO #1564]. (Bitbake rev: 379b12107ec921b4458eda320078374a509164c1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix Python error during parsePaul Eggleton2012-01-041-0/+1
| | | | | | | | | | | | | | | | | | If "bitbake-layers show_layers" was run when the cache was dirty forcing a parse, it failed with the following error: ERROR: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception AttributeError: 'module' object has no attribute 'fetch2' A simple import of bb.fetch2 in bitbake-layers fixes this. Fixes [YOCTO #1855]. (Bitbake rev: a228f0a32c2c14d62effbbba5f4fada4cd3817f6) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Ensure only the filtered environment variables are inherited from the OSJoshua Lock2011-08-151-3/+3
| | | | | | | | | | | | | | | | | | The recent change which modified inheritFromOS to use the intial environment, rather than the current environment, introduced a bug such that variables which had been cleaned from the environment where still set in the data store. This patch changes things such that a list of approved environment variables is saved after the environment is cleaned and only the variables in this list are inherited in inheritFromOS. CC: James Limbouris <james.limbouris@gmail.com> CC: Chris Larson <clarson@kergoth.com> (Bitbake rev: cb6c07054e8baf94614713ec257c643b22266d75) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: extend show_layersPaul Eggleton2011-08-151-1/+14
| | | | | | | | | | Make show_layers print layer name, path, and priority in a simple table rather than just the value of BBLAYERS. (Bitbake rev: 29afbf10c00b5ccdd8d2c063dda3f3e2b6aa1624) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: use logger.plain instead of infoPaul Eggleton2011-08-151-14/+20
| | | | | | | | | | | | | The INFO: prefix makes sense in bitbake itself but in bitbake-layers is just noise. Changing this exposed the fact that the logger was not being set up correctly (which should be done anyway to correctly support logging from BitBake), so this has also been fixed. [RP: Sync with logging changes] (Bitbake rev: 79751524cb1f0388975c6228f8c112e6af80f154) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: show help with no command specifiedPaul Eggleton2011-08-151-5/+2
| | | | | | | | | | | | Instead of running show_appends when no command is specified, show the default help text. Running show_appends by default made sense previously when that was the only real command provided, but now we have several useful commands implemented. (Bitbake rev: 62a2e0aa1ac8a459928d1f72783b6ca9c1756350) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: improve default command helpPaul Eggleton2011-08-151-8/+28
| | | | | | | | | | Improve default help output and make unrecognised commands print it out rather than just an error. (Bitbake rev: 84f20eb874e7e0ae59bc76883ba9698b0cfcdb6b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: adapt to cooker change for saved environmentJoshua Lock2011-07-261-3/+4
| | | | | | | | | | The Cooker requires a copy of the environment mapping, modify bitbake-layers to take one and pass it to the cooker. (Bitbake rev: f5653e557b68a27e99a2a6a5c5a31d0ba0b56bcb) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: remove unneeded do_EOFPaul Eggleton2011-07-251-3/+0
| | | | | | | | | | do_EOF is only needed when using the Python cmd class in line-oriented mode - we are just sending single commands to it. (Bitbake rev: 0cbf5dcaf9f67522bd58d868aa01f28e846dfc19) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: add command helpPaul Eggleton2011-07-251-1/+31
| | | | | | | | | | If you run "bitbake-layers help commandname" it now provides some useful help text. (Bitbake rev: 1548edcd18a78bab74cde39167169f11ba3c4d58) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: check for errors before parsingPaul Eggleton2011-07-251-1/+9
| | | | | | | | | | Don't always parse on initialisation - instead check for errors and then parse when we know we need to. Avoids keeping the user waiting. (Bitbake rev: 86adaca6ce959ad5e908c394625bc9880f3c0216) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix error on startup caused by recent cooker changePaul Eggleton2011-07-051-1/+2
| | | | | | | | | | | Fix bitbake-layers "TypeError: 'NoneType' object is not iterable" error on startup. Commit f3be8e9a7df13cc11ffc8fc667efaf2db96a7c38 changed to expect prefile and postfile to be populated and no longer expects file. (Bitbake rev: 0f45fcab5c724aabb5b2933dfcdf88ebe256cba9) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix sorting by package name for cooker changePaul Eggleton2011-07-051-1/+1
| | | | | | | | | | | Structure of cooker was changed since the patch for bitbake commit edacf98cceb2fe1275042595d3fce6822fa411ca was created - cooker.pkg_pn now has string keys, so sort it accordingly. (Bitbake rev: 9c2a064ab7fd9b8bcca58dfeb1abfae2555f0088) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/cooker, bitbake-layers: show the .bbappend files that matches no ↵Dexuan Cui2011-07-051-20/+1
| | | | | | | | | | | | | | existing .bb recipe This patch moves the logic of show_appends_with_no_recipes from bitbake-layers into bitbake. By default, a fatal message is printed; we can also define a variable BB_DANGLINGAPPENDS_WARNONLY to make the message only a warning(the variables could be defined in conf/local.conf with a value "yes", "true" or "1"). (Bitbake rev: f5ba7c795df7cbd58124e35970ddc5bd84cbfb8e) Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix sorting of show_appends outputPaul Eggleton2011-07-051-4/+6
| | | | | | | | | | Sort packages alphabetically but ensure appends are left in their original order (layer priority). (Bitbake rev: edacf98cceb2fe1275042595d3fce6822fa411ca) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: add command to flatten layers into onePaul Eggleton2011-07-051-0/+59
| | | | | | | | | | | | | | | | | | Takes the current layer configuration and builds a "flattened" directory containing the contents of all layers, with any overlayed recipes removed and bbappends appended to the corresponding recipes. Note that some manual cleanup may still be necessary afterwards, in particular: * where non-recipe files (such as patches) are overwritten (the flatten command will show a warning for these) * where anything beyond the normal layer setup has been added to layer.conf (only the lowest priority layer's layer.conf is used) * Overridden/appended items from bbappends will need to be tidied up (Bitbake rev: 296c83cc22ce281223fe91ef84bc89034cd141e7) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: add show_overlayed actionPaul Eggleton2011-07-051-0/+10
| | | | | | | | | Add a show_overlayed action to list overlayed recipes. (Bitbake rev: f0c2175dc943160e45ebd72fc932dd16ee361bfb) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: handle skipped recipesPaul Eggleton2011-06-091-5/+19
| | | | | | | | | | | | Report bbappends correctly for skipped recipes instead of reporting the bbappends as not having any matching recipe. (From Poky rev: 39d72ecf6bc1da85aefb11e6481719185f0cb953) (Bitbake rev: a71183762e5d7d9f8153832efb9595e3a21d62f1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: Fixup after recent server changesRichard Purdie2011-06-081-2/+4
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/bitbake-layers: fix to run with recent changesJoshua Lock2011-03-141-4/+8
| | | | | | | | | | | | | | This patch marks the bitbake-layers script as executable and fixes the instantiation of the BBCooker to match recent changes in the BitBake libraries. I've also added a brief header which demonstrates the intent and usage as taken from Chris Larson's original commit message. Note: this fix is not upstreamable, it's only required in Poky because of an outstanding difference between BitBake master and Poky's BitBake. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake-layers: drop 2.6 from #!, per Joshua LockChris Larson2011-03-031-1/+1
| | | | | | | (Bitbake rev: 898f557cbd443cdeff137fd926aac06f2aaee6c4) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: fix bug with env vars leaking inChris Larson2011-02-101-0/+1
| | | | | | | | | | I forgot that bin/bitbake is what does the environment filtering based upon BB_ENV_WHITELIST, etc. (Bitbake rev: 2cc6b6951bd17832866ec710029d119d2df31ba4) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add initial bitbake-layers scriptChris Larson2011-02-101-0/+153
This script has subcommands which operate against your bitbake layers, either displaying useful information, or acting against them. Currently, it only provides a show_appends command, which shows you what bbappends are in effect, and warns you if you have appends which are not being utilized. Currently, a bug exists when using this due to the DataContext stuff, but I'm not certain as to the root cause, it appears to be the bb package relying implicitly on the way the bitbake script does things. A fix for that issue will be forthcoming, as will further subcommands. (Bitbake rev: 78b6d4cb26cec3321f8eec9889205a6b93b2ee18) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>