summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/fetch2
Commit message (Collapse)AuthorAgeFilesLines
* bitbake: bitbake: Add explict getVar param for (non) expansionRichard Purdie2015-06-233-4/+4
| | | | | | | | | | | | | | Rather than just use d.getVar(X), use the more explict d.getVar(X, False) since at some point in the future, having the default of expansion would be nice. This is the first step towards that. This patch was mostly made using the command: sed -e 's:\(getVar([^,()]*\)\s*):\1, False):g' -i `grep -ril getVar *` (Bitbake rev: 659ef95c9b8aced3c4ded81c48bcc0fbde4d429f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/hg: Disable checksums for archived downloadsAsh Charles2015-05-261-0/+7
| | | | | | | | | | | | | | | | Like the Git fetcher, the Mercurial fetcher shouldn't expect recipes to provide a checksum. As described [1], recipes using a mercurial fetcher that don't provide a checksum will fail in a the repository has previously been downloaded and archived. Credit to Rafaël Carré for figuring out the bug. [1] https://www.mail-archive.com/openembedded-devel@lists.openembedded.org/msg41328.html (Bitbake rev: 2df35a25b4968f64adfa673d5b73442c1a30829d) Signed-off-by: Ash Charles <ashcharles@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/git.py: Add gitpkgv_revision alternative version informationMike Looijmans2015-05-241-0/+25
| | | | | | | | | | | | | | | | gitpkgv_revision returns a sortable revision number that can be used in the PKGV variable for example. To mimic meta-openembedded gitpkgv behaviour to provide a sortable revision numner, one could set the following: PKGV = "1.0+${@bb.fetch2.get_srcrev(d, 'gitpkgv_revision')}" This would yield a package version like "1.0+69+fb5eb80". (Bitbake rev: 989c08f62aff7b707c25c692c23284f16506b7bc) Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/__init__.py: Make get_srcrev output configurableMike Looijmans2015-05-241-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | The idea here is to support package version numbering similar to gitpkgv in meta-openembedded. This commit is the first step towards such functionality. The original plan was to add a "get_pretty_srcrev" method to the fetcher, as per Richard's suggestion [1]. While writing this, I noticed that it would become a copy of get_srcrev with only two lines changed. So to create something more Pythonic than a boolean argument and conditionals around the calls to the fetcher's sortable_revision, I just made the method to be called on the fetcher an argument to the method. Defaulting to 'sortable_revision' prevents affecting existing code. Now if the git fetcher were to implement, say 'gitpkgv_revision' one could set the following in a recipe: PKGV="1.2+${@bb.fetch2.get_srcrev(d, 'gitpkgv_revision')}" and this would yield the same result as gitpkgv's GITPKGV variable. See for the discussion leading to this change: [1] http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100345.html (Bitbake rev: 2f1f4483493cc290f5d2c07f9906e90eaea2f4c1) Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/git: Fix uri in git checkstatusMarcin Smoczyński2015-05-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Pass proper repository url without arguments after a semicolon. Executing checkuri on a rule with git repository in SRC_URI does not report errors when working offline because wrong repository url is passed to the ls-remote command. For example "bitbake -c checkuri glibc" command executes: "git -c core.fsyncobjectfiles=0 ls-remote git://sourceware.org/git/glibc.git;branch=release/2.21/master" command in a shell subprocess to determine if url is valid. Shell subprocess executes in fact 2 commands: "git -c core.fsyncobjectfiles=0 ls-remote git://sourceware.org/git/glibc.git" and "branch=release/2.21/master" First one returns 127 or 128 depending on error but second one returns 0 because it is just env variable setup. Therefore we're not catching connection error. [YOCTO #7558] (Bitbake rev: efa44d04137977f883db4a643b0f774e91514722) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/hg.py: add clean functionRobert Yang2015-05-191-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed when bitbake vim -ccleanall: File: '/path/to/bitbake/lib/bb/fetch2/__init__.py', lineno: 1462, function: clean 1458: def clean(self, urldata, d): 1459: """ 1460: Clean any existing full or partial download 1461: """ *** 1462: bb.utils.remove(urldata.localpath) 1463: 1464: def try_premirror(self, urldata, d): 1465: """ 1466: Should premirrors be used? File: '/path/to/bitbake/lib/bb/utils.py', lineno: 633, function: remove 0629: subprocess.call(['rm', '-rf'] + glob.glob(path)) 0630: return 0631: for name in glob.glob(path): 0632: try: *** 0633: os.unlink(name) 0634: except OSError as exc: 0635: if exc.errno != errno.ENOENT: 0636: raise Exception: OSError: [Errno 21] Is a directory: '/path/to/downloads/hg/vim.googlecode.com/hg/vim' (Bitbake rev: 02763306662e15a4750395e5eab64ba98d1f9939) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Improve mirror building function error handlingRichard Purdie2015-05-161-1/+3
| | | | | | | | | | | | | | | First, when building mirror urls we don't do any fetching so we should never be calling clean functions. Currently, if a mirror url fails, we don't process it further to see if there are any mirrors of the mirror. We should do this even when the mirror url fails, else we may miss out on valid/useful mappings, particularly in the case of file:// urls. (Bitbake rev: b7fd3ec9994f664b17fc86423e6e7afac07e897b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Allow GIT_SMART_HTTP to be passed throughLiam R. Howlett2015-05-161-0/+1
| | | | | | | | | | Allow GIT_SMART_HTTP to be passed through to the fetch command so that servers that cannot use GIT_SMART_HTTP can be used by the fetcher. (Bitbake rev: e5c97a85bed0436d48eeaac2e32962cfb5371d2f) Signed-off-by: Liam R. Howlett <Liam.Howlett@WindRiver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake: fetch2/git: Add URL when latest_revision generates an ↵Mariano Lopez2015-05-151-1/+2
| | | | | | | | | | | | | | | | exception. The URL is not sent when _latest_revision generates and exception. When performing the sanity checks it is not possible to know the URI that failed. This add the URL when latest_revision generates an exception. [YOCTO: #7592] (Bitbake rev: 9f2115b07a55cb14e4a74dc6fbd3707c28a234d0) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/git: ensure the unpacked origin remote points upstreamPaul Eggleton2015-05-151-14/+17
| | | | | | | | | | | | | | | | | If you're interested in using the checked out repository for development (e.g. in OE with devtool) then you ideally want the origin remote to point to the repository it was fetched from, so just set that after cloning. (As part of this I did a minor refactor so we have one function to generate the repository URL, which was already in two places.) Fixes [YOCTO #7756]. (Bitbake rev: 80ecd1c54d4c748cee3a7ce0d64013a346e7671e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Add BB_ALLOWED_NETWORKS supportLiam R. Howlett2015-05-121-0/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | BB_ALLOWED_NETWORKS is a list of hosts that the fetcher will be allowed to use when BB_NO_NETWORK is not set. If BB_NO_NETWORK is set, then networking is still disabled. If BB_ALLOWED_NETWORKS is not set, the behaviour remains the same as today. If BB_NO_NETWORK is NOT set, and BB_ALLOWED_NETWORKS is configured, then only the hosts in the list are usable by the fetcher. eg: BB_ALLOWED_NETWORKS="yoctoproject.org git.gnu.org" The fetcher will be able to download from yoctoproject.org, git.gnu.org, but not ftp.gnu.org or any other hostname that is not in the list. There is also limited support for wildcards on the beginning of the hosts, so BB_ALLOWED_NETWORKS="*.gnu.org" with match git.gnu.org and ftp.gnu.org as well as foo.git.gnu.org (Bitbake rev: c7263096ba31ba45daeeb9de90c1cb9ebef24a28) Signed-off-by: Liam R. Howlett <Liam.Howlett@WindRiver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/hg: support submodulesDaniel McGregor2015-05-121-19/+36
| | | | | | | | | | | | | | | Use hg clone and hg pull to copy the source into the build directory rather than taring up the cloned repository and untarring in the destination. This allows submodules to be cloned. While here, make the default behaviour keep the hg scm data to match the behaviour of the git fetcher. (Bitbake rev: f002b1ca80cb542a4ed0c06c53c914cd5e076565) Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Allow git to use a different CA Bundle with private keysJason Wessel2015-05-121-0/+1
| | | | | | | | | | | | | | | | | | Setting BB_ENV_EXTRAWHITE to include GIT_SSL_CAINFO is enough to get "git ls-remote" to work for recipe parsing but it is not enough to get the fetcher to clone properly. This is because the fetcher has its own idea about what variables should be exported in the environment for some operations. It is desirable to use alternate CA Bundles for internal testing prior to using public keys for https, so we should allow the GIT_SSL_CAINFO to pass through. (Bitbake rev: 40ff92282bbf32cf644b021bf7cbb1f393dbb856) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/git: Remove a possible trailing '/' in subpathAnders Darander2015-04-171-1/+1
| | | | | | | | | | | | If the subpath parameter to the git fetcher ends with a trailing '/', bb.utils.prunedir() will be called on '/'... Fixes [YOCTO #7620]. (Bitbake rev: 380a3fb372c8b0a53dd7528562e6e7a222dc76ef) Signed-off-by: Anders Darander <anders@chargestorm.se> 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: 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: 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: 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: bb/fetch2/ssh.py: Fix urldata.localpath use os.path.normpathAníbal Limón2015-01-141-1/+2
| | | | | | | | | | | | | | | | When urls ends with trailing slash os.path.basename return "" [1] and built urldata.localpath only with DL_DIR, it causes that donestamp is built as DL_DIR + '.done' and seems that ssh resource was already download. [YOCTO #6448] [1] https://docs.python.org/2/library/os.path.html#os.path.basename (Bitbake rev: 47992591349bab2c12741b937096e41085399087) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/git: Improve ls-remote handling for latest_revisionRichard Purdie2015-01-141-4/+11
| | | | | | | | | | | | | | | | | | | Currently the code ignores lightweight tags which has caused some user complaints. We can't put the right search list in place easily since the results don't come back in a good order, head happens to sort before tags. In the end I refactored the function so we get the complete list of remotes and then we can filter it ourselves in the order we chose, including checking for light weight tags, preferring the proper ones. Hopefully this resolves the issues people have been seeing. [YOCTO #6881] (Bitbake rev: 07ad307065bb15a48f0015b9e4a643201abdc283) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cache/fetch2/siggen: Ensure we track include history for file checksumsRichard Purdie2015-01-081-17/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, if you reference a file url, its checksum is included in the task hash, however if you change to a different file at a different location, perhaps taking advantage of the FILESPATH functionality, the system will not reparse the file in question and change its checksum to match the new file. To correctly handle this, the system not only needs to know if the existing file still exists or not, but also check the existance of every file it would have looked at when computing the original file. We already do this in the bitbake parsing code for class inclusion. This change uses the same technique to log the file list we looked at and if files in these locations exist when they previously did not, to invalidate and reparse the file. Since data stored in the cache is flattened text, we have to use a string form of the data and split on the ":" character which is ugly, but is an internal detail we can improve later if a better method is found. The cache version changes to trigger a reparse since the previous cache data is now incompatible. [YOCTO #7019] (Bitbake rev: 6c0706a28d72c591f1b75b6e3f3b645859387c7e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: wget: Add localpaths method which gives localpath with historyRichard Purdie2015-01-081-21/+33
| | | | | | | | | | | | | | In some cases for cache purpoes we not only need to know which file is going to be used but also which paths were considered. Add a localpaths method which includes the history. The core which() funciton already supports this, this just extends the function to preserve the extra data we need. localpath becomes just a special case of the case with history. (Bitbake rev: ea5efeac5c1f7986666c979f789786f29fc1619a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/wget: Fix horrible temp file handlingRichard Purdie2014-12-251-2/+1
| | | | | | | | | | Hardcoding a temp directory is bad practice and leads to races between the tests. There is no longer any good reason for doing this, drop it and ensure the files get cleaned up correctly. (Bitbake rev: 10a47b1ec7470c9e8c4ffe0bb35cdf6d1bb2ee2e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bb/fetch2/wget.py: latest_versionstring fix multithread and remove ↵Aníbal Limón2014-12-231-17/+13
| | | | | | | | | | | | | | | deprecated code In order to fix multithread usage of latest_versionstring moves package_custom_regex_comp from class to method level because need to be defined by package. Remove code for build url's with /download suffix because it's deprecated since you can specify the download directory using package_regex.inc file. (Bitbake rev: 231cae9f9b552ec6737795c098d1de426b5adcbc) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: add means of disabling SRC_URI checksumsPaul Eggleton2014-12-091-1/+2
| | | | | | | | | | | If we're fetching outside of the context of a recipe, it's handy to be able to disable checksum functionality so you don't get a meaningless warning about the signatures being missing. (Bitbake rev: 49dbcfbc56a206964acc5de761bba31be0283ba1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring clean improvments minorAníbal Limón2014-11-281-3/+2
| | | | | | | | | | | | Update documentation strings in _check_latest_dir and _check_latest_version methods with the correct return types. _check_latest_version method remove unused testversion variable. (Bitbake rev: e30c11af7bc8a1f3d8c9198ee3c0065bd6b447cc) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring remove newuri set because is ↵Aníbal Limón2014-11-281-2/+0
| | | | | | | | | previous set (Bitbake rev: d2890c8868281cb7d89a8dc66e5db589cddb3363) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring add support for search in RAW html ↵Aníbal Limón2014-11-281-1/+6
| | | | | | | | | | | | lines Some upstream sites put the name of the package in the body of href tags, i.e. <a href="#43">somepackage-v1.4.10.tar.gz </a>. (Bitbake rev: 4fa8542a8880d5749fbb3382706e011b012024d0) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring remove unnecessary usage for name ↵Aníbal Limón2014-11-281-2/+2
| | | | | | | | | in version comparision (Bitbake rev: 91b6b38ccee5e9d5bb27e4cd1578356c3b3dc607) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring improvments in searchingAníbal Limón2014-11-281-14/+23
| | | | | | | | | | | | | | Validate if package contain version string if not return the current version cases for spectrum-fw and corpus recipes. _check_latest_version return the latest version available don't take into account the current version previous this only return the upstream version if it greater than the current version. (Bitbake rev: 91a7ac8c7f87f98e366585cf9720ec35b0790bae) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring add package_custom_regex_compAníbal Limón2014-11-281-4/+11
| | | | | | | | | | | package_custom_regex_comp is built with the current package name and then used to search upstream version this reduces custom regex'es in sites that have different packages in the same directory. (Bitbake rev: a69d5d48c4bf9a3df3121cc4e69ba5d7e947ad8d) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: Improve REGEX_URI handlingAníbal Limón2014-11-281-26/+29
| | | | | | | | | | Latest version string only try to find latest directory when REGEX_URI isn't specified to avoid unnecessary processing and makes code easier (Bitbake rev: afc33ec7cdb7d8ee3602a23fa973551ca5510ac4) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: _init_regexes rename variables to be more consistent ↵Aníbal Limón2014-11-281-12/+18
| | | | | | | | | and move dirver_regex into it (Bitbake rev: 583e5d9c1c3cb8a25d34648078200faadc597e9c) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: latest_versionstring create _init_regex method for have ↵Aníbal Limón2014-11-281-5/+10
| | | | | | | | | one place when regex'es are defined (Bitbake rev: 6989193a875afd0b1f0f88c95e28cb81bfdb4eaf) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/wget: Add latest_versionstring methodAníbal Limón2014-11-121-0/+239
| | | | | | | | | | | | | | | | | | | | | | | Being able to query whether updated versions of a url are available is useful, not least for the package reporting system. Since such code is closely linked to the url type and the url itself, the fetcher makes a locical place to contain this code. For wget based urls this means taking upstream directory listings and searching those for later versions, returning those that are found. The patch also adds unittests for this function so that if improvements are made, the original test urls can be used to evaulate the those changes. This is based on code from Irina Patru <irina.patru@intel.com>. (Bitbake rev: a8272e22b7819e0e8afd8e291d276f5f28fc0007) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch/git: Add latest_versionstring methodAníbal Limón2014-11-121-0/+38
| | | | | | | | | | | | | | | | | | | | | Being able to generate a version string representing the most recent git commit given git is useful, not least for the package reporting system. This adds in a latest_versionstring method to the git fetcher which allows users to query the latest version using ls-remote and filtering the responses. The patch also adds unittests for this function so that if improvements are made, the original test urls can be used to evaulate the those changes. This is based on code from Irina Patru <irina.patru@intel.com>. (Bitbake rev: f71c8c0354e87fed80bc845db6728e6e18ce9c4d) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/git: Allow other namespaces than refs/heads to be searched.Fredrik Svensson2014-11-061-1/+4
| | | | | | | | | | | | This makes it possble to fetch Gerrit review references which are normally stored under refs/changes. Please disregard previous patch with the same topic. (Bitbake rev: 268e9c0c6830e8e621c418f20c2ca12dc840e48b) Signed-off-by: Fredrik Svensson <fredrik.svensson@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: add .lz compression supportKoen Kooi2014-10-281-1/+5
| | | | | | | | | | See http://www.nongnu.org/lzip/lzip.html for details on the compression format. (Bitbake rev: 9027b1273b5405c7269b013604ab417771b5eafe) Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetcher: fix getVar call due to incorrect argument datatypeAlejandro Hernandez2014-10-111-1/+1
| | | | | | | (Bitbake rev: 2ac33aac3446cb12227f1b8daa5f27f417c9bb9e) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetcher: fix BB_STRICT_CHECKSUM datatype checkAlejandro Hernandez2014-10-061-2/+2
| | | | | | | | | | | Forcing strict to be a string, to avoid problems when performing comparisons [YOCTO #6762] (Bitbake rev: b8ed2098bdea2afd93ab4e3e1b834f3a31cb60de) Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch: Extend testing of subdir unpack parameter and fixRichard Purdie2014-09-291-0/+2
| | | | | | | | | This fixes urls of the form file://some/path/file;subdir=b. It also adds in a couple of tests so we now tests these corner cases. (Bitbake rev: 46306912a96444790efa9418d934dfdd36773ba1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch: SRC_URI parameter "subdir" does not work for local filesRoxana2014-09-291-1/+4
| | | | | | | | | | | Check if the 'subdir' parameter exists and assign it to 'destdir' so that files are copied in ${WORKDIR}/destdir. This fixes urls that are of the form file://a;subdir=b. (Bitbake rev: 836a986b365eb9798563ec08d90b346596de7791) Signed-off-by: Roxana Ciobanu <roxana.ciobanu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/perforce: Use replace (1 line) instead of find (3 lines)Chad Nelson2014-09-231-7/+3
| | | | | | (Bitbake rev: 5bf5a937b26896bedbfea78dd1d62bce5a26ac2a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/perforce: Fix localfile name if labels are usedChad Nelson2014-09-231-10/+7
| | | | | | | | | | | | | | I could apply the label "release_1.0" to a super project that contains many sub projects. If my recipes have SRC_URI's that use that label but grab different sub-folders, than there's a bug where the cached localfile (tar.gz) will not be unique and reused at the wrong times. SRC_URI = "p4://perforce::1234@//depot/SuperProject/MiniProjectAAA/...;label=release_1.0 \ p4://perforce::1234@//depot/SuperProject/MiniProjectBBB/...;label=release_1.0" (Bitbake rev: 3b5b1703b77490116dda895b29737cea51a3d6a0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>