aboutsummaryrefslogtreecommitdiffstats
path: root/meta-mel
diff options
context:
space:
mode:
Diffstat (limited to 'meta-mel')
-rw-r--r--meta-mel/classes/codename_is_corename.bbclass4
-rw-r--r--meta-mel/conf/distro/include/gdbserver-gplv3.inc4
-rw-r--r--meta-mel/conf/distro/include/sourcery-version-check.inc24
-rw-r--r--meta-mel/conf/distro/include/wic-bmap.inc4
-rw-r--r--meta-mel/conf/distro/mel-lite.conf15
-rw-r--r--meta-mel/conf/distro/mel.conf29
-rw-r--r--meta-mel/conf/include/drop-toolchain-from-sdk.inc4
-rw-r--r--meta-mel/conf/layer.conf4
-rw-r--r--meta-mel/lib/bblayers/mel_utils.py71
-rw-r--r--meta-mel/lib/oeqa/selftest/cases/recipetool_mel.py4
-rw-r--r--meta-mel/lib/recipetool/kernel.py6
-rw-r--r--meta-mel/mel-support/recipes-core/meta/archive-release.bbappend8
-rw-r--r--meta-mel/meta-python/recipes-devtools/python/python3-unidiff_%.bbappend5
-rw-r--r--meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init.bb4
-rw-r--r--meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init/init.sh4
-rw-r--r--meta-mel/openembedded-layer/recipes-support/lvm2/lvm2/lvm2-mel.service15
-rw-r--r--meta-mel/openembedded-layer/recipes-support/lvm2/lvm2_%.bbappend19
-rw-r--r--meta-mel/recipes-connectivity/connman/connman_%.bbappend9
-rw-r--r--meta-mel/recipes-core/base-files/base-files_3.0.14.bbappend4
-rw-r--r--meta-mel/recipes-core/busybox/busybox/resize.cfg2
-rw-r--r--meta-mel/recipes-core/busybox/busybox_%.bbappend5
-rw-r--r--meta-mel/recipes-core/images/console-image.bb4
-rw-r--r--meta-mel/recipes-core/images/mel-initramfs-image.bb9
-rw-r--r--meta-mel/recipes-core/initrdscripts/files/init-boot.sh4
-rw-r--r--meta-mel/recipes-core/initrdscripts/initramfs-boot_1.0.bbappend4
-rw-r--r--meta-mel/recipes-core/initrdscripts/initramfs-framework/lvm18
-rw-r--r--meta-mel/recipes-core/initrdscripts/initramfs-framework_%.bbappend8
-rw-r--r--meta-mel/recipes-core/kbd/kbd_2.5.0.bbappend4
-rw-r--r--meta-mel/recipes-core/meta/meta-environment.bbappend4
-rw-r--r--meta-mel/recipes-core/meta/sdk-env-kernelvars.bb4
-rw-r--r--meta-mel/recipes-core/os-release/os-release.bbappend4
-rw-r--r--meta-mel/recipes-core/packagegroups/packagegroup-base.bbappend6
-rw-r--r--meta-mel/recipes-core/packagegroups/packagegroup-core-boot.bbappend4
-rw-r--r--meta-mel/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend4
-rw-r--r--meta-mel/recipes-core/psplash/mel/mel.pngbin207866 -> 169324 bytes
-rw-r--r--meta-mel/recipes-core/psplash/psplash_git.bbappend4
-rw-r--r--meta-mel/recipes-core/systemd/systemd_%.bbappend4
-rw-r--r--meta-mel/recipes-core/util-linux/util-linux_%.bbappend4
-rw-r--r--meta-mel/recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend4
-rw-r--r--meta-mel/recipes-devtools/llvm/llvm_%.bbappend6
-rw-r--r--meta-mel/recipes-devtools/python/python3_%.bbappend54
-rw-r--r--meta-mel/recipes-graphics/images/weston-image.bb4
-rw-r--r--meta-mel/recipes-graphics/libsdl2/libsdl2_%.bbappend4
-rw-r--r--meta-mel/recipes-kernel/perf/perf.bbappend4
-rw-r--r--meta-mel/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend4
-rw-r--r--meta-mel/recipes-sato/images/core-image-sato.bbappend4
-rw-r--r--meta-mel/recipes-support/boost/boost_%.bbappend4
-rw-r--r--meta-mel/recipes-support/consolekit/consolekit_%.bbappend4
-rw-r--r--meta-mel/recipes-support/curl/curl_%.bbappend8
-rw-r--r--meta-mel/recipes-support/db/db_%.bbappend4
-rw-r--r--meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-2g.wks4
-rw-r--r--meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-4g.wks4
-rw-r--r--meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-8g.wks4
53 files changed, 420 insertions, 29 deletions
diff --git a/meta-mel/classes/codename_is_corename.bbclass b/meta-mel/classes/codename_is_corename.bbclass
index 3e351fda..afea0e65 100644
--- a/meta-mel/classes/codename_is_corename.bbclass
+++ b/meta-mel/classes/codename_is_corename.bbclass
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
python codename_is_corename() {
codename = d.getVar('DISTRO_CODENAME')
if codename:
diff --git a/meta-mel/conf/distro/include/gdbserver-gplv3.inc b/meta-mel/conf/distro/include/gdbserver-gplv3.inc
index 7671bb18..098f93f5 100644
--- a/meta-mel/conf/distro/include/gdbserver-gplv3.inc
+++ b/meta-mel/conf/distro/include/gdbserver-gplv3.inc
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# If ALLOW_GPLV3_GDBSERVER is set, allow {L,}GPLv3 for the gdb recipes
ALLOW_GPLV3_GDBSERVER ?= ""
INCOMPATIBLE_LICENSE_EXCEPTIONS += "\
diff --git a/meta-mel/conf/distro/include/sourcery-version-check.inc b/meta-mel/conf/distro/include/sourcery-version-check.inc
index e526bbe3..6c9d042c 100644
--- a/meta-mel/conf/distro/include/sourcery-version-check.inc
+++ b/meta-mel/conf/distro/include/sourcery-version-check.inc
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
python sourcery_version_check () {
if d.getVar('TCMODE', True) == 'default':
return
@@ -6,21 +10,19 @@ python sourcery_version_check () {
if not sourcery_version or sourcery_version == 'UNKNOWN':
return
- def version(str):
- if str is None:
+ def version(s):
+ if s is None:
return []
-
- elements = str.split('-')
- if len(elements) > 1:
- elements.pop()
- return elements
+ ver = s.split('-', 1)[0].split('.')
+ if len(ver) > 2:
+ ver = ver[:2]
+ return ver
# Check for a specified required toolchain version for releases
- toolchain_required_version = version(d.getVar('SOURCERY_VERSION_REQUIRED', True))
+ toolchain_required_version = d.getVar('SOURCERY_VERSION_REQUIRED')
if toolchain_required_version:
- sourcery_version = version(sourcery_version)
- if sourcery_version != toolchain_required_version:
- bb.fatal('Found toolchain version `%s`, expected `%s`. Please install the supported toolchain.' % ('-'.join(sourcery_version), '-'.join(toolchain_required_version)))
+ if version(sourcery_version) != version(toolchain_required_version):
+ bb.fatal('Found toolchain version `%s`, expected `%s`. Please install the supported toolchain.' % (sourcery_version, toolchain_required_version))
}
# We run this at build start to ensure that bitbake -e still works
sourcery_version_check[eventmask] = "bb.event.BuildStarted"
diff --git a/meta-mel/conf/distro/include/wic-bmap.inc b/meta-mel/conf/distro/include/wic-bmap.inc
index 87dbc3cd..d77b0b83 100644
--- a/meta-mel/conf/distro/include/wic-bmap.inc
+++ b/meta-mel/conf/distro/include/wic-bmap.inc
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# If a wic image type is enabled, also enable wic.bmap
python add_wic_bmap () {
image_fstypes = d.getVar('IMAGE_FSTYPES', True).split()
diff --git a/meta-mel/conf/distro/mel-lite.conf b/meta-mel/conf/distro/mel-lite.conf
new file mode 100644
index 00000000..3b23de22
--- /dev/null
+++ b/meta-mel/conf/distro/mel-lite.conf
@@ -0,0 +1,15 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+require conf/distro/include/mel.conf
+
+DISTRO .= "-lite"
+DISTRO_NAME += "Lite"
+DISTROOVERRIDES = "${DISTRO}:mel"
+
+SANITY_TESTED_DISTROS = "\
+ ubuntu-18.04 \n\
+"
+
+GLIBCVERSION ?= "2.28%"
diff --git a/meta-mel/conf/distro/mel.conf b/meta-mel/conf/distro/mel.conf
index f15f49a7..857f28b9 100644
--- a/meta-mel/conf/distro/mel.conf
+++ b/meta-mel/conf/distro/mel.conf
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
## Vendor Integration {{{1
VENDOR_CONF = "${@'conf/vendor/%s.conf' % d.getVar('VENDOR') if d.getVar('VENDOR') else ''}"
require ${VENDOR_CONF}
@@ -11,7 +15,7 @@ MAINTAINER = "Siemens Digital Industries Software <embedded_support@mentor.com>"
HOME_URL = "https://www.mentor.com/embedded-software/linux/mel-flex-os/"
SUPPORT_URL = "https://support.sw.siemens.com/"
BUG_REPORT_URL = "https://support.sw.siemens.com/"
-ADE_PROVIDER = "Siemens Digital Industries Software"
+ADE_PROVIDER = "${DISTRO_NAME}"
TARGET_VENDOR = "-mel"
SDK_VENDOR = "-melsdk"
@@ -37,6 +41,8 @@ SDKPATHINSTALL = "/opt/${DISTRO}/${SDK_VERSION}"
# This is a single libc DISTRO, so exclude it from tmpdir name
TCLIBCAPPEND = ""
+PSEUDO_IGNORE_PATHS:append = ",/run/"
+
MEL_DEFAULT_EXTRA_RDEPENDS = "packagegroup-core-boot"
MEL_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet"
DISTRO_EXTRA_RDEPENDS += " ${MEL_DEFAULT_EXTRA_RDEPENDS}"
@@ -196,6 +202,9 @@ PACKAGECONFIG:append:pn-pulseaudio = " autospawn-for-root"
# We don't use dracut to build initramfs
PACKAGECONFIG_REMOVE:pn-plymouth = "initrd"
+
+# Do not fetch the anti-virus db at compile-time
+INSTALL_CLAMAV_CVD ?= ""
## }}}1
## Inherits {{{1
# We want information and history about build output
@@ -277,12 +286,22 @@ DISTRO_EXTRA_RRECOMMENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd',
# Override arm tuning to reduce specificity and increase reuse.
require conf/distro/include/mel-arm-tuning.inc
+# Ensure that the output directory always exists, this fixes use of meta-sca
+# with certain meta-imx recipes.
+do_sca_tracefiles[dirs] =+ "${SCA_SOURCES_DIR}"
+
# We aren't supporting meta-intel's RMC
BBMASK += "/meta-intel/common/recipes-bsp/systemd-boot/"
# webkitgtk link fails due to memory exhaustion, so disable debug info to
# reduce the memory footprint
DEBUG_FLAGS:remove:pn-webkitgtk = "-g"
+
+# Work around git safe directory issue with METADATA_*, by forcing early expansion
+# while in a build user context.
+require classes/metadata_scm.bbclass
+METADATA_BRANCH := "${@base_detect_branch(d)}"
+METADATA_REVISION := "${@base_detect_revision(d)}"
## }}}1
## SDK & Application Development Environment {{{1
# Use DEPLOY_DIR_ naming for consistency
@@ -345,6 +364,9 @@ FORKED_REPOS ?= "meta-virtualization"
# Our public layers should use non-ssh URIs for their remotes
PUBLIC_REPOS ?= "meta-mentor meta-sourcery meta-tracing ${FORKED_REPOS}"
+
+# Define a location for placing external artifacts to be used by the build
+MEL_EXTERNAL_ARTIFACTS ?= "${TOPDIR}/mel-external-artifacts"
## }}}1
## Includes {{{1
@@ -365,8 +387,11 @@ include conf/distro/include/mel-security.conf
# SWUpdate configuration.
include conf/distro/include/mel-swupdate.conf
+# MCF configuration
+include conf/distro/include/mel-mcf.conf
+
# INITRAMFS
INITRAMFS_IMAGE ?= "mel-initramfs-image"
-INITRAMFS_IMAGE_BUNDLE ?= "1"
+INITRAMFS_IMAGE_BUNDLE ?= "${@bb.utils.contains('KERNEL_IMAGETYPES', 'fitimage', '', '1', d)}"
## }}}1
# vim: set fdm=marker fdl=0 :
diff --git a/meta-mel/conf/include/drop-toolchain-from-sdk.inc b/meta-mel/conf/include/drop-toolchain-from-sdk.inc
index 08c5eec2..2634357d 100644
--- a/meta-mel/conf/include/drop-toolchain-from-sdk.inc
+++ b/meta-mel/conf/include/drop-toolchain-from-sdk.inc
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# When we're using an external toolchain, we don't want to ship a newly built
# toolchain inside the Yocto SDK. Normally meta-environment comes from the
# same packagegroup which installs the toolchain, so add that back in
diff --git a/meta-mel/conf/layer.conf b/meta-mel/conf/layer.conf
index 07fdd280..906f471c 100644
--- a/meta-mel/conf/layer.conf
+++ b/meta-mel/conf/layer.conf
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
diff --git a/meta-mel/lib/bblayers/mel_utils.py b/meta-mel/lib/bblayers/mel_utils.py
index c3665dc3..666f6a88 100644
--- a/meta-mel/lib/bblayers/mel_utils.py
+++ b/meta-mel/lib/bblayers/mel_utils.py
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# TODO: add an argument to enable/disable dependency traversal vs just the
# specified recipes
import argparse
@@ -79,7 +83,7 @@ class MELUtilsPlugin(LayerPlugin):
logger.warning('Unhandled event %s: %s' % (event.__class__.__name__, event))
return depgraph, None
- def _localpaths_by_layer(self, data, layer_for_file, mirrortarballs=False):
+ def _localpaths_by_layer(self, data, recipe_filename, layer_for_file, mirrortarballs=False):
def ud_localpaths(u, layer_name, dldir, d):
if hasattr(u.method, 'process_submodules'):
def archive_submodule(ud, url, module, modpath, workdir, d):
@@ -126,6 +130,12 @@ class MELUtilsPlugin(LayerPlugin):
layer_name = layer_for_file(filename)
ud_localpaths(ud, layer_name, dldir, data)
+ recipe_layer_name = layer_for_file(recipe_filename)
+ for extra_item in set(src_uri) - set(items_files.keys()):
+ logger.warning('Unable to determine correct layer for `%s`: this item is missing from variable history', extra_item)
+ ud = urldata[extra_item]
+ ud_localpaths(ud, recipe_layer_name, dldir, data)
+
return items_by_layer
def _collect_fetch_recipes(self, targets, ctask, depgraph):
@@ -178,16 +188,27 @@ class MELUtilsPlugin(LayerPlugin):
items_by_layer = defaultdict(set)
for recipe in fetch_recipes:
- if recipe not in depgraph['pn']:
- continue
+ try:
+ fn = depgraph['pn'][recipe]['filename']
+ except KeyError:
+ mc = self.tinfoil.config_data.getVar('BBMULTICONFIG')
+ if not mc:
+ raise Exception("Could not find key '%s' in depgraph and no multiconfigs defined" % recipe)
+ for cfg in mc.split():
+ try:
+ nkey = f"mc:{cfg}:{recipe}"
+ fn = depgraph['pn'][nkey]['filename']
+ except KeyError:
+ continue
+ if not fn:
+ raise Exception("Could not find recipe for '%s' in depgraph" % recipe)
- fn = depgraph['pn'][recipe]['filename']
real_fn, cls, mc = bb.cache.virtualfn2realfn(fn)
recipe_layer = layer_for_file(real_fn)
appends = self.tinfoil.get_file_appends(fn)
data = self.tinfoil.parse_recipe_file(fn, appendlist=appends)
- for layer, items in self._localpaths_by_layer(data, lambda f: layer_for_file(f) or recipe_layer, args.mirrortarballs).items():
+ for layer, items in self._localpaths_by_layer(data, real_fn, lambda f: layer_for_file(f) or recipe_layer, args.mirrortarballs).items():
items_by_layer[layer] |= items
# If a given download is used by multiple layers, prefer the lowest
@@ -234,9 +255,24 @@ class MELUtilsPlugin(LayerPlugin):
fetch_recipes = self._collect_fetch_recipes(args.targets, args.task, depgraph)
- with open(filename, 'w') as f:
+ omode = 'a' if args.append else 'w'
+ with open(filename, omode) as f:
for recipe in fetch_recipes:
- fn = depgraph['pn'][recipe]['filename']
+ try:
+ fn = depgraph['pn'][recipe]['filename']
+ except KeyError:
+ mc = self.tinfoil.config_data.getVar('BBMULTICONFIG')
+ if not mc:
+ raise Exception("Could not find key '%s' in depgraph and no multiconfigs defined" % recipe)
+ for cfg in mc.split():
+ try:
+ nkey = f"mc:{cfg}:{recipe}"
+ fn = depgraph['pn'][nkey]['filename']
+ except KeyError:
+ continue
+ if not fn:
+ raise Exception("Could not find recipe for '%s' in depgraph" % recipe)
+
real_fn, cls, mc = bb.cache.virtualfn2realfn(fn)
appends = self.tinfoil.get_file_appends(fn)
data = self.tinfoil.parse_recipe_file(fn, appendlist=appends)
@@ -244,7 +280,24 @@ class MELUtilsPlugin(LayerPlugin):
pn = data.getVar('PN')
pv = data.getVar('PV')
lc = data.getVar('LICENSE')
- f.write('%s,%s,%s\n' % (pn, pv, lc))
+
+ if not args.sourceinfo:
+ f.write('%s,%s,%s\n' % (pn, pv, lc))
+ else:
+ # unset su, otherwise we get previous value if there is no current
+ su = ''
+ for url in data.getVar('SRC_URI').split():
+ scheme, host, path, user, passwd, param = bb.fetch.decodeurl(url)
+ if scheme != 'file':
+ su = bb.fetch.encodeurl((scheme, host, path, '', '', ''))
+ hp = data.getVar('HOMEPAGE')
+
+ f.write('%s,%s,%s,%s,%s\n' % (pn, pv, lc, su, hp))
+
+ # remove any duplicates added due to append flag
+ uniqlines = set(open(filename).readlines())
+ with open(filename, 'w') as f:
+ f.writelines(uniqlines)
def register_commands(self, sp):
common = argparse.ArgumentParser(add_help=False)
@@ -258,3 +311,5 @@ class MELUtilsPlugin(LayerPlugin):
dump.add_argument('--filename', '-f', help='filename to dump to', default='${TMPDIR}/downloads-by-layer.txt')
license = self.add_command(sp, 'dump-licenses', self.do_dump_licenses, parents=[common], parserecipes=True)
license.add_argument('--filename', '-f', help='filename to dump to', default='${TMPDIR}/pn-buildlist-licenses.txt')
+ license.add_argument('--append', '-a', help='append to output filename', action='store_true')
+ license.add_argument('--sourceinfo', '-s', help='additionally dump SRC_URI and HOMEPAGE variables too', action='store_true')
diff --git a/meta-mel/lib/oeqa/selftest/cases/recipetool_mel.py b/meta-mel/lib/oeqa/selftest/cases/recipetool_mel.py
index 036ffe8e..587ec90d 100644
--- a/meta-mel/lib/oeqa/selftest/cases/recipetool_mel.py
+++ b/meta-mel/lib/oeqa/selftest/cases/recipetool_mel.py
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
import os
import logging
import tempfile
diff --git a/meta-mel/lib/recipetool/kernel.py b/meta-mel/lib/recipetool/kernel.py
index a3f8c589..e530a326 100644
--- a/meta-mel/lib/recipetool/kernel.py
+++ b/meta-mel/lib/recipetool/kernel.py
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: GPL-2.0
+# ---------------------------------------------------------------------------------------------------------------------
+
# Recipe creation tool - kernel plugin
#
# TODO: figure out how to get all the files added to a single SRC_URI +=
@@ -17,7 +21,7 @@
# $ recipetool kernel_add_dts meta-mylayer *.dts
#
#
-# Copyright (C) 2015-2021 Siemens Digital Industries Software
+# Copyright 2022 Siemens
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
diff --git a/meta-mel/mel-support/recipes-core/meta/archive-release.bbappend b/meta-mel/mel-support/recipes-core/meta/archive-release.bbappend
index 5e4e3037..f94b2de7 100644
--- a/meta-mel/mel-support/recipes-core/meta/archive-release.bbappend
+++ b/meta-mel/mel-support/recipes-core/meta/archive-release.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:append = ":${@':'.join('%s/../scripts/release:%s/../scripts' % (l, l) for l in '${BBPATH}'.split(':'))}"
MEL_SCRIPTS_FILES = "mel-checkout version-sort setup-mel setup-workspace setup-ubuntu setup-rh setup-debian"
SRC_URI += "${@' '.join(uninative_urls(d)) if 'mel_downloads' in '${RELEASE_ARTIFACTS}'.split() else ''}"
@@ -20,6 +24,9 @@ INDIVIDUAL_MANIFEST_LAYERS ?= ""
FORKED_REPOS ?= ""
PUBLIC_REPOS ?= "${FORKED_REPOS}"
+# Define a location for placing external artifacts to be used by the build
+MEL_EXTERNAL_ARTIFACTS ?= "${TOPDIR}/mel-external-artifacts"
+
RELEASE_EXCLUDED_LAYERNAMES ?= "workspacelayer"
ARCHIVE_RELEASE_DL_DIR ?= "${DL_DIR}"
@@ -214,6 +221,7 @@ python do_archive_mel_layers () {
remotes = get_remotes(subdir, d) or {}
else:
remotes = {}
+ pack_base, head = git_archive(subdir, objdir, message, keep_paths, remotes)
if not remotes:
bb.note('Skipping remotes for %s' % path)
diff --git a/meta-mel/meta-python/recipes-devtools/python/python3-unidiff_%.bbappend b/meta-mel/meta-python/recipes-devtools/python/python3-unidiff_%.bbappend
new file mode 100644
index 00000000..7c4e9f67
--- /dev/null
+++ b/meta-mel/meta-python/recipes-devtools/python/python3-unidiff_%.bbappend
@@ -0,0 +1,5 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+BBCLASSEXTEND += "native"
diff --git a/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init.bb b/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init.bb
index 15c24165..05b3970e 100644
--- a/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init.bb
+++ b/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init.bb
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SUMMARY = "MEL DM-Crypt Image initramfs init"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
diff --git a/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init/init.sh b/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init/init.sh
index 603859b2..1807ec7b 100644
--- a/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init/init.sh
+++ b/meta-mel/openembedded-layer/recipes-core/initrdscripts/dmcrypt-initramfs-init/init.sh
@@ -1,5 +1,9 @@
#!/bin/sh
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
PATH=/sbin:/bin:/usr/sbin:/usr/bin
CONSOLE="/dev/console"
diff --git a/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2/lvm2-mel.service b/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2/lvm2-mel.service
new file mode 100644
index 00000000..3977aa09
--- /dev/null
+++ b/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2/lvm2-mel.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Linux Volume Manager
+DefaultDependencies=no
+Before=fsck-root.service local-fs.target
+After=udev.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/sbin/vgmknodes --refresh
+ExecStop=/usr/sbin/pvchange -an
+ExecStop=/usr/sbin/vgchange -an
+
+[Install]
+WantedBy=sysinit.target
diff --git a/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2_%.bbappend b/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2_%.bbappend
new file mode 100644
index 00000000..1505103d
--- /dev/null
+++ b/meta-mel/openembedded-layer/recipes-support/lvm2/lvm2_%.bbappend
@@ -0,0 +1,19 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI:append = " file://lvm2-mel.service"
+
+PACKAGES += "${PN}-mel"
+SYSTEMD_PACKAGES += "${PN}-mel"
+SYSTEMD_SERVICE:${PN}-mel = "lvm2-mel.service"
+SYSTEMD_AUTO_ENABLE:${PN}-mel = "enable"
+RDEPENDS:${PN} += "${PN}-mel"
+
+do_install:append() {
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -m 0644 ${WORKDIR}/${SYSTEMD_SERVICE:${PN}-mel} ${D}${systemd_system_unitdir}/
+ fi
+}
diff --git a/meta-mel/recipes-connectivity/connman/connman_%.bbappend b/meta-mel/recipes-connectivity/connman/connman_%.bbappend
index f4dd1688..aabe2b72 100644
--- a/meta-mel/recipes-connectivity/connman/connman_%.bbappend
+++ b/meta-mel/recipes-connectivity/connman/connman_%.bbappend
@@ -1,6 +1,9 @@
-# do not use connman as a DNs
-# proxy because both dnsmasq and connman try to bind to same port 53.
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+# do not use connman as a DNS proxy because both dnsmasq and connman try to
+# bind to same port 53.
do_install:append:mel () {
sed -i '/^ExecStart=/ s@-n@--nodnsproxy -n@g' ${D}${systemd_unitdir}/system/connman.service
}
-
diff --git a/meta-mel/recipes-core/base-files/base-files_3.0.14.bbappend b/meta-mel/recipes-core/base-files/base-files_3.0.14.bbappend
index 93c1d1a0..67e358bd 100644
--- a/meta-mel/recipes-core/base-files/base-files_3.0.14.bbappend
+++ b/meta-mel/recipes-core/base-files/base-files_3.0.14.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:prepend := "${THISDIR}:"
dirs755:append:mel = "\
diff --git a/meta-mel/recipes-core/busybox/busybox/resize.cfg b/meta-mel/recipes-core/busybox/busybox/resize.cfg
deleted file mode 100644
index a1d9c95b..00000000
--- a/meta-mel/recipes-core/busybox/busybox/resize.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_RESIZE=y
-CONFIG_FEATURE_RESIZE_PRINT=y
diff --git a/meta-mel/recipes-core/busybox/busybox_%.bbappend b/meta-mel/recipes-core/busybox/busybox_%.bbappend
index 48a3d04d..a6c14879 100644
--- a/meta-mel/recipes-core/busybox/busybox_%.bbappend
+++ b/meta-mel/recipes-core/busybox/busybox_%.bbappend
@@ -1,10 +1,13 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:prepend := "${THISDIR}/busybox:"
# fancy-head.cfg is enabled so we have head -c, which we need for our tracing
# scripts with lttng
SRC_URI:append:mel = "\
file://setsid.cfg \
- file://resize.cfg \
file://fancy-head.cfg \
file://pidof.cfg \
file://top.cfg \
diff --git a/meta-mel/recipes-core/images/console-image.bb b/meta-mel/recipes-core/images/console-image.bb
index 7869945a..09f07ab7 100644
--- a/meta-mel/recipes-core/images/console-image.bb
+++ b/meta-mel/recipes-core/images/console-image.bb
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SUMMARY = "A console-only image that fully supports the target device \
hardware."
diff --git a/meta-mel/recipes-core/images/mel-initramfs-image.bb b/meta-mel/recipes-core/images/mel-initramfs-image.bb
index 6873b958..d932f182 100644
--- a/meta-mel/recipes-core/images/mel-initramfs-image.bb
+++ b/meta-mel/recipes-core/images/mel-initramfs-image.bb
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
DESCRIPTION = "MEL Image initramfs"
PACKAGE_INSTALL = "initramfs-framework-base ${VIRTUAL-RUNTIME_base-utils} initramfs-module-udev udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
@@ -26,3 +30,8 @@ BAD_RECOMMENDATIONS += "busybox-syslog"
IMAGE_PREPROCESS_COMMAND:remove = "selinux_set_labels ;"
COMPATIBLE_HOST:mel = "(arm|aarch64|i.86|x86_64).*-linux"
+
+# Take care of warnings due to dependency on noexec ${INITRAMFS_IMAGE}:do_image_complete's
+# do_packagedata() in our initramfs image for now. The fix needs to come from oe-core image
+# bbclass when available, after which this can be removed
+deltask do_packagedata
diff --git a/meta-mel/recipes-core/initrdscripts/files/init-boot.sh b/meta-mel/recipes-core/initrdscripts/files/init-boot.sh
index 28c003e5..afe04581 100644
--- a/meta-mel/recipes-core/initrdscripts/files/init-boot.sh
+++ b/meta-mel/recipes-core/initrdscripts/files/init-boot.sh
@@ -1,5 +1,9 @@
#!/bin/sh
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
PATH=/sbin:/bin:/usr/sbin:/usr/bin
mkdir -p /proc
diff --git a/meta-mel/recipes-core/initrdscripts/initramfs-boot_1.0.bbappend b/meta-mel/recipes-core/initrdscripts/initramfs-boot_1.0.bbappend
index db3ea288..bbaf9585 100644
--- a/meta-mel/recipes-core/initrdscripts/initramfs-boot_1.0.bbappend
+++ b/meta-mel/recipes-core/initrdscripts/initramfs-boot_1.0.bbappend
@@ -1 +1,5 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:prepend:mel := "${THISDIR}/files:"
diff --git a/meta-mel/recipes-core/initrdscripts/initramfs-framework/lvm b/meta-mel/recipes-core/initrdscripts/initramfs-framework/lvm
new file mode 100644
index 00000000..e7cace85
--- /dev/null
+++ b/meta-mel/recipes-core/initrdscripts/initramfs-framework/lvm
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+lvm_enabled() {
+ if ! lvscan |grep -i -w "inactive" &>/dev/null;then
+ return 1
+ fi
+ return 0
+}
+
+lvm_run() {
+ lvm pvscan --cache --activate ay
+ lvm vgscan --mknodes
+ udevadm trigger --action=add
+}
diff --git a/meta-mel/recipes-core/initrdscripts/initramfs-framework_%.bbappend b/meta-mel/recipes-core/initrdscripts/initramfs-framework_%.bbappend
new file mode 100644
index 00000000..fcc6cfc5
--- /dev/null
+++ b/meta-mel/recipes-core/initrdscripts/initramfs-framework_%.bbappend
@@ -0,0 +1,8 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+RDEPENDS:initramfs-module-lvm += "lvm2"
+RRECOMMENDS:${PN}-base += "initramfs-module-lvm"
diff --git a/meta-mel/recipes-core/kbd/kbd_2.5.0.bbappend b/meta-mel/recipes-core/kbd/kbd_2.5.0.bbappend
index 7c8264ac..41760e45 100644
--- a/meta-mel/recipes-core/kbd/kbd_2.5.0.bbappend
+++ b/meta-mel/recipes-core/kbd/kbd_2.5.0.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SRC_URI:prepend:mel = "git://github.com/MentorEmbedded/kbd;branch=2.5;protocol=https "
SRC_URI:remove:mel := "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz"
SRCREV:mel = "57b52a3f3cef3b6ba144c85fc62b3d3c8f83e4cf"
diff --git a/meta-mel/recipes-core/meta/meta-environment.bbappend b/meta-mel/recipes-core/meta/meta-environment.bbappend
index 6baecace..47f799b3 100644
--- a/meta-mel/recipes-core/meta/meta-environment.bbappend
+++ b/meta-mel/recipes-core/meta/meta-environment.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SDK_MULTILIB_VARIANTS ?= "${MULTILIB_VARIANTS}"
python set_multilib_variants () {
variants = d.getVar('SDK_MULTILIB_VARIANTS', True)
diff --git a/meta-mel/recipes-core/meta/sdk-env-kernelvars.bb b/meta-mel/recipes-core/meta/sdk-env-kernelvars.bb
index 465507f3..e84ad9c3 100644
--- a/meta-mel/recipes-core/meta/sdk-env-kernelvars.bb
+++ b/meta-mel/recipes-core/meta/sdk-env-kernelvars.bb
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SUMMARY = "Add the KERNEL_ variables to the SDK environment."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
diff --git a/meta-mel/recipes-core/os-release/os-release.bbappend b/meta-mel/recipes-core/os-release/os-release.bbappend
index a3c7db28..1d46103d 100644
--- a/meta-mel/recipes-core/os-release/os-release.bbappend
+++ b/meta-mel/recipes-core/os-release/os-release.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
OS_RELEASE_FIELDS:mel = "PRETTY_NAME NAME VERSION_ID VERSION VERSION_CODENAME ID HOME_URL SUPPORT_URL BUG_REPORT_URL"
ID:mel = "flex-os"
diff --git a/meta-mel/recipes-core/packagegroups/packagegroup-base.bbappend b/meta-mel/recipes-core/packagegroups/packagegroup-base.bbappend
index de9addbb..6051fe4f 100644
--- a/meta-mel/recipes-core/packagegroups/packagegroup-base.bbappend
+++ b/meta-mel/recipes-core/packagegroups/packagegroup-base.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
RDEPENDS:packagegroup-base-bluetooth:append:mel = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio pulseaudio-server', '', d)}"
-RDEPENDS:packagegroup-base-nfs:append:mel = " nfs-utils"
+RDEPENDS:packagegroup-base-nfs:append:mel = " nfs-utils-client"
diff --git a/meta-mel/recipes-core/packagegroups/packagegroup-core-boot.bbappend b/meta-mel/recipes-core/packagegroups/packagegroup-core-boot.bbappend
index 5bd8e315..c6fc6cc4 100644
--- a/meta-mel/recipes-core/packagegroups/packagegroup-core-boot.bbappend
+++ b/meta-mel/recipes-core/packagegroups/packagegroup-core-boot.bbappend
@@ -1,2 +1,6 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
#Don't use sysvinit based network configuration. We have connman for that purpose
SYSVINIT_SCRIPTS:mel := "${@oe.utils.str_filter_out('init-ifupdown', SYSVINIT_SCRIPTS, d)}"
diff --git a/meta-mel/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend b/meta-mel/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend
index fb64cfa9..7aafcd40 100644
--- a/meta-mel/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend
+++ b/meta-mel/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend
@@ -1,2 +1,6 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# MEL Flex does not support systemtap. Systemtap brings boost which takes lots of resources. So we do not need it.
SYSTEMTAP:mel = ""
diff --git a/meta-mel/recipes-core/psplash/mel/mel.png b/meta-mel/recipes-core/psplash/mel/mel.png
index b4474135..b7ca22d7 100644
--- a/meta-mel/recipes-core/psplash/mel/mel.png
+++ b/meta-mel/recipes-core/psplash/mel/mel.png
Binary files differ
diff --git a/meta-mel/recipes-core/psplash/psplash_git.bbappend b/meta-mel/recipes-core/psplash/psplash_git.bbappend
index 4f3b6d8f..f8d44254 100644
--- a/meta-mel/recipes-core/psplash/psplash_git.bbappend
+++ b/meta-mel/recipes-core/psplash/psplash_git.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:prepend := "${THISDIR}:"
SRC_URI:append:mel = " ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '\
diff --git a/meta-mel/recipes-core/systemd/systemd_%.bbappend b/meta-mel/recipes-core/systemd/systemd_%.bbappend
index 04d9af57..33ab5b6c 100644
--- a/meta-mel/recipes-core/systemd/systemd_%.bbappend
+++ b/meta-mel/recipes-core/systemd/systemd_%.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SYSTEMD_LOGLEVEL ?= "info"
SYSTEMD_LOGLEVEL:mel ?= "emerg"
diff --git a/meta-mel/recipes-core/util-linux/util-linux_%.bbappend b/meta-mel/recipes-core/util-linux/util-linux_%.bbappend
index 263952ca..fa0fcffc 100644
--- a/meta-mel/recipes-core/util-linux/util-linux_%.bbappend
+++ b/meta-mel/recipes-core/util-linux/util-linux_%.bbappend
@@ -1 +1,5 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
EXTRA_OECONF:append:class-native:mel = " --disable-schedutils"
diff --git a/meta-mel/recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend b/meta-mel/recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend
index cd15f767..f8b23c13 100644
--- a/meta-mel/recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend
+++ b/meta-mel/recipes-devtools/e2fsprogs/e2fsprogs_%.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# The e2fsprogs recipe has the main package depending upon blkid and badblocks
# for compatibility, but we know we aren't bitten by that compatibility issue,
# so we drop that dependency.
diff --git a/meta-mel/recipes-devtools/llvm/llvm_%.bbappend b/meta-mel/recipes-devtools/llvm/llvm_%.bbappend
new file mode 100644
index 00000000..b9af2c56
--- /dev/null
+++ b/meta-mel/recipes-devtools/llvm/llvm_%.bbappend
@@ -0,0 +1,6 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+# If build system has 8 or less CPU cores, build only 8 jobs in parallel
+PARALLEL_MAKE:mel = "-j ${@'8' if oe.utils.cpu_count() <= 8 else oe.utils.cpu_count() * 2}"
diff --git a/meta-mel/recipes-devtools/python/python3_%.bbappend b/meta-mel/recipes-devtools/python/python3_%.bbappend
new file mode 100644
index 00000000..3330ed55
--- /dev/null
+++ b/meta-mel/recipes-devtools/python/python3_%.bbappend
@@ -0,0 +1,54 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+# Needed by patchinfo
+PATCHINFO_PYTHONPATH = "${COMPONENTS_DIR}/${BUILD_ARCH}/python3-unidiff-native/${libdir}/python${PYTHON_MAJMIN}/site-packages"
+DEPENDS_UNIDIFF = ""
+DEPENDS_UNIDIFF:mel:class-target = "python3-unidiff-native:do_populate_sysroot"
+do_archive_release_downloads[depends] += "${DEPENDS_UNIDIFF}"
+
+# Write patch names and modified files to python3-patches.txt
+python do_archive_release_downloads:append:mel:class-target () {
+ import csv
+ import json
+ from collections import defaultdict
+ from pathlib import Path
+
+ sources_dir = Path(sources_dir)
+ layerdir = d.getVar('LAYERDIR_mel')
+ script = Path(layerdir).parent / 'scripts' / 'patchinfo'
+ if not script.exists():
+ bb.fatal('Expected {} script does not exist'.format(str(script)))
+
+ python = d.getVar('PYTHON')
+ env = os.environ.copy()
+ env['PYTHONPATH'] = d.getVar('PATCHINFO_PYTHONPATH')
+
+ patchinfos = []
+ patches = [bb.fetch.decodeurl(u)[2] for u in src_patches(d)]
+ for patch in patches:
+ try:
+ info, _ = bb.process.run([python, str(script), patch], cwd=sources_dir, env=env)
+ except bb.process.ExecutionError as exc:
+ bb.warn("Failed to get patchinfo for %s: %s" % (patch, exc))
+ continue
+ else:
+ try:
+ patchinfo = json.loads(info)
+ except json.decoder.JSONDecodeError as exc:
+ bb.warn("Failed to decode json from patchinfo for %s" % patch)
+ continue
+ else:
+ if 'Filename' in patchinfo and 'Files' in patchinfo:
+ patchinfos.append(patchinfo)
+ else:
+ bb.warn("Unexpected json contents for patchinfo for %s" % patch)
+
+ with open(sources_dir / 'python3-patches.txt', 'w') as f:
+ for patchinfo in patchinfos:
+ patch, files = patchinfo['Filename'], patchinfo['Files']
+ f.write(patch + ':\n')
+ for fn in files:
+ f.write(' ' + fn + '\n')
+}
diff --git a/meta-mel/recipes-graphics/images/weston-image.bb b/meta-mel/recipes-graphics/images/weston-image.bb
index 31e58412..84c8653f 100644
--- a/meta-mel/recipes-graphics/images/weston-image.bb
+++ b/meta-mel/recipes-graphics/images/weston-image.bb
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SUMMARY = "Wayland/Weston image based on core-image-weston image recipe"
IMAGE_FEATURES += "splash package-management hwcodecs"
diff --git a/meta-mel/recipes-graphics/libsdl2/libsdl2_%.bbappend b/meta-mel/recipes-graphics/libsdl2/libsdl2_%.bbappend
index 7a599d6c..2c3a3b38 100644
--- a/meta-mel/recipes-graphics/libsdl2/libsdl2_%.bbappend
+++ b/meta-mel/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -1 +1,5 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
DISTRO_FEATURES:remove:mel = "opengl"
diff --git a/meta-mel/recipes-kernel/perf/perf.bbappend b/meta-mel/recipes-kernel/perf/perf.bbappend
index b1648e10..3f1b6404 100644
--- a/meta-mel/recipes-kernel/perf/perf.bbappend
+++ b/meta-mel/recipes-kernel/perf/perf.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# MEL supports BSP kernel versions which upstream doesn't care about.
# Remove -I/usr/local/include from the default INCLUDES
EXTRA_OEMAKE:append:mel = " 'INCLUDES=-I. $(CONFIG_INCLUDES)'"
diff --git a/meta-mel/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/meta-mel/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 1599cd5e..a3eaedc6 100644
--- a/meta-mel/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/meta-mel/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
do_compile:append:mel () {
# Work around a toolchain issue with the default resampler (speex-float-N)
# by using speex-fixed-N. JIRA: SB-1495
diff --git a/meta-mel/recipes-sato/images/core-image-sato.bbappend b/meta-mel/recipes-sato/images/core-image-sato.bbappend
index a2473e51..17bbd171 100644
--- a/meta-mel/recipes-sato/images/core-image-sato.bbappend
+++ b/meta-mel/recipes-sato/images/core-image-sato.bbappend
@@ -1,2 +1,6 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
IMAGE_FEATURES:append:mel = "${@bb.utils.contains('COMBINED_FEATURES', 'alsa', ' tools-audio', '', d)}"
IMAGE_INSTALL:append:mel = " quota"
diff --git a/meta-mel/recipes-support/boost/boost_%.bbappend b/meta-mel/recipes-support/boost/boost_%.bbappend
index fe0ce725..65aada9e 100644
--- a/meta-mel/recipes-support/boost/boost_%.bbappend
+++ b/meta-mel/recipes-support/boost/boost_%.bbappend
@@ -1 +1,5 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
PARALLEL_MAKE:mel = "-j 4"
diff --git a/meta-mel/recipes-support/consolekit/consolekit_%.bbappend b/meta-mel/recipes-support/consolekit/consolekit_%.bbappend
index d2c05d44..914c16af 100644
--- a/meta-mel/recipes-support/consolekit/consolekit_%.bbappend
+++ b/meta-mel/recipes-support/consolekit/consolekit_%.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI:append:mel = " \
diff --git a/meta-mel/recipes-support/curl/curl_%.bbappend b/meta-mel/recipes-support/curl/curl_%.bbappend
new file mode 100644
index 00000000..2f1dd7c6
--- /dev/null
+++ b/meta-mel/recipes-support/curl/curl_%.bbappend
@@ -0,0 +1,8 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
+# We need openssl support for nativesdk-curl to ensure we can clone https
+# repositories with nativesdk-git.
+DEPENDS:append:class-nativesdk:mel = " nativesdk-openssl"
+PACKAGECONFIG:append:class-nativesdk:mel = " ssl"
diff --git a/meta-mel/recipes-support/db/db_%.bbappend b/meta-mel/recipes-support/db/db_%.bbappend
index 27812981..f4757dd2 100644
--- a/meta-mel/recipes-support/db/db_%.bbappend
+++ b/meta-mel/recipes-support/db/db_%.bbappend
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
SRC_URI:mel = "git://github.com/MentorEmbedded/libdb;branch=5.3;protocol=https"
SRCREV:mel = "81e5dd637b0bd954904130a2a493d3ac281148dc"
PV:mel = "5.3.28+git${SRCPV}"
diff --git a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-2g.wks b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-2g.wks
index 36d298a1..3a6cae28 100644
--- a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-2g.wks
+++ b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-2g.wks
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# short-description: Create SD card image with a boot partition
# long-description: Creates a partitioned SD card image. Boot files
# are located in the first vfat partition.
diff --git a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-4g.wks b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-4g.wks
index 2a482249..1f9ff929 100644
--- a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-4g.wks
+++ b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-4g.wks
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# short-description: Create SD card image with a boot partition
# long-description: Creates a partitioned SD card image. Boot files
# are located in the first vfat partition.
diff --git a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-8g.wks b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-8g.wks
index 7706d041..e769a2df 100644
--- a/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-8g.wks
+++ b/meta-mel/scripts/lib/wic/canned-wks/sdimage-bootpart-8g.wks
@@ -1,3 +1,7 @@
+# ---------------------------------------------------------------------------------------------------------------------
+# SPDX-License-Identifier: MIT
+# ---------------------------------------------------------------------------------------------------------------------
+
# short-description: Create SD card image with a boot partition
# long-description: Creates a partitioned SD card image. Boot files
# are located in the first vfat partition.