From 6633c4c95a713bc365f5d87acc4a94621ed50034 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Tue, 23 Jun 2009 11:55:29 -0300 Subject: base.bbclass: add support for machine configuration fallback To avoid duplicating a lot of configurations for similar machines we needed to introduce a new concept of machine fallback. It basically means that when a list is set in MACHINE_FALLBACK variable, following is done: - those machines are added to the override list, after the machine itself; - if any of these machines matches, the package is dealt as machine specific one. Signed-off-by: Otavio Salvador --- classes/base.bbclass | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'classes') diff --git a/classes/base.bbclass b/classes/base.bbclass index bc50c67d4b..7f2e81f139 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -1179,10 +1179,11 @@ def base_after_parse(d): override = bb.data.getVar('SRC_URI_OVERRIDES_PACKAGE_ARCH', d, 1) if override != '0': paths = [] - for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: - path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, "${MACHINE}"), d) - if os.path.isdir(path): - paths.append(path) + for a in [ "${MACHINE}" ] + bb.data.getVar('MACHINE_FALLBACK', d).split(): + for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: + path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, a), d) + if os.path.isdir(path): + paths.append(path) if len(paths) != 0: for s in srcuri.split(): if not s.startswith("file://"): -- cgit v1.2.3 From 0b207488de111a97eabcaeefa9a904431407ecff Mon Sep 17 00:00:00 2001 From: Graeme Gregory Date: Fri, 10 Jul 2009 22:11:52 +0100 Subject: Revert "base.bbclass: add support for machine configuration fallback" This reverts commit 6633c4c95a713bc365f5d87acc4a94621ed50034. --- classes/base.bbclass | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'classes') diff --git a/classes/base.bbclass b/classes/base.bbclass index 7f2e81f139..bc50c67d4b 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -1179,11 +1179,10 @@ def base_after_parse(d): override = bb.data.getVar('SRC_URI_OVERRIDES_PACKAGE_ARCH', d, 1) if override != '0': paths = [] - for a in [ "${MACHINE}" ] + bb.data.getVar('MACHINE_FALLBACK', d).split(): - for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: - path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, a), d) - if os.path.isdir(path): - paths.append(path) + for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: + path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, "${MACHINE}"), d) + if os.path.isdir(path): + paths.append(path) if len(paths) != 0: for s in srcuri.split(): if not s.startswith("file://"): -- cgit v1.2.3 From f0d8b8301f8a3c9f8ef73b3d5a876d341b8b3370 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Sat, 11 Jul 2009 01:31:06 -0400 Subject: package classes: count dotfiles as non-empty Allow a package to be built that contains only dotfiles or dot directories under '/'. Signed-off-by: Michael Smith --- classes/package.bbclass | 2 +- classes/package_deb.bbclass | 2 +- classes/package_ipk.bbclass | 2 +- classes/package_tar.bbclass | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'classes') diff --git a/classes/package.bbclass b/classes/package.bbclass index 3360dcb2de..f6bd7c5b4a 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -539,7 +539,7 @@ python emit_pkgdata() { allow_empty = bb.data.getVar('ALLOW_EMPTY', d, 1) root = "%s/install/%s" % (workdir, pkg) os.chdir(root) - g = glob('*') + g = glob('*') + glob('.[!.]*') if g or allow_empty == "1": packagedfile = pkgdatadir + '/runtime/%s.packaged' % pkg file(packagedfile, 'w').close() diff --git a/classes/package_deb.bbclass b/classes/package_deb.bbclass index 5127d32f33..e5339a9064 100644 --- a/classes/package_deb.bbclass +++ b/classes/package_deb.bbclass @@ -130,7 +130,7 @@ python do_package_deb () { os.chdir(root) from glob import glob - g = glob('*') + g = glob('*') + glob('.[!.]*') try: del g[g.index('DEBIAN')] del g[g.index('./DEBIAN')] diff --git a/classes/package_ipk.bbclass b/classes/package_ipk.bbclass index 1f1b5c9a79..e3a7522619 100644 --- a/classes/package_ipk.bbclass +++ b/classes/package_ipk.bbclass @@ -186,7 +186,7 @@ python do_package_ipk () { bb.mkdirhier(pkgoutdir) os.chdir(root) from glob import glob - g = glob('*') + g = glob('*') + glob('.[!.]*') try: del g[g.index('CONTROL')] del g[g.index('./CONTROL')] diff --git a/classes/package_tar.bbclass b/classes/package_tar.bbclass index 76f48ca429..cb70a5fae8 100644 --- a/classes/package_tar.bbclass +++ b/classes/package_tar.bbclass @@ -84,7 +84,7 @@ python do_package_tar () { tarfn = bb.data.getVar('PKGFN', localdata, 1) os.chdir(root) from glob import glob - if not glob('*'): + if not glob('*') + glob('.[!.]*'): bb.note("Not creating empty archive for %s-%s" % (pkg, bb.data.expand('${PV}-${PR}${DISTRO_PR}', d, True))) continue ret = os.system("tar -czf %s %s" % (tarfn, '.')) -- cgit v1.2.3