diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2017-08-15 16:28:26 +1200 |
---|---|---|
committer | Paul Eggleton <paul.eggleton@linux.intel.com> | 2017-08-21 17:28:31 +1200 |
commit | 1c1348170c55cd98df026428e4567337386682c1 (patch) | |
tree | 1301df59ab746f88449ed66bdd2c0808ccbe699b /scripts | |
parent | d0f0ccec67f2a5efa928ff6e83551f4dec22a1ff (diff) | |
download | openembedded-core-contrib-1c1348170c55cd98df026428e4567337386682c1.tar.gz |
recipetool: allow plugins to set PN / PV more easily
Previously if we were able to auto-determine the name from the URL, that
took precedence over any name that might be set in extravalues by a
plugin. Some plugins might be able to get a better idea of the name and
thus we should move defaulting of the name further down after the
plugins have had a chance to set it.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/lib/recipetool/create.py | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py index 3abdad0fbc..40bd3c820b 100644 --- a/scripts/lib/recipetool/create.py +++ b/scripts/lib/recipetool/create.py @@ -656,13 +656,6 @@ def create_recipe(args): else: realpv = None - if srcuri and not realpv or not pn: - name_pn, name_pv = determine_from_url(srcuri) - if name_pn and not pn: - pn = name_pn - if name_pv and not realpv: - realpv = name_pv - if not srcuri: lines_before.append('# No information for SRC_URI yet (only an external source tree was specified)') lines_before.append('SRC_URI = "%s"' % srcuri) @@ -671,6 +664,7 @@ def create_recipe(args): if srcuri and supports_srcrev(srcuri): lines_before.append('') lines_before.append('# Modify these as desired') + # Note: we have code to replace realpv further down if it gets set to some other value lines_before.append('PV = "%s+git${SRCPV}"' % (realpv or '1.0')) pv_srcpv = True if not args.autorev and srcrev == '${AUTOREV}': @@ -750,6 +744,13 @@ def create_recipe(args): if '_' in pn: pn = pn.replace('_', '-') + if srcuri and not realpv or not pn: + name_pn, name_pv = determine_from_url(srcuri) + if name_pn and not pn: + pn = name_pn + if name_pv and not realpv: + realpv = name_pv + if not outfile: if not pn: log_error_cond('Unable to determine short program name from source tree - please specify name with -N/--name or output file name with -o/--outfile', args.devtool) @@ -803,6 +804,7 @@ def create_recipe(args): line = line.replace(realpv, '${PV}') elif line.startswith('PV = '): if realpv: + # Replace the first part of the PV value line = re.sub('"[^+]*\+', '"%s+' % realpv, line) lines_before.append(line) |