summaryrefslogtreecommitdiffstats
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
* devtool: add search commandPaul Eggleton2015-09-231-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a subcommand to search to find the target recipe name providing some file or capability. This is implemented by searching on recipe name, package name, description, package contents (file names), and runtime file provides. For example: $ devtool search libGL mesa $ devtool search X11 xextproto libxxf86vm xf86driproto xf86vidmodeproto libxfixes xproto libx11 ... $ devtool search /bin/sed busybox sed This is particularly useful within the extensible SDK but is also made available in devtool alongside the build system. Note of course that because this searches pkgdata, useful results depend upon do_packagedata(_setscene) having executed for the recipe being searched for. (From OE-Core rev: 48cbde0ea77ed20126eceba5feb37c42a9229500) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add basic means of running runqemu within the extensible SDKPaul Eggleton2015-09-231-0/+64
| | | | | | | | | | | | | | | | We ship the runqemu script and if we build QEMU itself within the extensible SDK, then it would be nice to be able to run it. This is a very thin wrapper around runqemu, supplying the machine and image name so the user doesn't need to. (This subcommand is only available within the extensible SDK since it only really makes sense there where it is otherwise hard to run runqemu directly.) Implements [YOCTO #6657]. (From OE-Core rev: abca7a0cac7068ffe6a6b873d0842f804388b621) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool / recipetool: add handling for binary-only packagesPaul Eggleton2015-09-232-0/+23
| | | | | | | | | | | | | Add a means of creating recipes for package files or archives that contain a directory structure to be installed verbatim, for example an rpm file. (We mostly just re-use bin_package here and skip some of the normal build system checks.) This support is available in "recipetool create" and "devtool add" which wraps the former. (From OE-Core rev: 9e0a6b2e6f16185f8032d36b77d40802bc388987) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: build-image: delete bbappend at end of buildPaul Eggleton2015-09-231-30/+23
| | | | | | | | | | | | | | | Upon further reflection, it seems to me that this bbappend ought to just be deleted at the end of the build. This keeps things simple; you never have to remember to delete any files to get back to where you were before with the image. This means we can also drop the slightly awkward message reminding the user how to do that. I've also updated the test to look at the image manifest to determine if the command has worked instead of looking for the (now deleted) bbappend. (From OE-Core rev: f6b90bceaedf9bad3d111e6ca1fa79e59f472c73) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: build-image: improve image recipe handlingPaul Eggleton2015-09-231-3/+23
| | | | | | | | | | | * Make image optional for the extensible SDK (auto-determine it based on the targets the SDK was built for) * Check that specified recipe is in fact an image (From OE-Core rev: 8884875aacfedc69cc72898684e391e69fea00ba) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: build-image: tell user where to find output filesPaul Eggleton2015-09-231-5/+9
| | | | | | | | | | | If the user is running "devtool build-image" within the extensible SDK then they probably won't know where to find the resulting output files, so we should tell them explicitly. (From OE-Core rev: 9baf9fd7a53142a98c7f1cd49c7b001760af51f9) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: build-image: fix recipe/package terminologyPaul Eggleton2015-09-231-21/+24
| | | | | | | | | | We build recipes and include packages into the image, adjust the terminology used in code and messages accordingly. Also fix a few typos. (From OE-Core rev: 866f6e2de20b7022803e53c4de3ff341521b4db5) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add: move important "recipe created" message to the endPaul Eggleton2015-09-231-1/+2
| | | | | | | | | | | | If we end up printing a message about the build directory being the same as the source, we should print that first and then print the message about the recipe file possibly needing to be edited to the end so that it has slightly more impact. (From OE-Core rev: 97398d14c444fe2408dd6101ef46a0a406924bb5) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add: set up fetched source as a git repository by defaultPaul Eggleton2015-09-232-7/+23
| | | | | | | | | | | | | If the fetched source isn't already a git repository, initialise it as one and then branch and tag, just as we do with "devtool modify". This makes it easier to make changes, commit them and then use the "devtool update-recipe" command to turn those commits into patches on the recipe. (From OE-Core rev: 2dd865086c37c9eff63c6d0bbfa9f2e909f9fffe) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: better handling for recipes that don't unpack sourcePaul Eggleton2015-09-231-3/+5
| | | | | | | | | | | Some recipes don't extract any source (for example, opkg-keyrings). We were producing a traceback in this case because we weren't checking if the directory existed. (From OE-Core rev: 087ca0c644aad19e6e7d3921f99f3056471deb65) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: fix extracting source for work-shared recipesPaul Eggleton2015-09-231-1/+1
| | | | | | | | | | | | Recipes that use work-shared (such as libgcc) are capable of unpacking the source, but it doesn't necessarily unpack to ${WORKDIR}/${BP}. Use the last part of the actual S value instead which is more likely to work. (From OE-Core rev: 0bab8086fdef93b88d5ec6b88b07ccc921dd786f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: show proper error when extracting source for recipes with disabled ↵Paul Eggleton2015-09-231-0/+4
| | | | | | | | | | | | | | | unpack task If you try to use "devtool modify -x" or "devtool extract" on a recipe where do_unpack has been set as noexec (e.g. glibc-locale), then we get an error because the expected source wasn't ever unpacked. Do a check up front for noexec being set on do_unpack and error out with a reasonable message if that's the case. (From OE-Core rev: 39a93c85e798e72edd6ab3c05f8adbb1a97e893e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipetool: create: fix handling of URIs containing #Paul Eggleton2015-09-231-2/+4
| | | | | | | | | | | | | | | | The # character in a URI denotes a fragment; we don't care about this since it is never supposed to be sent to the server, so remove it from the URI before actually trying to fetch it or use it in SRC_URI within the recipe. (This has come up because download links on pypi.python.org seem to have a fragment containing the md5sum of the download; without stripping this off the fetcher will choke on it.) (From OE-Core rev: 58dc726808817210764eab963a4d453dc4ff49aa) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipetool: create: fix creating empty shell functionsPaul Eggleton2015-09-231-3/+19
| | | | | | | | | | | The shell considers empty functions to be a syntax error, so for template shell functions that contain only comments (or no lines at all) then add a : to act as a no-op which avoids the syntax error. (From OE-Core rev: ff14d9e5b935b99b2efde479515e54c02ba58f6e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add: properly handle separate build directoryPaul Eggleton2015-09-233-32/+36
| | | | | | | | | | | | | | | When we were adding a recipe for software that would typically be built in the same directory as the source, we were always using a separate build directory unless the user explicitly specified not to, leading to errors for software that doesn't expect to be built that way (such as Python modules using distutils). Split out the code that makes this determination automatically from the "devtool modify" and "devtool upgrade" code and re-use that here so the behaviour is consistent. (From OE-Core rev: 320585b7ff6340df0b0dbc63f95ed3ca8fc3a993) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool / lib/oe/recipeutils: ensure we can parse without bbappendsPaul Eggleton2015-09-231-0/+2
| | | | | | | | | | | These functions ostensibly allowed parsing a recipe without bbappends but this clearly hadn't been tested because a variable was unassigned in both of them in that case. (From OE-Core rev: d2bb9f08303bb120e811c03af2f5339e8f262cfa) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add: ensure --color=never turns off recipetool colour outputPaul Eggleton2015-09-231-1/+1
| | | | | | | (From OE-Core rev: 670bd063a5e0cdf89ea8d1f763af980d7e63d38a) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: check that source tree still existsPaul Eggleton2015-09-235-19/+25
| | | | | | | | | | | | | | Sometimes, particularly if you extracted the source to /tmp which is on tmpfs, the external source tree that is being pointed to may no longer exist when you come to run "devtool build" or "devtool update-recipe" etc. Make all of the commands that need to check for a recipe being in the workspace call a single function and have that function additionally check the source tree still exists where appropriate. (From OE-Core rev: 0c3f289576a2ab35b1d1d8854d6763553cc3bf09) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib: add devtool stress testerPaul Eggleton2015-09-231-0/+241
| | | | | | | | | | | | | | Add a script to run "devtool modify" followed by a build on every target recipe in the environment (with the option to skip/resume from/only include specific recipes). This takes far too long to run as an oe-selftest test but is still something that is useful to be able to run. There's also a slightly quicker mode that just runs "devtool extract" on each recipe. (From OE-Core rev: 278f40cce14af430ac1743436132584eedfe792e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: drop work-config.incPaul Eggleton2015-09-231-1/+1
| | | | | | | | | | | | | This is not actually used for anything - I thought that we would need to use it within devtool to set global configuration, but we're able to do everything we need within the bbappends it creates, which also saves on parse time. If we're not going to use work-config.inc let's just drop it completely. (From OE-Core rev: 84a1f82acd3b6ebb3c073aae6b996d2203dad2ce) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-debugger: Adds pkgutils dependency to pdbAlejandro Hernandez2015-09-231-1/+1
| | | | | | | | | | | | | | python3-debugger fails to be invoked to debug other scripts complaining about not being able to import pkutil, this patch adds pkgutil as a dependency for python3-debugger fixing the issue. [YOCTO #8334] (From OE-Core rev: f4d7f7075b3da1a3a37d6bb3e19613e7a068a63c) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-debugger: fix importlib dependencyAlejandro Hernandez2015-09-231-1/+1
| | | | | | | | | | | | | | python3-debugger (pdb) needs importlib as a dependency, if not included it produces an error when importing pdb, making pdb unusable, this patch adds importlib dependency fixing the issue. {YOCT0 #8333] (From OE-Core rev: babab409393aacdc558851cc62ce60659da25068) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu-internal: For qemumicroblaze use the QEMU provided device treeNathan Rossi2015-09-231-2/+2
| | | | | | | | | | | | Setup the qemumicroblaze machine to use the device tree provided by QEMU instead of the device tree located in the images directory. Additionally setup the default memory size to match the QEMU device tree. (From OE-Core rev: 5830519bc10fa1195789d5b6a1b1bbbef4b940be) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu-internal: Fix qemu networking for qemuzynq an qemumicroblazeNathan Rossi2015-09-231-4/+4
| | | | | | | | | | | | | This patch brings the qemu networking setup for qemuzynq and qemumicroblaze into feature parity with the other qemu machines. Specifically enabling TAP interface attachcment and kernel command line IP configuration. (From OE-Core rev: 49bdfab6ba1d92d8f48ce9c63d796a7cedf4f247) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-git-proxy: Allow socks4 as protocol in $ALL_PROXYPeter Kjellerstedt2015-09-231-1/+6
| | | | | | | | | | | | | The current default is to use SOCKS4a when socks is specified as protocol in $ALL_PROXY. However, not all socks servers support SOCKS4a. By allowing socks4 as an additional protocol, this script will happily work with SOCKS4 only servers. (From OE-Core rev: da9ddf48ed4a13cdc47649e22ab6ef7e36e01fdf) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-git-proxy: Correct the parsing of a port in $ALL_PROXYPeter Kjellerstedt2015-09-231-1/+3
| | | | | | | | | | | | | | | | Due to an error in the regular expression used to extract a port number specified in $ALL_PROXY, rather than allowing the port number to be followed by an optional "/", the port was required to be followed by "/?". This corrects the regular expression to allow an optional "/". It also allows the odd "/?" suffix for backwards compatibility. (From OE-Core rev: 39eb19e2ae9add58c763b71b54bdb3739041b2d0) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-git-proxy: Allow explicit IP addresses in $NO_PROXYPeter Kjellerstedt2015-09-231-0/+1
| | | | | | | | | | | | | Without this fix, if one specified, e.g., 127.0.0.1 in $NO_PROXY, the oe-git-proxy script would fail with a message like this: /home/pkj/yocto/poky/scripts/oe-git-proxy: line 64: 32-127.0.0.1: syntax error: invalid arithmetic operator (error token is ".0.0.1") (From OE-Core rev: c01e61d8b79d644880415986bdb1ba925f194329) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* wic: fix partition size calculationEd Bartosh2015-09-231-2/+1
| | | | | | | | | | | It was wrongly assumed that part.size is meagured in Mb. In fact it's in Kb, so there is no need to convert bitbake variable ROOTFS_SIZE as it's also in Kb. (From OE-Core rev: 3703ecb4aa5267e6d7330e7978cc7c3bb2250ead) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipetool: add 'newappend' sub-commandChristopher Larson2015-09-181-0/+111
| | | | | | | | | | | | | | | This sub-command creates a bbappend for the specified target and prints the path to the bbappend. The -w argument, as with some of the other recipetool commands, will make a version-independent bbappend. Example usage: recipetool newappend meta-mylayer virtual/kernel [YOCTO #7964] (From OE-Core rev: ac053163c7823e482ca1af2962342e64a54bfb52) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Create interactive menu for the scriptBruno Bottazzini2015-09-181-5/+58
| | | | | | | | | | | | | | | | | If it is passed only the image parameter, it will show some interactive options to help to conclude the script. With this patch it will detect devices available in the machine, asking to choose what it is wanted to be flashed. it will suggest the target device. If it is a SD card the suggestion is /dev/mmcblk0. If it is a pendrive it will suggest to use /dev/sda. (From OE-Core rev: 768fb686b8dfd47ff4cb4833ce166c213502f419) Signed-off-by: Bruno Bottazzini <bruno.bottazzini@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: update-recipe: get srcuri parameters with decodeurl()Markus Lehtonen2015-09-121-5/+2
| | | | | | | | | | Use already existing bb.fetch.decodeurl() for getting the parameters for a URI. This is more fault tolerant and maintainable. (From OE-Core rev: cd201664b827e37fcabca272262016b171e997d9) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu: avoid image file name mismatchesPatrick Ohly2015-09-121-16/+16
| | | | | | | | | | | | | | | | | Giving anything with -image in it as bootparams or in qemuparams (for example, an additional -drive parameter with an image file or an "-initrd .../core-image-minimal-initramfs-qemux86.cpio.gz") caused runqemu to treat these parameters as names of the rootfs image file. Matching *-image) after checking the current argument for more specific cases like bootparams and qemuparams avoids this misinterpretation of the command line parameters. (From OE-Core rev: 29e0aaa7345ca823bb4af2d4a870e98ac75e04e7) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu: Define OECORE_MACHINE_SYSROOT on setup_sysrootLeonardo Sandoval2015-09-121-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | At least the OVFM (UEFI Firmware for Qemu and KVM) recipe stores the BIOS under $OE_TMPDIR/sysroots/$MACHINE, now defined as OECORE_MACHINE_SYSROOT. The latter is used when searching BIOS, VGA BIOS and keymaps. As a example, to boot a OVFM BIOS, one can run the following command: $ runqemu qemux86-64 core-image-minimal \ biosdir=usr/share/ovmf \ biosfilename=bios.bin \ nographic Note the bios* parameters: these two are needed to specify the subfolder (parent folder is OECORE_MACHINE_SYSROOT) and BIOS filename (without it, it picks a BIOS named bios-256k.bin). [YOCTO #5654] (From OE-Core rev: bded344a464bb854db3935da1f6a3320e5aa01e5) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats: Outputs 'task recipe elapsed-time' from each buildstats' recipeLeonardo Sandoval2015-09-121-0/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given a 'buildstats' path (created by bitbake when setting USER_CLASSES ?= "buildstats" on local.conf) and task names, outputs '<task> <recipe> <elapsed time>' for all recipes. Elapsed times are in seconds, and task should be given without the 'do_' prefix. Some useful pipelines 1. Tasks with largest elapsed times $ buildstats.sh -b <buildstats> | sort -k3 -n -r | head do_compile perl-5.20.0-r1 221.82 do_configure gettext-native-0.19.4-r0 140.34 do_compile openssl-native-1.0.2a-r0 107.48 do_compile openssl-1.0.2a-r0 102.10 do_configure perl-native-5.20.0-r0 90.70 do_configure gettext-0.19.4-r0 88.17 do_compile gcc-cross-i586-4.9.2-r0 83.98 do_configure m4-native-1.4.17-r0 83.44 do_compile qemu-native-2.2.0-r1 71.69 do_compile glibc-2.21-r0 60.88 2. Min, max, sum per task $ buildstats.sh | datamash -t' ' -g1 min 3 max 3 sum 3 | sort -k4 -n -r do_configure 0.03 140.34 1968.66 do_compile 0.01 221.82 1664.44 do_install 0.03 40.31 330.45 do_populate_sysroot 0.11 34.45 229.23 do_unpack 0.01 36.1 193.54 do_patch 0.01 9.2 62.07 do_fetch 0.01 6.66 32.13 do_populate_lic 0.09 1.65 30.7 (From OE-Core rev: 29fa8ee01ef3254272bcbdd13a8c7244548639a3) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: make plugin_init optionalEd Bartosh2015-09-127-26/+1
| | | | | | | | | | | | | | | So far all devtool and recipetool plugins were expected to have plugin_init function. This function is empty in most of plugins as they don't require initialisation. Making plugin_init optional would allow not having empty plugin_init in every plugin. (From OE-Core rev: b99640c89f067866b264f4ee4030fae4c2f338c0) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts: Move BUILDDIR chmod fix after checks in oe-setup-builddirAlex Franco2015-09-121-4/+4
| | | | | | | | | | | | | Makes more sense to have this fix after checking BUILDDIR exists, is a directory and is writable. [YOCTO #7669] (From OE-Core rev: cf418deb32bf90479714e522e3fa309c41e47978) Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: fix running from a different directoryPaul Eggleton2015-09-091-0/+3
| | | | | | | | | | | | | | | Fixes the following error when running devtool from a directory other than the build directory (or the SDK base path when using within the extensible SDK): The BBPATH variable is not set and bitbake did not find a conf/bblayers.conf file in the expected location. Maybe you accidentally invoked bitbake from the wrong directory? (From OE-Core rev: 1687ec04bfee327fe24fdfecb67db689835769f2) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add package plugin that lets you create package via devtoolBrendan Le Foll2015-09-091-0/+61
| | | | | | | | | | | | Enables creating packages using devtool within the extensible SDK. (This is only enabled within the extensible SDK because it provides no advantage over just running bitbake directly there). (From OE-Core rev: 6dc0269bca3e874582d61b40dbf0d495331fb96a) Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: update-recipe: add a warning when recipe is inside the workspacePaul Eggleton2015-09-091-0/+4
| | | | | | | | | | | | | | | | If a recipe has been added to the workspace via "devtool add" or "devtool upgrade" then the recipe file itself will be in the workspace layer; if you run "devtool update-recipe" particularly in the upgrade case you might think it would apply the upgrade to the original recipe, but it will not - in order to remain consistent it has to update the recipe that's in use which is the one in the workspace. Warn the user in this situation so that they know what they need to do when they are finished. (From OE-Core rev: 4801b64243e57e554a593f0857dd53621d8f52e5) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: update-recipe: better 'auto' modeMarkus Lehtonen2015-09-091-7/+27
| | | | | | | | | | | | | | | | | | Enhance the logic behind the 'auto' mode a bit by only updating the SRCREV if the changes are already found upstream. The logic is simple: update SRCREV only if the current local HEAD commit is found in the remote branch (i.e. 'origin/<branch_name>'). Otherwise resort to patching. This affects a couple of the oe-selftest tests so update those as well. [YOCTO #7907] (From OE-Core rev: 9b9733b7d74032aef4979bec553019421e77da14) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: Allow disabling make parallelism on build commandLeonardo Sandoval2015-09-091-3/+30
| | | | | | | | | | | | | | | Through -s/--disable-parallel-make, the user can turn off parallelism on the make tool. This can be useful when debuging race condition issues. In order to set PARALLEL_MAKE = "" a post-config file created and then passed into the build. [YOCTO #7589] (From OE-Core rev: 0bf2e4b3edfc43e7a2e8d3387a9370d110533b7c) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: Create a single file for the build devtool featureLeonardo Sandoval2015-09-092-22/+50
| | | | | | | | | | | The intention is to have a single file for each devtool feature so devtool can grow in a modular way. In this direction, this patch creates build.py, moving all related build features from standard.py to build.py. (From OE-Core rev: 61bb1759f7ecb8b404f7d97573c61aef31f2f109) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add upgrade featureLeonardo Sandoval2015-09-092-1/+357
| | | | | | | | | | | | | | | | | | | | | Upgrades a recipe to a particular version and downloads the source code into a folder. User can avoid patching the source code. These are the general steps of the upgrade function: - Extract current recipe source code into srctree and create a branch - Extract upgrade recipe source code into srctree and rebase with previous branch. In case the rebase is not correctly applied, source code will not be deleted, so user correct the patches - Creates the new recipe under the workspace [YOCTO #7642] (From OE-Core rev: 4020f5d91b3e4d011150d5081d36215f8eab732e) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: improve modified file preservation to handle directory structuresPaul Eggleton2015-09-091-9/+21
| | | | | | | | | | | | Allow the _add_md5() function to be called with a directory in order to recursively add the files under it. Additionally, we need to skip preserving empty directories (since directories aren't listed in the md5 file). (From OE-Core rev: 9383af78adc854a6f6de8b1520edf3cea0c477a6) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scriptutils: split out simple fetching function from recipetoolPaul Eggleton2015-09-092-29/+28
| | | | | | | | | This will now also be used by "devtool upgrade". (From OE-Core rev: 0d0b8425eaf74a6d7f3d9f6471e6edca1a273c06) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: modify: enable do_shared_workdir for kernelMarkus Lehtonen2015-09-091-1/+1
| | | | | | | | | | | | | Do not put 'do_shared_workdir' into SRCTREECOVEREDTASKS when creating bbappend for kernel packages. This will allow building packages that depend on the shared build artifacts of kernel. [YOCTO #6658] (From OE-Core rev: 2355ccc627c0003a14693d1a023a003b7b44ea53) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* wic: round variable before converting to intEd Bartosh2015-09-091-1/+1
| | | | | | | | | | | | | | | Wic uses bitbake variable ROOTFS_SIZE to set correspondent partition size. This variable is a literal representing float value. Wic crashes trying to convert it to int with the error: invalid literal for int() with base 10: '10166.0' Fixed this by converting variable to float and rounding result. This should work for int and float literals. (From OE-Core rev: 3479e299b5f11dfcd3f5f97c4ad3e0449f6c6d6a) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool: add mechanism for updating extensible SDKQi.Chen@windriver.com2015-09-091-0/+197
| | | | | | | | | | | | | | | | | | | | | Enable updating the installed extensible SDK from a local or remote server, avoiding the need to install it again from scratch when updating. (This assumes that the updated SDK has been built and then published somewhere using the oe-publish-sdk script beforehand.) This plugin is only enabled when devtool is used within the extensible SDK since it doesn't make sense to use it next to a normal install of the build system. E.g. devtool sdk-update /mnt/sdk-repo/ devtool sdk-update http://mysdkhost/sdk (From OE-Core rev: 32cbd4c57fc8ca097a18929fc404c07322ef36dd) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-publish-sdk: add scriptQi.Chen@windriver.com2015-09-091-0/+143
| | | | | | | | | | | | | | | | Add a script to publish an extensible SDK that has previously been built to a specified destination. This published SDK is intended to be accessed by the devtool sdk-update command from an installed copy of the extensible SDK. e.g. oe-publish-sdk <ext-sdk> <destination> (From OE-Core rev: c201ab826046b30281341107b3e6a35204f5c9d8) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* postinst_intercept: allow to pass variables with spacesMartin Jansa2015-09-091-1/+1
| | | | | | | | | | | | | * trying to pass foo="a b" through postinst_intercept ends with the actual script header to containing: b foo=a which fails because "b" command doesn't exist. (From OE-Core rev: c66d7d85b7225be8c838449324d506565dd0081d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>