From patchwork Thu Nov 12 21:07:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 103925 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.6075.1794517673531277756 for ; Thu, 12 Nov 2026 13:07:53 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20260707 header.b=kwL5+Pb+; spf=pass (domain: gmail.com, ip: 209.85.210.170, mailfrom: raj.khem@gmail.com) Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-8b9c51097e2so128342b3a.1 for ; Thu, 12 Nov 2026 13:07:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1794517673; x=1795122473; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=X7Rm/Agn/X6dTDgb5yUuYfdsmKkzVUaEvurhG37ogu8=; b=kwL5+Pb+0/pfAT0Sm9eIjscvg6vd0lXshpx0KaovBAL7PJeLo4zfUmxXk2FKiKBG2O zh8E4+TscgdmluyQ6n6TAojuvbRlBCo8tpe6fCF+NQBYbxiNoLtwWCEakQo2NQl+5CVv YAlE5Y/BOuuSveKD1NmNii4zR0WEOl0fXxWYmMOQ/xlNrldUxMmEPuHLPFPodzy6GCW/ Oqs2dHbLrlC1cUiaUYJeeCAcsi8X2uc37YCRLItJEPqh4EvrVEk/gHDYXmP8/iTkpvfE wnMHrUjBR/qL+0g2lwkd09uqFGdDg6B+SbL5BpfF5b7qEz9fCznRvFBg4k+JMC5e5V2E b32Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1794517673; x=1795122473; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=X7Rm/Agn/X6dTDgb5yUuYfdsmKkzVUaEvurhG37ogu8=; b=o9ej5sYnt5onMVHE6Kiujuokmk/MpMhG66fdJN6zCp/3VMcCcoLxoj+hmtYWTpR4YG c//de0vs5qayULFo1MwELYoR7wiFmBSKUimHDVFGv4mX1TvU2DRrgdZdNsEvTlnF8rQB Q8XA+H0jmzto7+75sJi+kg9pNC3zwCCaTDWJnev+wNO8xb126uSoHwXVyIqc1fvMA0b0 lM5YJYLsC3fFi9qiQMK3sQ5x7pXTBxqPEKgs3+Q2ie6Bl7f3q/ZdEkDqP+2JcII1zmia eI4GXmJXBoWE0K6JU8RAhhgVv0RCv/ycpUqBWb3jOnGsHF6UMeBXfuPbI1yd1TLd/x06 LkDg== X-Gm-Message-State: APuU4Z8RiXz5WL4zkcy7JKWxgper4YhX9PtY/nHVq7oLyzLFPtQpdjWg RfW+CDGRaGBkx2btVhsDLJIPE7dVxp8ibFWS9iOcUhXmS7eiNd1eSIfs4tnuXABouvY= X-Gm-Gg: AYBFou3R8O7bRYvAUNGj0K0A03C7+GLjfZ6pzZ/ncy2RHZbVt5UYgsBjIbnsjp1QFOP 3a02PcSEwzQrbP18GPSU6V2kBC65Q3du5U7bJYeQ4dM8KN6RNhWGa8gXV7iZt+GaTXAHhuucIyu 4bpnFnKddqomsesHGa0zDteIT0h6W1EwkgJrB5ki9oVT+UXKKw2Ohb/6dIMB9KU1+Lx84P8YG17 m3UqntKc9RxHkdMHwQ7Wy/MR36GbNcsSCogzfkJa3ASDQ4Xh4tEFoXPE8GcV2fOSyCL1iv8qOoC BsodJxUiIB2BAGr/7QJOYz73+LpoJaU9sSr5V4pbEbGfQWUFk9BOeo0uPHosqt4TmaW3dKLPYUV iEcGj+B2ITEj96tDqFvbWVEW1qGr/CdFIg17vRFwI2PikffsPe1BauF1Cq0OYLUDu7Ag31QXRn6 /x4fh/1I2G/ez3L9JPtnXWEK9yOVPeARcf6B3yRNyN5ZbW+69h9etsMVRro+0eXgkYDNLf7l8w5 WO5M8T7MLz4xaBY/yBk5M4g5z4ZUgbRZPYQJYPbPziNR7kaleUTH6NokrL4+KJE8rdmgJdJSlXv 9WkCzGTLwZbi43qmViFpv8zFkwq5IKc1ub0wzh3YmpSOYNiPPUPAfXJqm+qUUw9vO5puKrhYakM 9SzPcsoa/X0Yih1Jf48bqdmRVqCFIwc42xbfAsU9cTCCX3PeGGnbpYAXvb5EGCyGgyWxwyLV+LO VyQSVzuD9flCc88tx0l8dokYb8jdw3qLfAcF8oCSr6QusA5xm511nHRb57OOnlejo2rAk9BwMS5 D5kZsZ088uByr6uQ3H3O+hQzIyVUgGZjuyrE8998U3PIUpUXPPwtimGFN3KLEbPgvSR0AYje2vH wJqD+rHz8dIZHL2Ibm3lhMANsQ== X-Received: by 2002:a05:701b:4512:20b0:1b4:fecf:4ec5 with SMTP id a92af1059eb24-1b5031737a5mr596394c88.18.1794517672647; Thu, 12 Nov 2026 13:07:52 -0800 (PST) Return-Path: Received: from apollo.tail3ccdd3.ts.net ([147.160.63.35]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-1b5031468b7sm1800274c88.5.2026.11.12.13.07.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Nov 2026 13:07:51 -0800 (PST) From: Khem Raj X-Google-Original-From: Khem Raj To: openembedded-devel@lists.openembedded.org Cc: Khem Raj Subject: [meta-filesystems][PATCH 1/3] tcmu-runner: Use an SPDX identifier for the LGPL license Date: Thu, 12 Nov 2026 13:07:47 -0800 Message-ID: <20261112210749.875657-1-khem.raj@oss.qualcomm.com> X-Mailer: git-send-email 2.56.1 MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by lin-tor-korg-lkml-alma10-1 with HTTPS for ; Thu, 12 Nov 2026 21:08:02 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/132214 LGPLv2.1 is a legacy name that is only accepted through SPDXLICENSEMAP, which maps it to LGPL-2.1-only. The sources are licensed under "the GNU Lesser General Public License, version 2.1 or any later version", so use LGPL-2.1-or-later. AI-Generated: Uses Claude Code Signed-off-by: Khem Raj --- meta-filesystems/recipes-utils/tcmu-runner/tcmu-runner_1.6.2.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-filesystems/recipes-utils/tcmu-runner/tcmu-runner_1.6.2.bb b/meta-filesystems/recipes-utils/tcmu-runner/tcmu-runner_1.6.2.bb index 0256a433cb..e165a905e2 100644 --- a/meta-filesystems/recipes-utils/tcmu-runner/tcmu-runner_1.6.2.bb +++ b/meta-filesystems/recipes-utils/tcmu-runner/tcmu-runner_1.6.2.bb @@ -1,5 +1,5 @@ SUMMARY = "A daemon that handles the userspace side of the LIO TCM-User backstore" -LICENSE = "Apache-2.0 OR LGPLv2.1" +LICENSE = "Apache-2.0 OR LGPL-2.1-or-later" LIC_FILES_CHKSUM = " \ file://LICENSE.LGPLv2.1;md5=a7ef827a98fa240d37910ac4e8ce3f53 \ file://LICENSE.Apache2;md5=6c4db32a2fa8717faffa1d4f10136f47 \ From patchwork Thu Nov 12 21:07:48 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 103926 Received: from mail-dl1-f53.google.com (mail-dl1-f53.google.com [74.125.82.53]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.6076.1794517675286258612 for ; Thu, 12 Nov 2026 13:07:55 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20260707 header.b=Se3msm0q; spf=pass (domain: gmail.com, ip: 74.125.82.53, mailfrom: raj.khem@gmail.com) Received: by mail-dl1-f53.google.com with SMTP id a92af1059eb24-1b3b4bcbfc9so241158c88.1 for ; Thu, 12 Nov 2026 13:07:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1794517675; x=1795122475; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=UpPCHwlZuJE0J45EkCoewAp2D1ovKyFJH5te6IDyBpk=; b=Se3msm0qWrS4zyOVzVXRCXP5YvusRfoKFVYRDGhz3fbfc+UnwdBRN9tib7xe/d3gbk n9iCvtnX556qjR3JM6WBcI4QyL7i8CQ7gitSCyvYvJLN+8p3ARGyH8im4rZmd500dSDd zMX6FOOoZ9swAArC1pu19KlaWKqMx/53tiTYAlnWt4SaDdFBZxjrCcb5K8Z/U9vfdkdi CfFyDif54hvjebei2ti+yCT2KZY+z45mb7ygcpX9N3tG1+AzR4G7uLj6OqxMfHUKnnVs 2Ma9hugBj2O2y5wxg3lxMwHlIQFlMikiXQE4UiL2grsDWw4olotebV9bwT126y0BG4Gi /jnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1794517675; x=1795122475; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=UpPCHwlZuJE0J45EkCoewAp2D1ovKyFJH5te6IDyBpk=; b=f4EcvQoR7EppPW1MOU9za06trZuNRQ2yvypMtFnm9V8J992np+FiAg0N2pf7mihjkO S9QamC1YJmKPirnV1eRxVa77hLj+MGj9HYu4FTstZ7E0RC0613L+a4SQ+g/LPmjF/6yK 2ygOWYXtUUU90qjKXl2qc0b2j2ZGKtcxw8SggBVn0ERFkF4ESKkArMXNs6e9Zf8dZv63 OPhDGSfCTGNiOjuuRfuYHScX0aD9TFe0pKfM6o6JlODCN81Zld6iWtSysqVqYqB4zYee Oxz61oJUmMKOj4tsr3ihB7bdh05VkHIgH2vWWtHyjPOyq6vLQhehZ+gNgCJEQaRUvBmG krIg== X-Gm-Message-State: APuU4Z8448JtOFzwGbwgSeR42lJujE4F4ajdu0qaZoL2Arf4oGVgpTfo XppAQh6KvUGNfC2/x2PhdELoqxkwFmLvN/jG9Gy4iUCy9W3W8sDC2J6zR7V3q7F+oug= X-Gm-Gg: AYBFou0ljQQwa9ayRQAz0xggEC2PDrsl55EFUf/Crgr6xttO5NiXh8i+HfOxBQ7c5h0 pLqKtzq3FgI12xM0TDNZ4KLBy93ZUFN5phbJnsyaCZzotnofP4RF6/vbLZ4KpCrIt8CzWtRdORm NzJ6Fbu6Qasq+bLsUQvF5/ggF7GEDGkDXwUSad46q4OoSqJEpEJexoGSrFyaqXZcWEn+qRK5hlz NNjPVSzzoezv4RPGlVgj7lGPZP8aDSjs4Gxi8xHxWSuD307RddZWRc+fuefcyFUd+uiHNRVprQz JodubyOnlakKUJ8Y3PYwOrxhM6ZXQE5y/xqWEsbcOxM2vjRQx9xXDZ0c7NTkAVsvtDQzbmLv2uG YFPAH2G7Kz3MsPDG1ru1HBdQ9zW3eKAE4nuuSSTfNGLjI/nV+JSE8H9U5dVlzGC+5nNFEVK6Qlf kWKYTSgX+fk6oHthCssEqTpkTFmbzBL7YOeydv13DyyYk+mm/rOV4QEYR/PQ8lwObe6gCfiI6v3 rNJrQBwe4EuqIfGR3H4hu15Jl+HeWQO/rBr3CwVJPPdIZB/IXNqR8Qt7iPV0cQX7LG5vQS+D2cd MXetbxEteTd7Xge77+4CXb+S0Sjg3XV+W/Ee17H71JO8GdmRsqD1AKdKVNbVVRAcDuhksA4P5FB jwKGNkrUnnEHUAxb7O4AEGuy+X8pSw0etF9GmWt61nCso788/FtJdqcQIaXpgxEnCllCTnrgpWE eg/DONHcQ40ysO0VOEpyDThIpmVESS0DYfPUAKE+Wf83Xamt9WpHgJGuphKHZz49PKgGZ5KiFXF MEvlA7SFaDZmKKleb9J1eOky67opAhLhY06WU/OEP5Pxr6oX2gmq+HdQjKks6B9rnoIGd7RUkZb nQ66 X-Received: by 2002:a05:701b:4282:20b0:143:5266:48ee with SMTP id a92af1059eb24-1b503191fe6mr688304c88.42.1794517674470; Thu, 12 Nov 2026 13:07:54 -0800 (PST) Return-Path: Received: from apollo.tail3ccdd3.ts.net ([147.160.63.35]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-1b5031468b7sm1800274c88.5.2026.11.12.13.07.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Nov 2026 13:07:53 -0800 (PST) From: Khem Raj X-Google-Original-From: Khem Raj To: openembedded-devel@lists.openembedded.org Cc: Khem Raj Subject: [meta-oe][PATCH 2/3] hunspell-dictionaries: Fix LICENSE for SPDX Date: Thu, 12 Nov 2026 13:07:48 -0800 Message-ID: <20261112210749.875657-2-khem.raj@oss.qualcomm.com> X-Mailer: git-send-email 2.56.1 In-Reply-To: <20261112210749.875657-1-khem.raj@oss.qualcomm.com> References: <20261112210749.875657-1-khem.raj@oss.qualcomm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by lin-tor-korg-lkml-alma10-1 with HTTPS for ; Thu, 12 Nov 2026 21:08:02 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/132215 The per-dictionary licenses were set as LICENSE:dictionaries/ overrides, which never apply since they are not package names, so the recipe, which installs every dictionary into a single package, was reported as MIT only. Several of those values were also deprecated SPDX ids (GPL-2.0, LGPL-2.1, ...) or license refs without a license text (LicenseRef-BSD, LicenseRef-Other). Record each dictionary's license in HUNSPELL_DICT_LICENSE, taken from the "license" field of its upstream package.json with deprecated ids mapped to their -only equivalents, and set LICENSE to the conjunction of all of them. Exceptions: - en-*: "BSD" is not an SPDX id; these use the SCOWL license text, added as LicenseRef-SCOWL. - ru: a BSD-style license with an extra clause, added as LicenseRef-hunspell-ru. - vi: package.json says GPL-2.0, but the license file says GPLv3. - is: the license file also covers the CC-BY-4.0 hyphenation rules. AI-Generated: Uses Claude Code Signed-off-by: Khem Raj --- .../hunspell/hunspell-dictionaries.bb | 132 +++++++++--------- 1 file changed, 68 insertions(+), 64 deletions(-) diff --git a/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb b/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb index 9960e11357..0a055c4027 100644 --- a/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb +++ b/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb @@ -2,70 +2,74 @@ SUMMARY = "Hunspell dictionaries used by Maliit" #Provided by Titus Wormer (wooorm) https://github.com/wooorm/dictionaries -LICENSE = "MIT" -LICENSE:dictionaries/bg = "LGPL-2.1" -LICENSE:dictionaries/br = "GPL-3.0" -LICENSE:dictionaries/ca-valencia = "GPL-2.0 AND LGPL-2.1-only" -LICENSE:dictionaries/ca = "GPL-2.0 AND LGPL-2.1-only" -LICENSE:dictionaries/cs = "GPL-2.0-only" -LICENSE:dictionaries/da = "GPL-2.0-only" -LICENSE:dictionaries/de-AT = "GPL-3.0-only" -LICENSE:dictionaries/de-CH = "GPL-3.0-only" -LICENSE:dictionaries/de = "GPL-3.0-only" -LICENSE:dictionaries/el-polyton = "GPL-2.0-only" -LICENSE:dictionaries/el = "GPL-2.0-only" -LICENSE:dictionaries/en-AU = "LGPL-2.0-only" -LICENSE:dictionaries/en-CA = "MIT AND LicenseRef-BSD" -LICENSE:dictionaries/en-GB = "LGPL-2.0-only" -LICENSE:dictionaries/en-US = "MIT AND LicenseRef-BSD" -LICENSE:dictionaries/en-ZA = "LGPL-2.1" -LICENSE:dictionaries/eo = "GPL-2.0-only" -LICENSE:dictionaries/es = "GPL-3.0-only" -LICENSE:dictionaries/et = "LGPL-2.1-only" -LICENSE:dictionaries/eu = "GPL-2.0-only" -LICENSE:dictionaries/fo = "GPL-2.0-only" -LICENSE:dictionaries/fr = "MPL-2.0" -LICENSE:dictionaries/fur = "GPL-2.0-only" -LICENSE:dictionaries/fy = "GPL-3.0-only" -LICENSE:dictionaries/ga = "GPL-2.0-only" -LICENSE:dictionaries/gd = "GPL-3.0-only" -LICENSE:dictionaries/gl = "GPL-3.0-only" -LICENSE:dictionaries/he = "AGPL-3.0-only" -LICENSE:dictionaries/hr = "GPL-3.0-only" -LICENSE:dictionaries/hu = "GPL-2.0-only" -LICENSE:dictionaries/hy-arevela = "GPL-2.0-only" -LICENSE:dictionaries/hy-arevmda = "GPL-2.0-only" -LICENSE:dictionaries/ia = "GPL-3.0-only" -LICENSE:dictionaries/ie = "Apache-2.0" -LICENSE:dictionaries/is = "CC-BY-SA-3.0 AND CC-BY-4.0" -LICENSE:dictionaries/it = "GPL-3.0-only" -LICENSE:dictionaries/ko = "GPL-2.0-only AND LGPL-2.1-only AND MPL-1.1" -LICENSE:dictionaries/la = "GPL-3.0-only" -LICENSE:dictionaries/lb = "EUPL-1.1" -LICENSE:dictionaries/lt = "LicenseRef-Other" -LICENSE:dictionaries/ltg = "LGPL-2.1-only" -LICENSE:dictionaries/lv = "LGPL-2.1-only" -LICENSE:dictionaries/mk = "GPL-3.0-only" -LICENSE:dictionaries/mn = "GPL-2.0-only" -LICENSE:dictionaries/nb = "GPL-2.0-only" -LICENSE:dictionaries/nds = "GPL-2.0-only" -LICENSE:dictionaries/ne = "LGPL-2.1-only" -LICENSE:dictionaries/nl = "LicenseRef-BSD" -LICENSE:dictionaries/nn = "GPL-2.0-only" -LICENSE:dictionaries/pl = "GPL-3.0-only" -LICENSE:dictionaries/pt-BR = "LGPL-2.1" -LICENSE:dictionaries/pt = "GPL-2.0-only" -LICENSE:dictionaries/ro = "GPL-2.0-only" -LICENSE:dictionaries/ru = "LicenseRef-BSD" -LICENSE:dictionaries/rw = "GPL-3.0-only" -LICENSE:dictionaries/sk = "GPL-2.0-only" -LICENSE:dictionaries/sl = "GPL-2.0-only" -LICENSE:dictionaries/sr-Latn = "LGPL-3.0" -LICENSE:dictionaries/sr = "LGPL-3.0" -LICENSE:dictionaries/sv = "LGPL-3.0" -LICENSE:dictionaries/tr = "MIT" -LICENSE:dictionaries/uk = "GPL-2.0" -LICENSE:dictionaries/vi = "GPL-3.0" +# The single package ships all dictionaries, so it carries all their licenses +LICENSE = "${@' AND '.join(sorted(set(['(%s)' % l if ' ' in l else l for l in (d.getVarFlags('HUNSPELL_DICT_LICENSE') or dict()).values()])))}" +HUNSPELL_DICT_LICENSE[bg] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[br] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[ca] = "GPL-2.0-only OR LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[ca-valencia] = "GPL-2.0-only OR LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[cs] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[da] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[de] = "GPL-2.0-only OR GPL-3.0-only" +HUNSPELL_DICT_LICENSE[de-AT] = "GPL-2.0-only OR GPL-3.0-only" +HUNSPELL_DICT_LICENSE[de-CH] = "GPL-2.0-only OR GPL-3.0-only" +HUNSPELL_DICT_LICENSE[el] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[el-polyton] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[en-AU] = "MIT AND LicenseRef-SCOWL" +HUNSPELL_DICT_LICENSE[en-CA] = "MIT AND LicenseRef-SCOWL" +HUNSPELL_DICT_LICENSE[en-GB] = "MIT AND LicenseRef-SCOWL" +HUNSPELL_DICT_LICENSE[en-US] = "MIT AND LicenseRef-SCOWL" +HUNSPELL_DICT_LICENSE[en-ZA] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[eo] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[es] = "GPL-3.0-only OR LGPL-3.0-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[et] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[eu] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[fo] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[fr] = "MPL-2.0" +HUNSPELL_DICT_LICENSE[fur] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[fy] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[ga] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[gd] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[gl] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[he] = "AGPL-3.0-only" +HUNSPELL_DICT_LICENSE[hr] = "LGPL-2.1-only OR SISSL" +HUNSPELL_DICT_LICENSE[hu] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[hy-arevela] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[hy-arevmda] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[ia] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[ie] = "Apache-2.0" +HUNSPELL_DICT_LICENSE[is] = "CC-BY-SA-3.0 AND CC-BY-4.0" +HUNSPELL_DICT_LICENSE[it] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[ko] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[la] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[lb] = "EUPL-1.1" +HUNSPELL_DICT_LICENSE[lt] = "BSD-3-Clause" +HUNSPELL_DICT_LICENSE[ltg] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[lv] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[mk] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[mn] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[nb] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[nds] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[ne] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[nl] = "BSD-3-Clause OR CC-BY-3.0" +HUNSPELL_DICT_LICENSE[nn] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[pl] = "GPL-3.0-only OR LGPL-3.0-only OR MPL-2.0" +HUNSPELL_DICT_LICENSE[pt] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[pt-BR] = "LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[ro] = "GPL-2.0-only OR LGPL-2.1-only OR MPL-1.1" +HUNSPELL_DICT_LICENSE[ru] = "LicenseRef-hunspell-ru" +HUNSPELL_DICT_LICENSE[rw] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[sk] = "GPL-2.0-only" +HUNSPELL_DICT_LICENSE[sl] = "GPL-3.0-only OR LGPL-2.1-only" +HUNSPELL_DICT_LICENSE[sr] = "LGPL-3.0-only" +HUNSPELL_DICT_LICENSE[sr-Latn] = "LGPL-3.0-only" +HUNSPELL_DICT_LICENSE[sv] = "LGPL-3.0-only" +HUNSPELL_DICT_LICENSE[tr] = "MIT" +HUNSPELL_DICT_LICENSE[uk] = "GPL-3.0-only" +HUNSPELL_DICT_LICENSE[vi] = "GPL-3.0-only" +NO_GENERIC_LICENSE[SCOWL] = "dictionaries/en-US/license" +NO_GENERIC_LICENSE[hunspell-ru] = "dictionaries/ru/license" + LIC_FILES_CHKSUM = " \ file://dictionaries/bg/license;md5=ab14e2ded1a43b84be9aba2be64b9814 \ file://dictionaries/br/license;md5=2e046c64edc0a4e47fb3ea614e6c82c4 \ From patchwork Thu Nov 12 21:07:49 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khem Raj X-Patchwork-Id: 103927 Received: from mail-dl1-f45.google.com (mail-dl1-f45.google.com [74.125.82.45]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.6134.1794517677088387760 for ; Thu, 12 Nov 2026 13:07:57 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20260707 header.b=eL/5ITuY; spf=pass (domain: gmail.com, ip: 74.125.82.45, mailfrom: raj.khem@gmail.com) Received: by mail-dl1-f45.google.com with SMTP id a92af1059eb24-1438d9363fbso182402c88.0 for ; Thu, 12 Nov 2026 13:07:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1794517676; x=1795122476; darn=lists.openembedded.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=YCvS46DrJeXIKTFAwpqEJINUMpcfNVpLRUTU8KJ3iaI=; b=eL/5ITuYfy1F/mLhOvw9KRpKbRYkg6y40C/it95nvhDT8wcyYHK4UqEbsh355G4nvW ipVhj9s/4+mLyNKqzJd4eqmwH9Yx4oPhTtEu5Sgbq9WA+viTC85lwre+uulvAwNFk1/0 2cV0RT6JtMh0bQSbMIglN2mQwP1jUWelubBWKZpMy5LtbF4U1NJMpLZQFY0pl3ED6Wet JURRmCFSq7eC/CF0pM/dTxdLLye61gCXiGGq79gzC+oo/WBtMj4UxJtzdIqC3ht5gmjL SZbK0RbQsi2RB5vrpZ6XFkt7St+AeLGEdMwgqVZvkYFQu7B86DT1XI7QQEi5BQ+C0rEs utXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1794517676; x=1795122476; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=YCvS46DrJeXIKTFAwpqEJINUMpcfNVpLRUTU8KJ3iaI=; b=F23qFXGh8GTUvpDdaTi5SXVAi9kgibNmaBq2mzeGWrrZMReKa8stTxd26nrL/EgIO0 UT91XRMeiW2eL0HwRbS4FDgbAVdSJ1FffI+pD//u1z8F4+QAI7dyvXs2sQgdcl1mBqjG gVpnAul4ZZN3JruHn5QMuXc9tq0j0L691dQM7IiFxwBPnZ7s3AYOm/8xarWQpXfwAH51 ib3Su0imsPm7lBoRq8PeDddKmlwgp7b2Ae8kkl//cKU8cn8qbJChtpOBlM4OEjvt22GK VgDkc6Y29++E8Ev01dv8QglZdYphPcl9P0J1GrJC5uAoRNAoqCrDQjL8Fi5WUxCtaugX nEWA== X-Gm-Message-State: APuU4Z82R/wNGuRPaYwnMtGRIY/+ylpYriv9LK/1CAaDlPqvoRMPfZjn RnK6VrVLs4/VrW+9VqSt5sT/ZCvqcjo1EX5VY5iJFW5USu5y2Hf9voG4G6fXddNx1tI= X-Gm-Gg: AYBFou2h3iziADr83YOl7Z366HqwHU3W22O78BvCgNhu2sy8baQWPxyyLuqaKR6yUFJ nQBuGbQGFqkBj8Y+XBU13e/zhjDILqDSeE+j/gdDoQwdSVKG3eE1PLmAmblEMWSGaikYpnkwLwG FHaE33G6NJTOUzIZOZWtI+PiPKYCnVqVcW8dpfcUiD0NoL8WyNO2N4Nr+fCZ04H5gG64osnkk1N gZO/3n30PkOSa06ac8yTUve5QjAM1YilR5EyHhof/TUykNXfmQvQGcHHCLx2oA6/yNpXutoPIv5 srs4qSdvyX+0E2/CoeP/fyeUuZC+LOPtbrAT1ICG84JH9KC8R+uji2h1apnBsEwIc2W0++82CJ7 zsRllcGd8IzC3HR9+EInYXuOyRYZ5f53WTRt3ti4JR66dud3rLJEbdq7+a+GaU05SVOzs3lLsAo YGIZXZVW/aqkAlhJ5MqhjUKxCRlwhDK/b66ysKC5kfTv980l0qfOSiEdvBA/U0QGkP+zUHTQ7ee 4KEFwPbqRpB+qGxL11AzZPmMMNxd1Qi6IsV16kPc99Y83ZCAuRDExWCA8Q5sFOVlpjYx51W+MDS 2PjwBjV9g2H8S0RFFXIlwCnHyB9REgTWDkbblVKOsWXxzBqgDOiGeVbyys/ARkZSDdLIF1e6SoL F9JPPIump+XWenv925OIJbGYnXK62tkKAEUCbm1oAvkE6OGhjRv4oRY9Jmh91pATGC7zoZ8ECr+ xiFQ9XQ0L/4aPHUSuz1ECR5B0nAPS+t0q+plQfLycN8n3sdxJ14DLFmQhABvO3/Y+qNZ3eTbj+R YRpl+jTWRBvXpQzP/b/tT8fEnJm7M+6treDp9soGo+H0UwZu7YP8oD2Q3el8q4zD/5WIIBXYgwK jwyw X-Received: by 2002:a05:701b:4648:b0:1ad:1574:aa9d with SMTP id a92af1059eb24-1b502f8a3femr610962c88.0.1794517676243; Thu, 12 Nov 2026 13:07:56 -0800 (PST) Return-Path: Received: from apollo.tail3ccdd3.ts.net ([147.160.63.35]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-1b5031468b7sm1800274c88.5.2026.11.12.13.07.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Nov 2026 13:07:55 -0800 (PST) From: Khem Raj X-Google-Original-From: Khem Raj To: openembedded-devel@lists.openembedded.org Cc: Khem Raj Subject: [meta-oe][PATCH 3/3] gperftools: Drop obsolete musl patches Date: Thu, 12 Nov 2026 13:07:49 -0800 Message-ID: <20261112210749.875657-3-khem.raj@oss.qualcomm.com> X-Mailer: git-send-email 2.56.1 In-Reply-To: <20261112210749.875657-1-khem.raj@oss.qualcomm.com> References: <20261112210749.875657-1-khem.raj@oss.qualcomm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by lin-tor-korg-lkml-alma10-1 with HTTPS for ; Thu, 12 Nov 2026 21:08:03 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/132216 ppc-musl.patch no longer applies after the 2.19.3 upgrade, failing do_patch on musl. Upstream fixed PT_NIP handling for non-glibc in 122d6e7885 and 17ff2e676b, and elf_mem_image.cc no longer uses __WORDSIZE, so drop it and the elf_mem_image patch. Replace the Makefile.am patch that stopped building the test programs with the --disable-tests configure option added upstream. AI-Generated: Uses Claude Code Signed-off-by: Khem Raj --- ...-elf_mem_image.cc-fix-build-for-musl.patch | 35 ---------- ...sable-building-noinst-tests-for-musl.patch | 32 --------- .../gperftools/gperftools/ppc-musl.patch | 65 ------------------- .../gperftools/gperftools_2.19.3.bb | 8 +-- 4 files changed, 2 insertions(+), 138 deletions(-) delete mode 100644 meta-oe/recipes-support/gperftools/gperftools/0002-src-base-elf_mem_image.cc-fix-build-for-musl.patch delete mode 100644 meta-oe/recipes-support/gperftools/gperftools/0003-Makefile.am-disable-building-noinst-tests-for-musl.patch delete mode 100644 meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch diff --git a/meta-oe/recipes-support/gperftools/gperftools/0002-src-base-elf_mem_image.cc-fix-build-for-musl.patch b/meta-oe/recipes-support/gperftools/gperftools/0002-src-base-elf_mem_image.cc-fix-build-for-musl.patch deleted file mode 100644 index eae71be8fc..0000000000 --- a/meta-oe/recipes-support/gperftools/gperftools/0002-src-base-elf_mem_image.cc-fix-build-for-musl.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 02ff9fcc74ba64aeb22fcc553f30657bd2b62930 Mon Sep 17 00:00:00 2001 -From: Chen Qi -Date: Wed, 26 Feb 2025 23:46:56 -0800 -Subject: [PATCH 2/3] src/base/elf_mem_image.cc: fix build for musl - -Include header file for musl to avoid error below: - - error: '__WORDSIZE' was not declared in this scope - -Upstream-Status: Pending - -Signed-off-by: Chen Qi ---- - src/base/elf_mem_image.cc | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/base/elf_mem_image.cc b/src/base/elf_mem_image.cc -index d2ca1a5..89dc0e4 100644 ---- a/src/base/elf_mem_image.cc -+++ b/src/base/elf_mem_image.cc -@@ -38,6 +38,11 @@ - - #ifdef HAVE_ELF_MEM_IMAGE // defined in elf_mem_image.h - -+// for musl __WORDSIZE definition -+#if !defined(__GLIBC__) -+#include -+#endif -+ - #include // for size_t, ptrdiff_t - #include "base/logging.h" - --- -2.25.1 - diff --git a/meta-oe/recipes-support/gperftools/gperftools/0003-Makefile.am-disable-building-noinst-tests-for-musl.patch b/meta-oe/recipes-support/gperftools/gperftools/0003-Makefile.am-disable-building-noinst-tests-for-musl.patch deleted file mode 100644 index 01ecdd5336..0000000000 --- a/meta-oe/recipes-support/gperftools/gperftools/0003-Makefile.am-disable-building-noinst-tests-for-musl.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 3bb5707c6a6a0d2061c79c556cbe4a87efea02ab Mon Sep 17 00:00:00 2001 -From: Chen Qi -Date: Thu, 27 Feb 2025 00:44:34 -0800 -Subject: [PATCH 3/3] Makefile.am: disable building noinst tests for musl - -Build fails for musl + qemuppc64 about ld failing to find -symbols in libucontext. Until a real solution is found, -we need this workaround. - -Upstream-Status: Inappropriate [OE Specific] - -Signed-off-by: Chen Qi ---- - Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index 9fa24c0..7dd1b60 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -938,7 +938,7 @@ endif WITH_HEAP_PROFILER_OR_CHECKER - # This should always include $(TESTS), but may also include other - # binaries that you compile but don't want automatically installed. - # We'll add to this later, on a library-by-library basis --noinst_PROGRAMS += $(TESTS) -+#noinst_PROGRAMS += $(TESTS) - - # http://linux.die.net/man/1/pkg-config, http://pkg-config.freedesktop.org/wiki - pkgconfigdir = $(libdir)/pkgconfig --- -2.25.1 - diff --git a/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch b/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch deleted file mode 100644 index e5061840bc..0000000000 --- a/meta-oe/recipes-support/gperftools/gperftools/ppc-musl.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 1526be49b8c49719459ef15c93090fdbdc10f3cb Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 13 Mar 2021 00:42:25 -0800 -Subject: [PATCH 1/3] Compatibility fixes for musl. - -Upstream-Status: Pending - -Signed-off-by: Chen Qi ---- - src/getpc.h | 4 ++++ - src/stacktrace_powerpc-linux-inl.h | 8 ++++++-- - 2 files changed, 10 insertions(+), 2 deletions(-) - -diff --git a/src/getpc.h b/src/getpc.h -index c14c9d0..cf4866b 100644 ---- a/src/getpc.h -+++ b/src/getpc.h -@@ -61,6 +61,10 @@ - typedef ucontext ucontext_t; - #endif - -+#if defined(__powerpc__) && !defined(PT_NIP) -+#define PT_NIP 32 -+#endif -+ - namespace tcmalloc { - namespace getpc { - -diff --git a/src/stacktrace_powerpc-linux-inl.h b/src/stacktrace_powerpc-linux-inl.h -index 883e7d2..212bd25 100644 ---- a/src/stacktrace_powerpc-linux-inl.h -+++ b/src/stacktrace_powerpc-linux-inl.h -@@ -186,7 +186,7 @@ static int GET_STACK_TRACE_OR_FRAMES { - ucontext_t uc; - // We don't care about the rest, since the IP value is at 'uc' field. - } *sigframe = reinterpret_cast(current); -- result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[PT_NIP]; -+ result[n] = (void*) sigframe->uc.uc_mcontext.gp_regs[32]; - } - #else - if (sigtramp32_vdso && (sigtramp32_vdso == current->return_addr)) { -@@ -196,7 +196,7 @@ static int GET_STACK_TRACE_OR_FRAMES { - mcontext_t mctx; - // We don't care about the rest, since IP value is at 'mctx' field. - } *sigframe = reinterpret_cast(current); -- result[n] = (void*) sigframe->mctx.gregs[PT_NIP]; -+ result[n] = (void*) sigframe->mctx.gregs[32]; - } else if (sigtramp32_rt_vdso && (sigtramp32_rt_vdso == current->return_addr)) { - struct rt_signal_frame_32 { - char dummy[64 + 16]; -@@ -204,7 +204,11 @@ static int GET_STACK_TRACE_OR_FRAMES { - ucontext_t uc; - // We don't care about the rest, since IP value is at 'uc' field.A - } *sigframe = reinterpret_cast(current); -+#if defined(__GLIBC__) - result[n] = (void*) sigframe->uc.uc_mcontext.uc_regs->gregs[PT_NIP]; -+#else -+ result[n] = (void*) sigframe->uc.uc_mcontext.gregs[32]; -+#endif - } - #endif - --- -2.25.1 - diff --git a/meta-oe/recipes-support/gperftools/gperftools_2.19.3.bb b/meta-oe/recipes-support/gperftools/gperftools_2.19.3.bb index 82a038b464..22cb19c0bd 100644 --- a/meta-oe/recipes-support/gperftools/gperftools_2.19.3.bb +++ b/meta-oe/recipes-support/gperftools/gperftools_2.19.3.bb @@ -13,12 +13,6 @@ DEPENDS:append:libc-musl = " libucontext" SRCREV = "f21715726a385adba7ce3a9db2df6e18b5b6bc5c" SRC_URI = "git://github.com/gperftools/gperftools;branch=master;protocol=https;tag=gperftools-${PV}" -SRC_URI:append:libc-musl = " \ - file://ppc-musl.patch \ - file://0002-src-base-elf_mem_image.cc-fix-build-for-musl.patch \ - file://0003-Makefile.am-disable-building-noinst-tests-for-musl.patch \ - " - inherit autotools @@ -36,6 +30,8 @@ COMPATIBLE_HOST:riscv32 = "null" ARM_INSTRUCTION_SET:armv5 = "arm" ARM_INSTRUCTION_SET:toolchain-clang:arm = "arm" +# Test programs fail to link against libucontext on musl + ppc64 +EXTRA_OECONF:append:libc-musl = " --disable-tests" EXTRA_OECONF:append:libc-musl:powerpc64le = " --disable-cpu-profiler" EXTRA_OECONF:append:libc-musl:powerpc = " --disable-cpu-profiler" PACKAGECONFIG ?= "libunwind static"