[OE-core] [PATCH 1/1] add checking to standardize how .bbappend files do FILESEXTRAPATHS
Hongxu Jia
hongxu.jia at windriver.com
Mon Jul 21 06:03:13 UTC 2014
I think it is more reasonable to move the checking to insance.bbclass
rather than create a new bbclass.
Please drop this, V2 incoming.
//Hongxu
On 07/21/2014 01:34 PM, Hongxu Jia wrote:
> When adding patches or config files from bbappend files, it requires
> the use of FILESEXTRAPATHS, which has been an issue and failure point
> for people starting to work with bitbake and oe-core.
>
> We add checking to standardize how to use FILESEXTRAPATHS. Only the
> format of:
> FILESEXTRAPATHS_append := ${THISDIR}/Your_Files_Path or
> FILESEXTRAPATHS_prepend := ${THISDIR}/Your_Files_Path
> is acceptable.
>
> [YOCTO #5412]
>
> Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
> ---
> meta/classes/base.bbclass | 1 +
> meta/classes/filesextrapaths_check.bbclass | 10 ++++++++++
> meta/classes/utils.bbclass | 2 ++
> meta/conf/bitbake.conf | 2 ++
> 4 files changed, 15 insertions(+)
> create mode 100644 meta/classes/filesextrapaths_check.bbclass
>
> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> index 8114cf6..be8400a 100644
> --- a/meta/classes/base.bbclass
> +++ b/meta/classes/base.bbclass
> @@ -9,6 +9,7 @@ inherit utils
> inherit utility-tasks
> inherit metadata_scm
> inherit logging
> +inherit filesextrapaths_check
>
> OE_IMPORTS += "os sys time oe.path oe.utils oe.data oe.package oe.packagegroup oe.sstatesig oe.lsb oe.cachedpath"
> OE_IMPORTS[type] = "list"
> diff --git a/meta/classes/filesextrapaths_check.bbclass b/meta/classes/filesextrapaths_check.bbclass
> new file mode 100644
> index 0000000..6863e0c
> --- /dev/null
> +++ b/meta/classes/filesextrapaths_check.bbclass
> @@ -0,0 +1,10 @@
> +python __anonymous() {
> + # Checking ${FILESEXTRAPATHS}
> + extrapaths = (d.getVar("FILESEXTRAPATHS", True) or "")
> + if '__default' not in extrapaths.split(":"):
> + msg = "Please assign FILESEXTRAPATHS with the format of:\n"
> + msg += " FILESEXTRAPATHS_append := ${THISDIR}/Your_Files_Path or\n"
> + msg += " FILESEXTRAPATHS_prepend := ${THISDIR}/Your_Files_Path\n"
> + msg += "in your bbappend file\n"
> + bb.fatal(msg)
> +}
> diff --git a/meta/classes/utils.bbclass b/meta/classes/utils.bbclass
> index 0ee13e0..0f2a484 100644
> --- a/meta/classes/utils.bbclass
> +++ b/meta/classes/utils.bbclass
> @@ -312,6 +312,8 @@ def explode_deps(s):
> def base_set_filespath(path, d):
> filespath = []
> extrapaths = (d.getVar("FILESEXTRAPATHS", True) or "")
> + # Remove default flag which was used for checking
> + extrapaths = extrapaths.replace("__default:", "")
> # Don't prepend empty strings to the path list
> if extrapaths != "":
> path = extrapaths.split(":") + path
> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> index f4870d5..6a0cf7a 100644
> --- a/meta/conf/bitbake.conf
> +++ b/meta/conf/bitbake.conf
> @@ -311,6 +311,8 @@ FILES_${PN}-locale = "${datadir}/locale"
> FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE'))}"
> # 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}"
> +# This default was only used for checking
> +FILESEXTRAPATHS ?= "__default:"
>
> ##################################################################
> # General work and output directories for the build system.
More information about the Openembedded-core
mailing list