summaryrefslogtreecommitdiff
path: root/meta/classes
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/allarch.bbclass8
-rw-r--r--meta/classes/archiver.bbclass2
-rw-r--r--meta/classes/autotools.bbclass139
-rw-r--r--meta/classes/base.bbclass30
-rw-r--r--meta/classes/binconfig.bbclass4
-rw-r--r--meta/classes/blacklist.bbclass25
-rw-r--r--meta/classes/buildhistory.bbclass61
-rw-r--r--meta/classes/buildstats.bbclass5
-rw-r--r--meta/classes/ccache.bbclass11
-rw-r--r--meta/classes/cmake.bbclass12
-rw-r--r--meta/classes/copyleft_filter.bbclass2
-rw-r--r--meta/classes/core-image.bbclass4
-rw-r--r--meta/classes/cross-canadian.bbclass10
-rw-r--r--meta/classes/cross.bbclass13
-rw-r--r--meta/classes/crosssdk.bbclass10
-rw-r--r--meta/classes/cve-check.bbclass2
-rw-r--r--meta/classes/devupstream.bbclass48
-rw-r--r--meta/classes/distrodata.bbclass18
-rw-r--r--meta/classes/distutils-tools.bbclass2
-rw-r--r--meta/classes/distutils.bbclass10
-rw-r--r--meta/classes/distutils3.bbclass6
-rw-r--r--meta/classes/externalsrc.bbclass19
-rw-r--r--meta/classes/fontcache.bbclass2
-rw-r--r--meta/classes/gconf.bbclass3
-rw-r--r--meta/classes/gio-module-cache.bbclass2
-rw-r--r--meta/classes/go.bbclass77
-rw-r--r--meta/classes/goarch.bbclass50
-rw-r--r--meta/classes/gobject-introspection.bbclass2
-rw-r--r--meta/classes/grub-efi.bbclass11
-rw-r--r--meta/classes/gsettings.bbclass3
-rw-r--r--meta/classes/gtk-doc.bbclass2
-rw-r--r--meta/classes/gtk-immodules-cache.bbclass2
-rw-r--r--meta/classes/gzipnative.bbclass5
-rw-r--r--meta/classes/image-buildinfo.bbclass5
-rw-r--r--meta/classes/image-container.bbclass21
-rw-r--r--meta/classes/image.bbclass52
-rw-r--r--meta/classes/image_types.bbclass108
-rw-r--r--meta/classes/image_types_wic.bbclass117
-rw-r--r--meta/classes/insane.bbclass56
-rw-r--r--meta/classes/kernel-arch.bbclass3
-rw-r--r--meta/classes/kernel-fitimage.bbclass80
-rw-r--r--meta/classes/kernel-module-split.bbclass8
-rw-r--r--meta/classes/kernel-uboot.bbclass2
-rw-r--r--meta/classes/kernel-uimage.bbclass4
-rw-r--r--meta/classes/kernel-yocto.bbclass22
-rw-r--r--meta/classes/kernel.bbclass54
-rw-r--r--meta/classes/kernelsrc.bbclass6
-rw-r--r--meta/classes/license.bbclass77
-rw-r--r--meta/classes/mime.bbclass3
-rw-r--r--meta/classes/module.bbclass6
-rw-r--r--meta/classes/multilib.bbclass7
-rw-r--r--meta/classes/multilib_global.bbclass3
-rw-r--r--meta/classes/multilib_header.bbclass7
-rw-r--r--meta/classes/native.bbclass26
-rw-r--r--meta/classes/nativesdk.bbclass14
-rw-r--r--meta/classes/npm.bbclass16
-rw-r--r--meta/classes/package.bbclass46
-rw-r--r--meta/classes/package_deb.bbclass84
-rw-r--r--meta/classes/package_ipk.bbclass77
-rw-r--r--meta/classes/package_rpm.bbclass129
-rw-r--r--meta/classes/package_tar.bbclass1
-rw-r--r--meta/classes/packagefeed-stability.bbclass2
-rw-r--r--meta/classes/packagegroup.bbclass16
-rw-r--r--meta/classes/patch.bbclass20
-rw-r--r--meta/classes/pixbufcache.bbclass21
-rw-r--r--meta/classes/populate_sdk_base.bbclass15
-rw-r--r--meta/classes/populate_sdk_ext.bbclass56
-rw-r--r--meta/classes/ptest.bbclass2
-rw-r--r--meta/classes/qemuboot.bbclass48
-rw-r--r--meta/classes/recipe_sanity.bbclass17
-rw-r--r--meta/classes/relative_symlinks.bbclass5
-rw-r--r--meta/classes/relocatable.bbclass13
-rw-r--r--meta/classes/rm_work.bbclass34
-rw-r--r--meta/classes/rootfs-postcommands.bbclass42
-rw-r--r--meta/classes/rootfs_deb.bbclass1
-rw-r--r--meta/classes/rootfs_ipk.bbclass1
-rw-r--r--meta/classes/rootfs_rpm.bbclass24
-rw-r--r--meta/classes/sanity.bbclass72
-rw-r--r--meta/classes/sign_rpm.bbclass7
-rw-r--r--meta/classes/siteconfig.bbclass2
-rw-r--r--meta/classes/sstate.bbclass210
-rw-r--r--meta/classes/staging.bbclass488
-rw-r--r--meta/classes/syslinux.bbclass1
-rw-r--r--meta/classes/systemd-boot.bbclass3
-rw-r--r--meta/classes/systemd.bbclass1
-rw-r--r--meta/classes/terminal.bbclass7
-rw-r--r--meta/classes/testexport.bbclass211
-rw-r--r--meta/classes/testimage.bbclass300
-rw-r--r--meta/classes/testsdk.bbclass186
-rw-r--r--meta/classes/toaster.bbclass24
-rw-r--r--meta/classes/toolchain-scripts.bbclass3
-rw-r--r--meta/classes/uboot-extlinux-config.bbclass32
-rw-r--r--meta/classes/uboot-sign.bbclass2
-rw-r--r--meta/classes/uninative.bbclass24
-rw-r--r--meta/classes/update-alternatives.bbclass6
-rw-r--r--meta/classes/update-rc.d.bbclass5
-rw-r--r--meta/classes/useradd-staticids.bbclass26
-rw-r--r--meta/classes/useradd.bbclass90
-rw-r--r--meta/classes/useradd_base.bbclass18
-rw-r--r--meta/classes/utility-tasks.bbclass2
-rw-r--r--meta/classes/utils.bbclass38
101 files changed, 2303 insertions, 1406 deletions
diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
index 026214ea9a..a7ce024649 100644
--- a/meta/classes/allarch.bbclass
+++ b/meta/classes/allarch.bbclass
@@ -2,10 +2,6 @@
# This class is used for architecture independent recipes/data files (usually scripts)
#
-# Expand STAGING_DIR_HOST since for cross-canadian/native/nativesdk, this will
-# point elsewhere after these changes.
-STAGING_DIR_HOST := "${STAGING_DIR_HOST}"
-
PACKAGE_ARCH = "all"
python () {
@@ -25,7 +21,9 @@ python () {
d.setVar("TARGET_AS_ARCH", "none")
d.setVar("TARGET_FPU", "")
d.setVar("TARGET_PREFIX", "")
- d.setVar("PACKAGE_EXTRA_ARCHS", "")
+ # Expand PACKAGE_EXTRA_ARCHS since the staging code needs this
+ # (this removes any dependencies from the hash perspective)
+ d.setVar("PACKAGE_EXTRA_ARCHS", d.getVar("PACKAGE_EXTRA_ARCHS"))
d.setVar("SDK_ARCH", "none")
d.setVar("SDK_CC_ARCH", "none")
d.setVar("TARGET_CPPFLAGS", "none")
diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index ee4790dd68..2c04557f79 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -365,7 +365,7 @@ python do_ar_recipe () {
elif include_re.match(line):
incfile = include_re.match(line).group(1)
if incfile:
- incfile = bb.data.expand(incfile, d)
+ incfile = d.expand(incfile)
incfile = bb.utils.which(bbpath, incfile)
if incfile:
shutil.copy(incfile, outdir)
diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index c43531b050..ac04a07cb5 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -27,7 +27,7 @@ inherit siteinfo
# results for autoconf tests we cannot run at build time.
export CONFIG_SITE = "${@siteinfo_get_files(d)}"
-acpaths = "default"
+acpaths ?= "default"
EXTRA_AUTORECONF = "--exclude=autopoint"
export lt_cv_sys_lib_dlsearch_path_spec = "${libdir} ${base_libdir}"
@@ -131,133 +131,18 @@ EXTRACONFFUNCS ??= ""
EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
-do_configure[prefuncs] += "autotools_preconfigure autotools_copy_aclocals ${EXTRACONFFUNCS}"
+do_configure[prefuncs] += "autotools_preconfigure autotools_aclocals ${EXTRACONFFUNCS}"
do_configure[postfuncs] += "autotools_postconfigure"
-ACLOCALDIR = "${WORKDIR}/aclocal-copy"
-
-python autotools_copy_aclocals () {
- import copy
-
- s = d.getVar("AUTOTOOLS_SCRIPT_PATH")
- if not os.path.exists(s + "/configure.in") and not os.path.exists(s + "/configure.ac"):
- if not d.getVar("AUTOTOOLS_COPYACLOCAL", False):
- return
-
- taskdepdata = d.getVar("BB_TASKDEPDATA", False)
- #bb.warn(str(taskdepdata))
- pn = d.getVar("PN")
- aclocaldir = d.getVar("ACLOCALDIR")
- oe.path.remove(aclocaldir)
- bb.utils.mkdirhier(aclocaldir)
- start = None
- configuredeps = []
- # Detect bitbake -b usage
- # Everything but quilt-native would have dependencies
- nodeps = (pn != "quilt-native")
-
- for dep in taskdepdata:
- data = taskdepdata[dep]
- if data[1] == "do_configure" and data[0] == pn:
- start = dep
- if not nodeps and start:
- break
- if nodeps and data[0] != pn:
- nodeps = False
- if start is None:
- bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?")
-
- # We need to figure out which m4 files we need to expose to this do_configure task.
- # This needs to match what would get restored from sstate, which is controlled
- # ultimately by calls from bitbake to setscene_depvalid().
- # That function expects a setscene dependency tree. We build a dependency tree
- # condensed to do_populate_sysroot -> do_populate_sysroot dependencies, similar to
- # that used by setscene tasks. We can then call into setscene_depvalid() and decide
- # which dependencies we can "see" and should expose the m4 files for.
- setscenedeps = copy.deepcopy(taskdepdata)
-
- start = set([start])
-
- # Create collapsed do_populate_sysroot -> do_populate_sysroot tree
- for dep in taskdepdata:
- data = setscenedeps[dep]
- if data[1] != "do_populate_sysroot":
- for dep2 in setscenedeps:
- data2 = setscenedeps[dep2]
- if dep in data2[3]:
- data2[3].update(setscenedeps[dep][3])
- data2[3].remove(dep)
- if dep in start:
- start.update(setscenedeps[dep][3])
- start.remove(dep)
- del setscenedeps[dep]
-
- # Remove circular references
- for dep in setscenedeps:
- if dep in setscenedeps[dep][3]:
- setscenedeps[dep][3].remove(dep)
-
- # Direct dependencies should be present and can be depended upon
- for dep in start:
- configuredeps.append(setscenedeps[dep][0])
-
- # Call into setscene_depvalid for each sub-dependency and only copy m4 files
- # for ones that would be restored from sstate.
- done = list(start)
- next = list(start)
- while next:
- new = []
- for dep in next:
- data = setscenedeps[dep]
- for datadep in data[3]:
- if datadep in done:
- continue
- taskdeps = {}
- taskdeps[dep] = setscenedeps[dep][:2]
- taskdeps[datadep] = setscenedeps[datadep][:2]
- retval = setscene_depvalid(datadep, taskdeps, [], d)
- if retval:
- bb.note("Skipping setscene dependency %s for m4 macro copying" % datadep)
- continue
- done.append(datadep)
- new.append(datadep)
- configuredeps.append(setscenedeps[datadep][0])
- next = new
-
- cp = []
- if nodeps:
- bb.warn("autotools: Unable to find task dependencies, -b being used? Pulling in all m4 files")
- for l in [d.expand("${STAGING_DATADIR_NATIVE}/aclocal/"), d.expand("${STAGING_DATADIR}/aclocal/")]:
- cp.extend(os.path.join(l, f) for f in os.listdir(l))
-
- for c in configuredeps:
- if c.endswith("-native"):
- manifest = d.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}-%s.populate_sysroot" % c)
- elif c.startswith("nativesdk-"):
- manifest = d.expand("${SSTATE_MANIFESTS}/manifest-${SDK_ARCH}_${SDK_OS}-%s.populate_sysroot" % c)
- elif "-cross-" in c or "-crosssdk" in c:
- continue
- else:
- manifest = d.expand("${SSTATE_MANIFESTS}/manifest-${MACHINE}-%s.populate_sysroot" % c)
- try:
- f = open(manifest, "r")
- for l in f:
- if "/aclocal/" in l and l.strip().endswith(".m4"):
- cp.append(l.strip())
- elif "config_site.d/" in l:
- cp.append(l.strip())
- except:
- bb.warn("%s not found" % manifest)
-
- for c in cp:
- t = os.path.join(aclocaldir, os.path.basename(c))
- if not os.path.exists(t):
- os.symlink(c, t)
+ACLOCALDIR = "${STAGING_DATADIR}/aclocal"
+ACLOCALEXTRAPATH = ""
+ACLOCALEXTRAPATH_class-target = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
+ACLOCALEXTRAPATH_class-nativesdk = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
+python autotools_aclocals () {
# Refresh variable with cache files
d.setVar("CONFIG_SITE", siteinfo_get_files(d, aclocalcache=True))
}
-autotools_copy_aclocals[vardepsexclude] += "MACHINE SDK_ARCH BUILD_ARCH SDK_OS BB_TASKDEPDATA"
CONFIGURE_FILES = "${S}/configure.in ${S}/configure.ac ${S}/config.h.in ${S}/acinclude.m4 Makefile.am"
@@ -279,6 +164,7 @@ autotools_do_configure() {
if [ -e ${AUTOTOOLS_SCRIPT_PATH}/configure.in -o -e ${AUTOTOOLS_SCRIPT_PATH}/configure.ac ]; then
olddir=`pwd`
cd ${AUTOTOOLS_SCRIPT_PATH}
+ mkdir -p ${ACLOCALDIR}
ACLOCAL="aclocal --system-acdir=${ACLOCALDIR}/"
if [ x"${acpaths}" = xdefault ]; then
acpaths=
@@ -289,6 +175,7 @@ autotools_do_configure() {
else
acpaths="${acpaths}"
fi
+ acpaths="$acpaths ${ACLOCALEXTRAPATH}"
AUTOV=`automake --version | sed -e '1{s/.* //;s/\.[0-9]\+$//};q'`
automake --version
echo "AUTOV is $AUTOV"
@@ -306,14 +193,14 @@ autotools_do_configure() {
else
CONFIGURE_AC=configure.ac
fi
- if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
- if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
+ if grep -q "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC; then
+ if grep -q "sed.*POTFILES" $CONFIGURE_AC; then
: do nothing -- we still have an old unmodified configure.ac
else
bbnote Executing glib-gettextize --force --copy
echo "no" | glib-gettextize --force --copy
fi
- elif grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+ elif grep -q "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC; then
# We'd call gettextize here if it wasn't so broken...
cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${AUTOTOOLS_AUXDIR}/
if [ -d ${S}/po/ ]; then
@@ -325,7 +212,7 @@ autotools_do_configure() {
PRUNE_M4="$PRUNE_M4 gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 nls.m4 po.m4 progtest.m4"
fi
mkdir -p m4
- if grep "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
+ if grep -q "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC; then
if ! echo "${DEPENDS}" | grep -q intltool-native; then
bbwarn "Missing DEPENDS on intltool-native"
fi
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 2765ebf61b..d95afb7b9b 100644
--- a/