فهرست منبع

base.bbclass, bitbake.conf: add support for BP/BPN variables (backported from trunk)

commit 94c895aad5ad286f172b04bc33ba670220d5eba8
Author: Richard Purdie <rpurdie@linux.intel.com>
Date:   Fri Jan 2 10:15:45 2009 +0000

bitbake.conf: Create BPN variable containing the pruned version of
PN with various suffixes removed and use this for S and FILESPATH.
This uses naming from OE but with improved code
Marcin Juszkiewicz 16 سال پیش
والد
کامیت
f29120d571
2فایلهای تغییر یافته به همراه17 افزوده شده و 2 حذف شده
  1. 9 1
      meta/classes/base.bbclass
  2. 8 1
      meta/conf/bitbake.conf

+ 9 - 1
meta/classes/base.bbclass

@@ -167,6 +167,14 @@ def base_both_contain(variable1, variable2, checkvalue, d):
 
 DEPENDS_prepend="${@base_dep_prepend(d)} "
 
+def base_prune_suffix(var, suffixes, d):
+    # See if var ends with any of the suffixes listed and 
+    # remove it if found
+    for suffix in suffixes:
+        if var.endswith(suffix):
+            return var.replace(suffix, "")
+    return var
+
 def base_set_filespath(path, d):
 	import os, bb
 	filespath = []
@@ -177,7 +185,7 @@ def base_set_filespath(path, d):
 			filespath.append(os.path.join(p, o))
 	return ":".join(filespath)
 
-FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
+FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
 
 def oe_filter(f, str, d):
 	from re import match

+ 8 - 1
meta/conf/bitbake.conf

@@ -144,6 +144,13 @@ EXTENDPEVER = "${@['','${PE\x7d:'][bb.data.getVar('PE',d,1) > 0]}"
 DEBPV = "${EXTENDPEVER}${PV}-${PR}"
 P = "${PN}-${PV}"
 
+# Base package name
+# Automatically derives "foo" from "foo-native", "foo-cross" or "foo-initial"
+# otherwise it is the same as PN and P
+SPECIAL_PKGSUFFIX = "-native -cross-sdk -cross -sdk -initial -intermediate"
+BPN = "${@base_prune_suffix(bb.data.getVar('PN', d, True), bb.data.getVar('SPECIAL_PKGSUFFIX', d, True).split(), d)}"
+BP = "${BPN}-${PV}"
+
 # Package info.
 
 SECTION = "base"
@@ -232,7 +239,7 @@ STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PF}"
 WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
 T = "${WORKDIR}/temp"
 D = "${WORKDIR}/image"
-S = "${WORKDIR}/${P}"
+S = "${WORKDIR}/${BP}"
 B = "${S}"
 
 STAGING_DIR = "${TMPDIR}/staging"