summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/base.bbclass24
-rw-r--r--conf/bitbake.conf3
2 files changed, 9 insertions, 18 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass
index dd48d9229e..aa1037e472 100644
--- a/classes/base.bbclass
+++ b/classes/base.bbclass
@@ -202,23 +202,13 @@ DEPENDS_prepend="${@base_dep_prepend(d)} "
DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
-# Returns PN with various suffixes removed
-# or PN if no matching suffix was found.
-def base_package_name(d):
- pn = bb.data.getVar('PN', d, 1)
- if pn.endswith("-native"):
- pn = pn[0:-7]
- elif pn.endswith("-cross"):
- pn = pn[0:-6]
- elif pn.endswith("-initial"):
- pn = pn[0:-8]
- elif pn.endswith("-intermediate"):
- pn = pn[0:-13]
- elif pn.endswith("-sdk"):
- pn = pn[0:-4]
-
-
- return pn
+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):
bb.note("base_set_filespath usage is deprecated, %s should be fixed" % d.getVar("P", 1))
diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index ddd4196eb3..e74b63e23e 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -190,7 +190,8 @@ MACHINE_KERNEL_PR = ""
# Base package name
# Automatically derives "foo" from "foo-native", "foo-cross" or "foo-initial"
# otherwise it is the same as PN and P
-BPN = "${@base_package_name(d)}"
+SPECIAL_PKGSUFFIX = "-native -cross -initial -intermediate -nativesdk -crosssdk -cross-canadian -sdk"
+BPN = "${@base_prune_suffix(bb.data.getVar('PN', d, True), bb.data.getVar('SPECIAL_PKGSUFFIX', d, True).split(), d)}"
BP = "${BPN}-${PV}"
# Package info.