summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
Commit message (Collapse)AuthorAgeFilesLines
* bitbake: toastergui: recipe and layer identificationAlexandru DAMIAN2015-03-211-3/+16
| | | | | | | | | | This patch fixes the recipe and layer identification by path when Toaster uses relative paths. (Bitbake rev: a92bb33a3ceacab2bfee9df1c39a202832866970) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: fix error message parameterAlexandru DAMIAN2015-03-211-1/+1
| | | | | | | | | Fix the error message parameter. (Bitbake rev: 64b0867108d03c7e9215b80c59c1bba919e82994) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: improve info in the toaster_ui.logAlexandru DAMIAN2015-03-212-4/+16
| | | | | | | | | | We improve logging and signalling of errors in the toaster_ui.log to facilitate debugging on remote systems. (Bitbake rev: 3cd248f99b90367bd41aab81e255fc1912434890) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: knotty.py: fix indentRobert Yang2015-03-191-19/+19
| | | | | | | | | It used 5 spaces as the indent. (Bitbake rev: 162d35ed53d34b28b153adf643044e7f105fcff1) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: relative recipe pathsAlexandru DAMIAN2015-03-161-1/+7
| | | | | | | | | | | We modify the toasterui to log relative recipe paths in order to maintain consistency with data fetched from the layer sources. (Bitbake rev: 253d69e88fd68729196ad43c15e8733527d76198) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: identify proper layer in build modeAlexandru DAMIAN2015-03-161-5/+18
| | | | | | | | | | | | In build mode, instead of creating our own layer objects, we identify the layer objects that the build system set up. [YOCTO #7378] (Bitbake rev: 22962b540ace6868cb357c0fd13f01ffd24449c4) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: knotty: Do not log show_versions outputRob Woolley2015-03-161-1/+1
| | | | | | | | | | | | | Every time the bitbake show versions command (bitbake -s) is run it creates a 100k log file. The consolelogfile is disabled for show environment and disabling show versions would make the behaviour match. (Bitbake rev: dee0ba94e39ea49c1e9261a5e8932356e3bb7c57) Signed-off-by: Rob Woolley <rob.woolley@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: knotty: Catch exceptions on broken pipesRob Woolley2015-03-161-19/+24
| | | | | | | | | | | | | | | | Any exceptions that occur in calls to logging methods are automatically suppressed, including exceptions due to broken pipes. However, the knotty summary messages are printed directly to stdout, which means that any broken pipes will cause an exception traceback in python. By wrapping the summary section in a try / catch block we can check for IOError exceptions caused by broken pipes and let them pass. (Bitbake rev: 146e7e157f97b676858ecff583dd53800d997253) Signed-off-by: Rob Woolley <rob.woolley@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/server: Fix up 100% CPU usage at idleRichard Purdie2015-03-103-1/+7
| | | | | | | | | | | | | | | The recent inotify changes are causing a 100% cpu usage issue in the idle handlers. To avoid this, we update the idle functions to optionally report a float value which is the delay before the function needs to be called again. 1 second is fine for the inotify handler, in reality its more like 0.1s due to the default idle function sleep. This reverts performance regressions of 1.5 minutes on a kernel build and ~5-6 minutes on a image from scratch. (Bitbake rev: 0e0ba408c2dce14a0fabd3fdf61d8465a031495b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Revalidate checksums, YOCTO #5571Clemens Lang2015-03-091-10/+102
| | | | | | | | | | | | | | | | | | | | | | | [YOCTO #5571] -- https://bugzilla.yoctoproject.org/show_bug.cgi?id=5571 The following workflow (whether accidentally or deliberately) would previously not result in a checksum error, but would be helpful to do so: - Write a recipe with correct checksums - Fetch the sources for this recipe using bitbake - Change the checksums Since the bitbake fetcher writes a done stamp after the initial download and does not verify the checksums again (even if they are changed in the recipe afterwards), the change of checksums is silently ignored. Fix this without the overhead of computing the checksums from scratch on every do_fetch by storing them in pickled format in the done stamp and verifying that they still match those in the recipe. (Bitbake rev: fbd4a0d422cf7f43db2f9eab2e47c41246a9031e) Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: xmlrpc server: delete function on errorsAlexandru DAMIAN2015-03-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | This patch makes sure to delete an idle function that raises an exception for the xmlrpc server. The counterpart functionality in the process server was added with: commit db50630948394bdcd361f3511af40c1896b1a017. duthor: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Wed Aug 20 22:31:06 2014 +0000 bitbake: process: Deal with infinite looping of the server This patch fixes [YOCTO #7316] (Bitbake rev: e7c9a6788d969c901fd6394416ac3936e62c4c72) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: make sure state is properly used to accept clientsAlexandru DAMIAN2015-03-091-3/+3
| | | | | | | | | | | | | | This patch fixes a bug where if the build is force stopped, subsequent clients cannot connect to the server due to unnecessary limits on setFeature. Additionally, we make sure that the state is properly reset even if the BuildCompleted event firing excepts for some reason. (Bitbake rev: 0b66b05169688aa4ddc4c54d175bb961b2f27fec) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: xmlrpcserver: do not connect client on errorAlexandru DAMIAN2015-03-091-0/+2
| | | | | | | | | | | We roll back the client connection if some error happens, like during setFeatures, as to leave the server accessible to other clients. (Bitbake rev: 4e4a2ee2f05f8741b2e09263e328420363975b02) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: read file watches on server idleAlexandru DAMIAN2015-03-091-7/+23
| | | | | | | | | | | | | | | | | | The inotify facility monitoring changes to the config files could be overwhelmed by massive changes to the watched files while server is running. This patch adds verification the notification watches to the server idle functions, in addition to the cooker updateCache command which executes only infrequently, thus preventing overflowing the notification buffer. [YOCTO #7316] (Bitbake rev: 996e663fd5c254292f44eca46f5fdc95af897f98) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: do not use transactions if the database autocommitsAlexandru DAMIAN2015-02-271-8/+12
| | | | | | | | | | | | | | | | | Some databases, notably the SQLite3 adapter, force autocommits even if the autocommit is turned off. The behavious is tracked in this bug: http://bugs.python.org/issue8145#msg109965 Django refuses to work with autocommit off in this case, so we have to take the same precautions when using manual transaction support. [YOCTO #7363] [YOCTO #7365] (Bitbake rev: 90231ab63a129fa344d461c2911898ea0f07f206) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: fix sstate task identificationAlexandru DAMIAN2015-02-271-2/+2
| | | | | | | | | | | | This patch fixes a problem where set sstate scene tasks were not identified, causing cache attempt not being recorded. [YOCTO #7223] (Bitbake rev: 8a326a9a5a08981f1b7960e02fdb8a9436db16fb) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: disable autocommit for build loggingAlexandru DAMIAN2015-02-241-0/+11
| | | | | | | | | | | | | | | | | | This patch disables autocommit for inserting build data, effectively updating all build data in a single transaction. This is a purely performance improvement patch, as the transaction will always be commited. Similar manual transaction handling in the layer source update method. Added feedback messages during update method. [YOCTO #7140] (Bitbake rev: 3978c819e797f857235499a4b8ec238134f1c028) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: bitbake cooker log saving and downloadingAlexandru DAMIAN2015-02-202-3/+29
| | | | | | | | | | | | | | | | | | | | | This patch brings in cooker log saving and proper download links. * toasterui will now write the cooker log file if running in managed mode * the BuildRequest has a new state, REQ_ARCHIVE, indicating that the build is completed, and the artifacts are ready to be grabbed * the runbuild test execution commands will gather needed artifacts, and save them to a storage directory selected during Toaster setup. * the build dashboard, project builds and all builds pages have permanent links for the cooker log [YOCTO #7220] [YOCTO #7206] (Bitbake rev: fad80e36c9da663b000cdf2cb3c75440c6431d84) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tests/fetch.py: latest_versionstring add set of PNAníbal Limón2015-02-161-0/+2
| | | | | | | | | | Add set of PN in data because now latest_versionstring use it for validate version directory searching. (Bitbake rev: 2e4a03db967ac1459b2764108fc54c4566a7e371) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget remove scape of - in regexes don't neededAníbal Limón2015-02-161-9/+9
| | | | | | | (Bitbake rev: 8fa43245351f3ec0a5007b2742c08b7ef98e7879) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget _modelate_version improvmentsAníbal Limón2015-02-161-3/+3
| | | | | | | | | Fix sustition for rc, beta and alpha releses from -N to N weight. (Bitbake rev: 63a9e60a6d80cfd2693ec1a6359785dc19f98e1f) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget latest_versionstring improvments in get version by dirAníbal Limón2015-02-161-71/+37
| | | | | | | | | | | | | | Add support for scan every version directory using _check_latest_version makes code more robust because sometimes upstream projects publish new directories without files, causing don't find version. To support this new behaviour remove _check_latest_dir and replace for _check_latest_version_by_dir, (Bitbake rev: 1a75b3707743c32eec9d2cf566fb6bbea9f73784) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget add _check_latest_version_by_dirAníbal Limón2015-02-161-6/+46
| | | | | | | | | | | | | | | | | | | | | Add _check_latest_version_by_dir this function provides support for scan every directory newer than current dir in order to get latest_versionstring, example: http://somedoamin.com/project/v2.1/ http://somedoamin.com/project/v3.0/ Change return of _vercmp from True/False to -1/0/1 to provide test when current directory is equal to newer directory this helps to scan the same directory to get minor versions, example: http://somedoamin.com/project/v2.1/project-v2.1.2.tgz http://somedoamin.com/project/v2.1/project-v2.1.6.tgz (Bitbake rev: 5f7c5eb218a221165f59a0f4dd48d2d97f756193) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget latest_versionstring _check_latest_version improvmentsAníbal Limón2015-02-161-26/+25
| | | | | | | | | | In order to reduce code duplication now compile package_regex in _init_regexes instead of make this decision at _check_latest_version, (Bitbake rev: e7284e3ad0e7dd91ed59dfbf8450ef62e89c7e54) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: wget latest_versionstring improve _parse_pathAníbal Limón2015-02-161-20/+24
| | | | | | | | | | | Add support for get group only if exist in regex, this enables to use this function in _check_latestversion regardless if the regex is generic or specified by REGEX_URI. (Bitbake rev: 1127af5b8c458929c4685b0326f86870ed09442e) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: rework LAYERDEPENDS versioning so that it is actually usefulPaul Eggleton2015-02-163-26/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We've had versioned dependency support in LAYERDEPENDS for quite a long time, but I can say with pretty good certainty that almost nobody has used it up to now because it was too strict - the specified version had to exactly match the version in your configuration or you would get an error; there was no "greater than or equal" option, which is usually what you will want given that LAYERVERSION does get bumped from time to time. However, users mismatching layer branches and then having their builds fail later on with some incomprehensible error is still a pretty common problem. We can't simply use the git branch because not everyone is always on a branch and the branch names don't always match up (and that's not an issue). To provide a practical means to address branch mismatching, I have reworked LAYERDEPENDS version specifications to use the more familiar "dependency (>= version)" syntax as used with package dependencies, support non-integer versions, and clarified the error message a little. If we then take care to bump the version on every breaking change, it is at least possible to have layers depend on these changes when they update to match; we can now even support a major.minor scheme to allow retrospectively adding a version limiter to old branches when a new branch is created and yet still allow the old branch minor version to be bumped if needed. Fixes [YOCTO #5991]. (Bitbake rev: 408be9cdf2b1e32e64ea488d8051a546fb54c144) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tests: add tests for OE pre-release version formattingPaul Eggleton2015-02-161-0/+4
| | | | | | | | | | | This scheme is used for versioning recipes that are pre-release (alpha, beta, etc.) within OpenEmbedded, so add some tests to ensure the appropriate comparison results still hold true. (Bitbake rev: 3a9eefe27f29a4593d6298f0427ac5f3e9183377) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: utils: ensure explode_dep_versions2 raises an exception on ↵Paul Eggleton2015-02-161-0/+4
| | | | | | | | | | | | | invalid/missing operator We really want an error rather than the version to just be silently skipped when the operator is missing (e.g. "somepackage (1.0)" was specified instead of "somepackage (>= 1.0)".) (Bitbake rev: b6dc946f477adc40d68da16e2f2580cb3b4a10db) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: depexp.py: Fix segfault if DISPLAY is not setMaxin B. John2015-02-161-0/+7
| | | | | | | | | | | | bitbake -g -u depexp <package> segfaults when DISPLAY is not set properly. Fix it with a proper check. [YOCTO #7299] (Bitbake rev: f35e9bd7b59c180fe9a3d9177efb57b92d9cd373) Signed-off-by: Maxin B. John <maxin.john@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: improve logging facilities for toasterAlexandru DAMIAN2015-02-101-12/+35
| | | | | | | | | | | | | | | | | | | This patch improves the logging facilities for toaster in order to help diagnose bugs that happen on user machines. The logs are stored now under "/tmp/toaster_$$" where $$ is a PID-based unique identifier. On shutdown, toaster will automatically erase all logs unless errors are listed in the log file. On error, Toaster provides suggestions on what to do. This patch includes a minor fix found as a result of logging improvements. (Bitbake rev: 8a8248f7b7e30469f592e2f8adbf6ce21e8685c5) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data_smart: split expanded removal values when handling _removeRoss Burton2015-02-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Given these assignments: TEST="a b c d" TEST_remove = "b d" TEST evaluates to "a c". However, if the _remove override is given as a variable: TEST="a b c d" FOO = "b d" TEST_remove = "${FOO} TEST evaluates to "a b c d", because when FOO is expanded it isn't split into a list. Solve this by splitting all members of removeactive once they've been expanded. [ YOCTO #7272 ] (Bitbake rev: 207013b6dde82f9654f9be996695c8335b95a288) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tests/data: add test for incorrect remove behaviourRoss Burton2015-02-031-0/+7
| | | | | | | | | | The _remove operator isn't working correctly when used with a variable that expands to several items, so add a test case to exercise this path. (Bitbake rev: cb2a62a5fbffb358528a85b46c1fc6383286cb9d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data_smart: Don't use mutable objects as default argsRichard Purdie2015-01-291-1/+6
| | | | | | | | | | | | | These only have one instance created which means your subsequent datastores can contain echos of previous ones. Obviously this is not the behaviour we want/expect. It doesn't affect bitbake too badly as we only have one datastore, it does massively potentially break our selftests though. Thanks to Tim Amsell for pointing out the now obvious problem! (Bitbake rev: 9facf3604759b00e8fe99f929353d46f8b8ba5cb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: parse/ast: Fix issue if path contains '&'Pascal Bach2015-01-291-1/+1
| | | | | | | (Bitbake rev: 4fea138f7cef53626a40decb96207dbaf9284020) Signed-off-by: Pascal Bach <pascal.bach@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: do not filter images by extensionAlexandru Damian2015-01-291-1/+1
| | | | | | | | | | | | | | | | | | ToasterUI filters build artifacts by extension in order to determine if a build artifact is an image or not. Using IMAGE_FSTYPES for this purpose is not correct as the varible value holding image extensions is just a coincidence. So we just look if the filename contains the "rootfs" magic string, which is a pretty good approximation. [YOCTO #7213] (Bitbake rev: b11e8bd626e0212ee72914529c3d92d1dd718674) Signed-off-by: Alexandru Damian <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: siggen: Ensure taskdata default functions exist in base classRichard Purdie2015-01-231-6/+7
| | | | | | | | | | | | The get/set_taskdata functions are now part of the API of the class, ensure they exist in the base class definition so the noop handler works. [YOCTO #7233] (Bitbake rev: 9b5b1bd7d77e3f5886f6c557d3b750de1f6d6025) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Use expanded_data for ASSUME_PROVIDEDRichard Purdie2015-01-231-2/+2
| | | | | | | | | | | Users expect operators like _remove to work on this variable. We need to use expanded_data to ensure this happens correctly. [YOCTO #7135] (Bitbake rev: cc4c8478fc547ea0ebf827a8d319496b39f25684) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Rename event_data -> expanded_dataRichard Purdie2015-01-232-14/+15
| | | | | | | | | | event_data would be better named expanded_data, then we can widen its scope to other places in cooker where we need to access an expanded data store. We certainly don't want multiple expanded data stores. (Bitbake rev: 1a3c1c9203e1a1452314954f1cfd771e5c1ce89b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: server/process: Fix select callRichard Purdie2015-01-231-1/+1
| | | | | | | | | | | | | There was a report that bitbake -e | less would use 100% cpu when it shouldn't really. The issue appears to be a bogus file descriptor in the select call. We shouldn't be blocking if there is event data pending to a *reader* from server context. [YOCTO #7138] (Bitbake rev: 8f166e1a0f3574ae7d1e917a8bb403b87bad15bf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: save event backlog to buildAlexandru DAMIAN2015-01-231-2/+9
| | | | | | | | | | | We add a call that saves any queued events to the build [YOCTO #7021] (Bitbake rev: 4f5b19d453da64749affc1c27ec51b013bedc71a) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetcher: use os.path.splitext() instead of string.split()Ross Burton2015-01-211-3/+3
| | | | | | | (Bitbake rev: 1689edd35477a126bfbf4bd3257c4f1f9e16f20d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bb/fetch2/wget.py: latest_versionstring escape packagename when ↵Aníbal Limón2015-01-211-1/+1
| | | | | | | | | | | | | | | built regex When built package regex for use in searching upstream version in sites, the package name need to be escaped to avoid usage of special regex char. For example when search for gtk+, '+' need to be escaped. (Bitbake rev: 1aa1de4b0c5bd34466e04844bbc371933736be59) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker.py: trap the ENOSPC error and translate itRobert Yang2015-01-211-0/+5
| | | | | | | | | | Trap the ENOSPC error and translate it into a human readable error message, which is good for debugging. (Bitbake rev: 2b084dff6ff0d274fbbf7ab07022507f7249e427) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Further optimise pyinotifyRichard Purdie2015-01-211-1/+1
| | | | | | | | | | | | | | We currently add crazy numbers of watches on files. The per user limit is 8192 by default and on a system handling multiple builds, this can be an issue. We don't need to watch all files individually, we can watch the directory containing the file instead. This gives better resource utilisation and better performance further reverting some of the performance regression seen with the introduction of pyinotify. (Bitbake rev: a2d441237916a99405b800c1a3dc39f860100a8c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: command/cooker/knotty: Fix memres handling of command environment ↵Richard Purdie2015-01-214-5/+26
| | | | | | | | | | | | | | | | changes If the environment changes, we need memory resident bitbake to adapt to those changes. This adds in functionality to handle this alongside the configuration option handling code. This means that the common usage: MACHINE=X bitbake Y now works with the memory resident server. (Bitbake rev: 4d1343010da757a0c126bc22475354da44aaf8e3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/fetch2: Tweak get_srcrev() function descriptionRichard Purdie2015-01-211-2/+4
| | | | | | | | Tweak the comments on get_srcrev() to better describe its function. (Bitbake rev: b4d40f1ac7b32990c456cce261f99a5a157b5ae5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toasterui: fix variable data errorAlexandru DAMIAN2015-01-161-1/+1
| | | | | | | | | | | | | A bug slipped in the toaster ui that prevented saving of build configuration despite the data being retrieved from the server. This patch fixes the shaming mistake. [YOCTO #7117] (Bitbake rev: 8118f465b9f87c66b2a741008f69198ac5fea901) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: ConfHandler: Clean up bogus importsRichard Purdie2015-01-161-6/+4
| | | | | | | | | | The import statements here are plain bizarre. Remove them, tweaking some of the function calls to match current practices. I can't find any reason these old imports are as they are. (Bitbake rev: 4c2f1fe51a13ddc97e518327714292af46b9e1ab) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: ConfHandler: Rename oldfn to parentfn to be clearerRichard Purdie2015-01-161-5/+5
| | | | | | | | | | Looking at this function I had no idea what oldfn was, I doubt anyone else would either without looking up what the caller does. "parentfn" would seem a more appropriate name so rename it. (Bitbake rev: fc70ed596703a1aa954223b169d4ad51193a6ec1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Improve pyinotify performanceRichard Purdie2015-01-161-0/+6
| | | | | | | | | | | | | | Benchmarks show that the introduction of pyinotify regressed performance. This patch ensures we only call the add_watch() function for new entries, not ones we've already processed which does improve performance as measured by "time bitbake -p". This doesn't completely remove the overhead but it does substantially reduce it. (Bitbake rev: 493361f35f6cc332d4ea359a2695622c2c91a9c2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>