aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-05-13bitbake-user-manual: Added npm to other fetcher list.srifenbark/bb-manual-1.42Scott Rifenbark
Fixes [YOCTO #10098] Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2019-05-13HEADER: Drop itRichard Purdie
We don't really need a header boilerplate now the header is simplified, drop it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bitbake: Strip old editor directives from file headersRichard Purdie
There are much better ways to handle this and most editors shouldn't need this in modern times, drop the noise from the files. Its not consitently applied anyway. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bitbake: Drop duplicate license boilerplace textRichard Purdie
With the introduction of SPDX-License-Identifier headers, we don't need a ton of header boilerplate in every file. Simplify the files and rely on the top level for the full licence text. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bitbake: Add initial pass of SPDX license headers to source codeRichard Purdie
This adds the SPDX-License-Identifier license headers to the majority of our source files to make it clearer exactly which license files are under. The bulk of the files are under GPL v2.0 with one found to be under V2.0 or later, some under MIT and some have dual license. There are some files which are potentially harder to classify where we've imported upstream code and those can be handled specifically in later commits. The COPYING file is replaced with LICENSE.X files which contain the full license texts. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13build: Disable warning about dependent tasks for nowRichard Purdie
This breaks with rm_work so disable the warning until we find a better solution (and change the test accordingly too). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13build: Ensure warning for invalid task dependencies is usefulRichard Purdie
WARNING: elfutils: dependent task do_rm_work does not exist is much less useful than WARNING: elfutils: dependent task do_rm_work for do_deploy does not exist Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13knotty: Implement console 'keepalive' outputRichard Purdie
CI systems like jenkins and buildbot will timeout applications which haven't had console output in some period of time. Add 'keepalive' output to knotty which gives output every 5000s if not other output was made and tasks are still running. This reduces some problems encountered with our CI testing. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13knotty: Pretty print task elapsed timeJacob Kroon
A task's runtime is currently printed in seconds. Change it to include minutes and hours for easier reading. Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13build: Add verbnote to shell log commandsStefan Kral
Add the missing bbverbnote fifo cmd for logging from shell. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13tests/parse.py: Add testcase for addtask and deltaskRobert Yang
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13build.py: check dependendent task for addtaskRobert Yang
The following command is incorrect, but was ignored silently, that may suprise users: addtask task after task_not_existed This patch can check and warn for it. It would be better to also check "before" tasks, but there is no easier way to do it. [YOCTO #13282] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13BBHandler: Fix addtask and deltaskRobert Yang
The following commands are not supported, but they were ignored silently, that may suprise users: * addtask task1 task2 task2 is ignored * addtask task1 before task2 before task3 Should be: addtask task1 before task2 task3 * addtask task1 after task2 after task3 Should be: addtask task1 after task2 task3 * deltask task1 task2 task2 is ignore This patch can check and warn for them. [YOCTO #13282] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bitbake: fetch2/git: git-lfs checkNaveen Saini
Build will fail if repository has lfs contents in absense of git-lfs tool on host. Build will pass if repository may or may not contains lfs content if host has git-lfs installed. [YOCTO #13198] Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bb: siggen: Print more info when basehash are mis-matchedRobert Yang
This is useful for debugging. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bb: siggen: Make dump_sigfile and compare_sigfiles print uuid4Robert Yang
This can make people easier to understand bitbake-diffsigs/dumpsig's output, otherwise, it's hard to know it is a random uuid unless look into the code. E.g.: $ bitbake bc-native -ccleansstate -Snone $ bitbake bc-native -ccleansstate -Snone $ bitbake-diffsigs tmp/stamps/x86_64-linux/bc-native/1.07.1-r0.do_cleansstate.sigdata.* * Before: Taint (by forced/invalidated task) changed from nostamp:fe79d162-c4a8-4174-8007-f6d4aa09abdc to nostamp:28192187-5021-40c1-9e21-45483b62c910 * Now: Taint (by forced/invalidated task) changed from nostamp(uuid4):fe79d162-c4a8-4174-8007-f6d4aa09abdc to nostamp(uuid4):28192187-5021-40c1-9e21-45483b62c910 Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13bitbake-diffsigs: Use 4 spaces as indent for recursecbRobert Yang
It used 2 spaces as indent which wasn't clear enough, and might cause confusions, people might think it was in wrong format. Fixed: $ bitbake bc-native -ccleansstate -Snone $ bitbake bc-native -ccleansstate -Snone $ bitbake-diffsigs tmp/stamps/x86_64-linux/bc-native/1.07.1-r0.do_cleansstate.sigdata.* * Before: Hash for dependent task bc/bc_1.07.1.bb.do_clean:virtual:native changed from [foo] Taint (by forced/invalidated task) changed from [foo] Taint (by forced/invalidated task) changed from [foo] * Now Hash for dependent task bc/bc_1.07.1.bb.do_clean:virtual:native changed from [foo] Taint (by forced/invalidated task) changed from [foo] Taint (by forced/invalidated task) changed from [foo] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-13toaster: update to WarriorDavid Reyna
Update the fixture files to add Warrior and remove Sumo. [YOCTO #13287] Signed-off-by: David Reyna <David.Reyna@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-18bitbake-user-manual: Added section on modifying variablesScott Rifenbark
Fixes [YOCTO #12548] I created a new section titled "Modifying Variable Values" that provides instruction on how to use the "bitbake -e" command to be sure your configuration and variable values are as expected. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2019-04-12poky.ent: Removed "ECLIPSE" entity variables.Scott Rifenbark
These have never been used in the BB manual and were an artifact from copy-and-pasting the poky.ent file from the main yocto-docs repo to this bb repo when the BB manual was origially created. They are useless. I have removed them. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-12bitbake: Post release version bumnp to 1.43Richard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-12bitbake: Update version to 1.42.0Richard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-11utils: Let mkdirhier fail if existing path is not a folderAndre Rosa
Let mkdirhier fail if existing path is not a folder instead of assuming a directory hierarchy already exists. Signed-off-by: Andre Rosa <andre.rosa@lge.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-07utils: Make prune_suffix prune a suffixAndre Rosa
Make prune_suffix prune a suffix instead of replacing a substring that could happen more than once and not only when it ends with it. Signed-off-by: Andre Rosa <andre.rosa@lge.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29gitsm: Add need_update method to determine when we are going to a new SRCREVMark Hatle
If the system had previously fetched a source repository for use by gitsm, and then the SRCREV was updated and the new commit already existed, the system would not re-evaluate the submodules and update them accordingly. The cause of this issue was that need_update was being used, unmodified, from the base git fetcher. It did not have any knowledge, nor did it care if we were moving commits and needed to re-evaluate what was happening due to this switch. To fix the issue, during the download process we add all processed (by gitsm) srcrevs to the git config file, as bitbake.srcrev. This allows us to use a new need_update function that not only checks if the git commit is present, but if we have previously processed this commit to ensure all of the submodule components are also present. This approach is used, instead of iterating over the submodules in need_update to avoid a potential race condition that has affected us in the past. The need_update is called only with the parent locking. Any time we need to dive into the submodules, we need to lock, and unlock them, at each stage. This opens the possibility of errors in either the code, or unintended race conditions with rm_work. This issue was discovered by William A. Kennington III <wak@google.com>. The included test case was also written by him, and included unmodified. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-25fetch2: Use bb.utils.to_boolean() for BB_NO_NETWORKRobert Yang
Make it consistent with BB_FETCH_PREMIRRORONLY. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-25fetch2: Unify BB_FETCH_PREMIRRORONLYRobert Yang
The fetch2/__init__.py checks whether "BB_FETCH_PREMIRRORONLY" == "1", but fetch2/git.py and hg.py checks whether it is None, this makes it discontinuous, and BB_FETCH_PREMIRRORONLY = "0" doens't work as expected in the later case, so unify it to the previous one. (As BB_NO_NETWORK does). And also use bb.utils.to_boolean() to make them consistent. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-21fetch2: Print SCMs list when SRCREV_FORMAT is not setRobert Yang
This makes it easier to debug, especially when multipe SCMs like gitsm, otherwise we don't know why there are multiple SCMs. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-21fetch2/git: Fix clean to remove clonedirRobert Yang
The localpath is a symlink to clonedir when it is cloned from a mirror, for example: $ bitbake systemtap-native -cfetch $ ls downloads/git2 sourceware.org.git.systemtap.git -> /path/to/downloads/git2/mirror.path.git.sourceware.org.git.systemtap.git mirror.path.git.sourceware.org.git.systemtap.git There are both sourceware.org.git.systemtap.git and mirror.path.git.sourceware.org.git.systemtap.git in DL_DIR/git2, the symlink sourceware.org.git.systemtap.git is created by try_mirror_url(), but do_cleanall" only removed the symlink, didn't remove the real dir mirror.path.git.sourceware.org.git.systemtap.git, this may cause confusions, for example, I assumed that do_cleanall removed everything, but it didn't, and it would the re-used next time when do_fetch. This patch fixes the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-21cooker: Fix bbfile_config_priorities when BBFILE_PATTERN is emptyRobert Yang
The layer was not in bbfile_config_priorities when BBFILE_PATTERN is empty, this caused "bitbake-layers show-layers" can't show these layers, this was incorrect since these layer did exist. Add these layer to bbfile_config_priorities can fix the problem. Fixed: Add BBFILE_PATTERN_core = "" in oe-core/meta/conf/layer.conf $ bitbake show-layers | grep oe-core There was nothing, now the layer is shown Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-21fetch2: runfetchcmd(): Print workdir in debug messageRobert Yang
The workdir is an important message when run git command, for exmample, before the patch: Running git -c core.fsyncobjectfiles=0 branch --contains [snip] We don't know where it is running, now it is: Running 'git -c core.fsyncobjectfiles=0 branch --contains [snip]' in /path/to/git.opensvc.com.multipath-tools..git Which is easier to debug. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2: Fix undefined variable issuesRichard Purdie
Various refactors have left hanging variables, often in debug messages, hence why they haven't been spotted. Fix them (pylint spotted the issues). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2/wget: Remove pointless lambda functionRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2/wget: Clean up whitespace/commentsRichard Purdie
Clean up the whitespace and comments style, keep pylint happy. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2/wget: Fix typo in proxy handlingRichard Purdie
Fix a typo in a variable which would affect proxy handling spotted by pylint. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2/wget: Cleanup module importsRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-19fetch2/wget: Fix authentication in checkstatus() of the wget fetcherStefan Klug
I wonder how this used to work for anybody. Signed-off-by: Stefan Klug <stefan.klug@baslerweb.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-07.gitattributes: Add to improve git diff for minified css/js filesRichard Purdie
2019-02-25bitbake: fix version comparison when one of the versions ends in .Alexander Kanavin
Previously, this would happen: ====================================================================== ERROR: test_vercmpstring (bb.tests.utils.VerCmpString) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/alexander/development/poky/bitbake/lib/bb/tests/utils.py", line 45, in test_vercmpstring result = bb.utils.vercmp_string('1.', '1.1') File "/home/alexander/development/poky/bitbake/lib/bb/utils.py", line 143, in vercmp_string return vercmp(ta, tb) File "/home/alexander/development/poky/bitbake/lib/bb/utils.py", line 135, in vercmp r = vercmp_part(va, vb) File "/home/alexander/development/poky/bitbake/lib/bb/utils.py", line 124, in vercmp_part elif ca < cb: TypeError: '<' not supported between instances of 'NoneType' and 'int' ---------------------------------------------------------------------- Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-23cooker: Tweak multiconfig dependency resolutionRichard Purdie
There were a couple of problems with the multiconfig dependency resolution: - the "if mc" condition triggering this code wasn't correct, it needs to be "if more than one multiconfig" configured - after adding providers we need to call add_unresolved again and rebuild mcdeps within the "while new" loop By fixing these issues we allow various other combinations of multiconfig builds to work which previously didn't. [YOCTO #13090] [YOCTO #13130] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-23siggen: Fix multiconfig corner caseRichard Purdie
There was already a fix to ignore some multiconfig dependencies but its 'opposite' case wasn't covered. Cover that combination to so as to avoid tracebacks in multiconfig builds. [YOCTO #13090] [YOCTO #13130] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-23runqueue: Filter out multiconfig dependencies from BB_TASKDEPDATARichard Purdie
The consumers of BB_TASKDEPDATA in OE metadata can't cope with multiconfig dependencies. The choice is either to start adding code to each of them to filter out multiconfig dependencies, or do this at source. After consideration we've decided to do this at source as doing otherwise is code duplication and error prone and in any case we've looked at, they don't make sense. [YOCTO #13090] [YOCTO #13130] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-16runqueue: Fix dependency loop analysis 'hangs'Richard Purdie
Currently the mechanism for breaking out of the dependnecy loop analysis code is broken and doesn't work leading to bitbake appearing to hang. Add in a custom exception for this purpose and fix the code to exit as intended, fixing the hang and making the dependency loop code usable again. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-14bitbake: Allow arguments in FAKEROOTCMDJoshua Watt
Changes FAKEROOTCMD so that it can accept additional arguments to pass to the fakeroot implementation instead of being treated as a simple command Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12bitbake: cookerdata: Check duplicated BBFILE_COLLECTIONSRobert Yang
It shouldn't work when there are duplicated BBFILE_COLLECTIONS. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12build.py: add unhandled exception information to the logger when executing ↵Alexander Kanavin
python tasks Previously this information was simply discarded, which in some cases resulted in generic, unhelpful failures. With this change the user would see what the exception is, but without ugly tracebacks or bulky, irrelevant information from the log file. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12bitbake: remove True option to getVar callsAndré Draszik
getVar() has been defaulting to expanding by default for a long time (2016), thus remove the True option from getVar() calls with a regex search and replace. Search & replace made using the following command: sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \ -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \ | cut -d':' -f1 \ | sort -u) Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12bitbake-user-manual: Fixed section head typoScott Rifenbark
Unseting -> Unsetting Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-05server/process: Add missing exception raiseRichard Purdie
The intent of the code was to catch one kind of error, it was actually swallowing all exceptions and looping indefinitely. Fix it to work as intended. This explains some mystery hangs we've been seeing. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-05bitbake: ConfHandler: Don't strip leading spacesRobert Yang
Fixed: - Add the following lines to conf/local.conf: FOO = "BAR1" FOO_append = "\ BAR2" $ bitbake -e | grep '^FOO' FOO="BAR1BAR2" The leading spaces in the second line have been removed. - But if add the previous two lines to base.bbclass: $ bitbake -e | grep '^FOO' FOO="BAR1 BAR2" The leading spaces in the second line are preserved, this is inconsistent, now fix ConfHandler to preserve leading spaces. [YOCTO #12380] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>