From 94c895aad5ad286f172b04bc33ba670220d5eba8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 2 Jan 2009 10:15:45 +0000 Subject: 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 --- meta/classes/base.bbclass | 10 +++++++++- meta/conf/bitbake.conf | 17 +++++++++++++---- 2 files changed, 22 insertions(+), 5 deletions(-) (limited to 'meta') diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 76b21382f..404c319d0 100644 --- a/meta/classes/base.bbclass +++ b/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 diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index fddfd1ffe..4387ef061 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -144,13 +144,20 @@ 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" PRIORITY = "optional" DESCRIPTION = "Version ${PV}-${PR} of package ${PN}" LICENSE = "unknown" -MAINTAINER = "OpenedHand " +MAINTAINER = "Poky Team " HOMEPAGE = "unknown" # Package dependencies and provides. @@ -210,8 +217,10 @@ FILES_${PN}-locale = "${datadir}/locale" # File manifest 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}" -FILESDIR = "${@bb.which(bb.data.getVar('FILESPATH', d, 1), '.')}" +# FILESPATH is set in base.bbclass +#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. @@ -230,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" -- cgit v1.2.3