From 90349962321d16a0671104e7452f5ab094e6e130 Mon Sep 17 00:00:00 2001 From: Marcin Juszkiewicz Date: Tue, 21 Nov 2006 19:13:56 +0000 Subject: base.bbclass: added support for creating source mirror - if SOURCE_MIRROR_FETCH variable is set then we ignore COMPATIBLE_MACHINE/COMPATIBLE_HOST settings to be able to fetch all recipes. - Fetching sources can be done by setting any MACHINE/DISTRO combination and SOURCE_MIRROR_FETCH = "1" in configuration. Then one invocation of BitBake should do all fetching: bitbake --cmd fetchall --continue world - scripts to manage source mirror will get added into contrib/ --- classes/base.bbclass | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/classes/base.bbclass b/classes/base.bbclass index abac19919b..f5aede6b8b 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -677,19 +677,21 @@ python read_subpackage_metadata () { def base_after_parse_two(d): import bb import exceptions - need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1) - if need_host: - import re - this_host = bb.data.getVar('HOST_SYS', d, 1) - if not re.match(need_host, this_host): - raise bb.parse.SkipPackage("incompatible with host %s" % this_host) - - need_machine = bb.data.getVar('COMPATIBLE_MACHINE', d, 1) - if need_machine: - import re - this_machine = bb.data.getVar('MACHINE', d, 1) - if this_machine and not re.match(need_machine, this_machine): - raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) + source_mirror_fetch = bb.data.getVar('SOURCE_MIRROR_FETCH', d, 0) + if not source_mirror_fetch: + need_host = bb.data.getVar('COMPATIBLE_HOST', d, 1) + if need_host: + import re + this_host = bb.data.getVar('HOST_SYS', d, 1) + if not re.match(need_host, this_host): + raise bb.parse.SkipPackage("incompatible with host %s" % this_host) + + need_machine = bb.data.getVar('COMPATIBLE_MACHINE', d, 1) + if need_machine: + import re + this_machine = bb.data.getVar('MACHINE', d, 1) + if this_machine and not re.match(need_machine, this_machine): + raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) pn = bb.data.getVar('PN', d, 1) -- cgit v1.2.3