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

This commit is contained in:
Richard Purdie
2009-01-02 10:15:45 +00:00
parent fe0e39d0ee
commit 94c895aad5
2 changed files with 22 additions and 5 deletions

View File

@@ -167,6 +167,14 @@ def base_both_contain(variable1, variable2, checkvalue, d):
DEPENDS_prepend="${@base_dep_prepend(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): def base_set_filespath(path, d):
import os, bb import os, bb
filespath = [] filespath = []
@@ -177,7 +185,7 @@ def base_set_filespath(path, d):
filespath.append(os.path.join(p, o)) filespath.append(os.path.join(p, o))
return ":".join(filespath) 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): def oe_filter(f, str, d):
from re import match from re import match

View File

@@ -144,13 +144,20 @@ EXTENDPEVER = "${@['','${PE\x7d:'][bb.data.getVar('PE',d,1) > 0]}"
DEBPV = "${EXTENDPEVER}${PV}-${PR}" DEBPV = "${EXTENDPEVER}${PV}-${PR}"
P = "${PN}-${PV}" 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. # Package info.
SECTION = "base" SECTION = "base"
PRIORITY = "optional" PRIORITY = "optional"
DESCRIPTION = "Version ${PV}-${PR} of package ${PN}" DESCRIPTION = "Version ${PV}-${PR} of package ${PN}"
LICENSE = "unknown" LICENSE = "unknown"
MAINTAINER = "OpenedHand <poky@openedhand.com>" MAINTAINER = "Poky Team <poky@openedhand.com>"
HOMEPAGE = "unknown" HOMEPAGE = "unknown"
# Package dependencies and provides. # Package dependencies and provides.
@@ -210,8 +217,10 @@ FILES_${PN}-locale = "${datadir}/locale"
# File manifest # File manifest
FILE_DIRNAME = "${@os.path.dirname(bb.data.getVar('FILE', d))}" FILE_DIRNAME = "${@os.path.dirname(bb.data.getVar('FILE', d))}"
FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}" # FILESPATH is set in base.bbclass
FILESDIR = "${@bb.which(bb.data.getVar('FILESPATH', d, 1), '.')}" #FILESPATH = "${FILE_DIRNAME}/${PF}:${FILE_DIRNAME}/${P}:${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/${BP}:${FILE_DIRNAME}/${BPN}:${FILE_DIRNAME}/files:${FILE_DIRNAME}"
# Giving FILESDIR this default value is pointless as FILESPATH is always searched first - RP
#FILESDIR = "${@bb.which(bb.data.getVar('FILESPATH', d, 1), '.')}"
################################################################## ##################################################################
# General work and output directories for the build system. # General work and output directories for the build system.
@@ -230,7 +239,7 @@ STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PF}"
WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}" WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
T = "${WORKDIR}/temp" T = "${WORKDIR}/temp"
D = "${WORKDIR}/image" D = "${WORKDIR}/image"
S = "${WORKDIR}/${P}" S = "${WORKDIR}/${BP}"
B = "${S}" B = "${S}"
STAGING_DIR = "${TMPDIR}/staging" STAGING_DIR = "${TMPDIR}/staging"