From patchwork Tue Sep 7 08:45:54 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrian Freihofer X-Patchwork-Id: 1525176 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=googlegroups.com header.i=@googlegroups.com header.a=rsa-sha256 header.s=20210112 header.b=Eac2ac1d; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20210112 header.b=l5mysLM3; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=googlegroups.com (client-ip=2a00:1450:4864:20::338; helo=mail-wm1-x338.google.com; envelope-from=swupdate+bncbcx6venntaprbton3seqmgqepfzpmjq@googlegroups.com; receiver=) Received: from mail-wm1-x338.google.com (mail-wm1-x338.google.com [IPv6:2a00:1450:4864:20::338]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4H3f4g0lJKz9sXk for ; Tue, 7 Sep 2021 18:46:09 +1000 (AEST) Received: by mail-wm1-x338.google.com with SMTP id x10-20020a7bc76a000000b002f8cba3fd65sf682890wmk.2 for ; Tue, 07 Sep 2021 01:46:09 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1631004366; cv=pass; d=google.com; s=arc-20160816; b=qB6Gi+kPDJ9ARc+YXBbCo5j3U0miasQSfR9lwhUfh/GbFfopPf4OWwdqwPYYzi1+r3 2Qw9kyLX4zQK5slbHHTS/pMG/m3/RU0JogcdsSyXiGu902QhG54rIND/yKg7xQqmeJX3 xl3o2RiXAm7MYFiIEYTuczP/c36XIZ4qcqXVQGJ5rxyocRHWtMe8GcL9VYEakNiDLfYg /c+XziYPWnVQpxtMf78c30ln+BNpr4JprXm4CKXCSgyFB9VOZkj2lS/XHbjCs8ZdXGLC ov+0P0JJHuTQGgv6DFVJnfp9y3lwr9rsOqhbibAnykCALukONyLyIkZwxLuCpNbOPWJ5 4BFw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:cc:to:from:sender:dkim-signature:dkim-signature; bh=C/y7EH1WC7JIg6NPE9BnqxLK99cWCEoWLtw4xssN7jo=; b=Godavpph0atJFIGZ8b6hB+bvRRBQtzEZTuB9FAcdHT3JRooqdlTzTuKwZ5NhhgRJ9b NvPP7TlCDf2IYt79jt9PS1atongKsXbFFJQUXmRgDSULTwNCOxzmxoO6MdnSSk4NeRdZ PxZnRrxNz//2YbFxJ7XeVnt8I6Twi7Ws+7mu/oC9bpAgFRwPfMT+xMwwB7wNwskbjWQ4 e6pVkBkr4xIN3mzBhtDkZPJQ5IQz2vCGeL2wv1ZrYau0UltE6s89V98us0hmH9TJNe9t ANKx/T+/YXsY4otKnu8l/+PsK6T9hdUSUY1RRFdvy+hppzpMuN8g+S9C03TNSRBwDjKr 54iQ== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mfA57w4X; spf=pass (google.com: domain of adrian.freihofer@gmail.com designates 2a00:1450:4864:20::635 as permitted sender) smtp.mailfrom=adrian.freihofer@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:mime-version :x-original-sender:x-original-authentication-results:precedence :mailing-list:list-id:list-post:list-help:list-archive :list-subscribe:list-unsubscribe; bh=C/y7EH1WC7JIg6NPE9BnqxLK99cWCEoWLtw4xssN7jo=; b=Eac2ac1dWI+beHFIlC8FGsdBhdcyc+YUhTjTGtKUPuWD9g5EKjLrpwUDuOD+Stzpug OU/uB9+nMdjHRdbHkfloIucGN1SJWS4Mprkqvzw9DaJWimJRLwT/wo1HIX6hkMBUE7RQ O1C9ZqeUM757NXr+lndSFwnj4W2+2fF3F0O147S/fcRqRthRWgwzeB5S27+g+tpillKQ k+NWvw6/AqhG9pI2/1NTgzfb+MSxk61P+LsW9r8TEDYECYQud6JrNNnfJ19gbJwUTRkR hVewYMD3/Om2qZw/xdseuapbqE0Hxt7vXH2Va3BFQ2UpRRRljbPFzsxM9fFmVcaCRjSN rZ2A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :list-post:list-help:list-archive:list-subscribe:list-unsubscribe; bh=C/y7EH1WC7JIg6NPE9BnqxLK99cWCEoWLtw4xssN7jo=; b=l5mysLM3I9ZESdr1fmlFwlc04sh0hzYn5NDNZRy8o2AhH3Wm1xU92JHRUk51qYFNCr Gvkwrdj/V+xbHPykIjfPqLVGfCwjoeY46T6tb4T7q44MNkPIUW5eCGehIRJTZ4YB2JDJ PiMs8W+LPpZwsZL9d8WC60z4dJ18tT2honCYxOp01T4G6fG07HOaPtvi6p4bvENxT+Ev qBmcklHRhh/jtZiqUicMeQ/7NynLBspfXC+Q76DKbOe2U0KvYpxnv+vSbLj+KP6aYwWV IsEjiPDDe0h+hXixyA/JvmeW1g/UPyx7faJE8KUm0d0lAK84MDsO06bamksIv+LZifUH QL4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=sender:x-gm-message-state:from:to:cc:subject:date:message-id :mime-version:x-original-sender:x-original-authentication-results :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post :list-help:list-archive:list-subscribe:list-unsubscribe; bh=C/y7EH1WC7JIg6NPE9BnqxLK99cWCEoWLtw4xssN7jo=; b=tbyRxXR8dzf2Y6PL0JdI7SDfk2hfWkRxiXz8TxwNg6BwdGBfb3tBHByZa7MNADPK8I ydzjybpwSgp0MVHSD9jWSr3YqTP8eBcZSjcfLSm4KdfWTzDHCxD4cVI8kPFe4VpIA8GJ uSk0vapvHvMxJuvCbQyU0XgbaLV11yBVE7k4dKvhFNc2AGMb4E/F3WQOdCmb3z0L28n0 twFbke4spo7yV2t3uKiW2zV5/ICtAcXpxrbwpikKhwfo0jQ5/c5wim/twrk9eOIn/M4O lZbq+2iVoziVYXkmViCMl20Qx9UV2D4QRTKgAJcyEvo2zHtubtdtpMjIXFvaDsxmRub0 uuVA== Sender: swupdate@googlegroups.com X-Gm-Message-State: AOAM531xee9RBvNNNuv87/BgnvPDn8sN3YXKc1lQV4kpVF6NJ8CyKO5/ pw3EUe0F5QkQMT0yQDhZlDY= X-Google-Smtp-Source: ABdhPJzM1NwOXI0jjMUaLFhveMODK5GyW9SK8k5coOxXHNtw+BVTbRJZKgQzMdO6I4A3Nnh5AbF7Xw== X-Received: by 2002:a5d:438a:: with SMTP id i10mr17836602wrq.285.1631004366061; Tue, 07 Sep 2021 01:46:06 -0700 (PDT) X-BeenThere: swupdate@googlegroups.com Received: by 2002:a05:600c:5120:: with SMTP id o32ls1119499wms.0.canary-gmail; Tue, 07 Sep 2021 01:46:05 -0700 (PDT) X-Received: by 2002:a1c:3b8a:: with SMTP id i132mr2759979wma.145.1631004365147; Tue, 07 Sep 2021 01:46:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631004365; cv=none; d=google.com; s=arc-20160816; b=nZC6AP1laZOgn7xBRhSOqZxTU1EonEopooOMvfsJRRTw/IvNFkeHHBmfEQwnKVHhc2 OZUtnMBJuBOXT6MNIbCPervz8fEcs8BKV5IASXExbE+57Xq+LweBtc8rhGgW80IpGHhU YkVhx/WzlDUawv1gnAWR4lgzBt99UkOXTiBr65R6TW48frTSkHsWDUiLtchiW7rMMmlj LsnRReV/VL4EptsossAf8HMkgBU/khJ2sWrCwL4khlK8T6v27tYSX/afktmn2Co619u5 1T34zsZQyqEVmAHUHruqlxim83w4b5rdd084Hg0WtRe/Hb/bRnXsfQW11ywVFp5hMGfD HbZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:dkim-signature; bh=nHZqJuFqMaiYT31rK4ajma3gKFY86oLQYaT+INM3qF0=; b=nIKGKFr1g0D6ofQsJbv5A8NlE1NIz8qQog6NLGRzcfsvDGMqvSY6VAmyookqKSaEUg dvA8meC/HcPE1gQYrbFFtksDh/mxjLuUoKQHPRAkk5Ps3Drrx6s24t9Z0P1I91BwtTOF seYqmaczX5o5kv3zXpADJB0U5nyv7iSAh6XjXncJXthfjz3AISI0gJ3hGC94u0Ol+wc3 PUdh+tkTfcfOmAACrucvaIP3UUEUaOGZ0Ocwa18FwG8E7lIGf/y6RuGbR7JjekTrEVaB GoE9ysWB7Qcp4q9rQq45wCrr/r//rHaMwqit1BMui2civNey0u/vz+i71J1eR6BV1PjL Zn3A== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mfA57w4X; spf=pass (google.com: domain of adrian.freihofer@gmail.com designates 2a00:1450:4864:20::635 as permitted sender) smtp.mailfrom=adrian.freihofer@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com. [2a00:1450:4864:20::635]) by gmr-mx.google.com with ESMTPS id g8si309697wrh.0.2021.09.07.01.46.05 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Sep 2021 01:46:05 -0700 (PDT) Received-SPF: pass (google.com: domain of adrian.freihofer@gmail.com designates 2a00:1450:4864:20::635 as permitted sender) client-ip=2a00:1450:4864:20::635; Received: by mail-ej1-x635.google.com with SMTP id x11so18283271ejv.0 for ; Tue, 07 Sep 2021 01:46:05 -0700 (PDT) X-Received: by 2002:a17:906:a0c:: with SMTP id w12mr17092436ejf.376.1631004364691; Tue, 07 Sep 2021 01:46:04 -0700 (PDT) Received: from md2ramxc.lan.ffah.ch ([62.32.0.69]) by smtp.gmail.com with ESMTPSA id bx14sm6102535edb.93.2021.09.07.01.46.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Sep 2021 01:46:04 -0700 (PDT) From: Adrian Freihofer To: swupdate@googlegroups.com Cc: Adrian Freihofer Subject: [swupdate] [meta-swupdate][PATCH dunfell+] swupdate-common: get do_swuimage vardeps Date: Tue, 7 Sep 2021 10:45:54 +0200 Message-Id: <20210907084554.2912694-1-adrian.freihofer@siemens.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 X-Original-Sender: adrian.freihofer@gmail.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mfA57w4X; spf=pass (google.com: domain of adrian.freihofer@gmail.com designates 2a00:1450:4864:20::635 as permitted sender) smtp.mailfrom=adrian.freihofer@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Precedence: list Mailing-list: list swupdate@googlegroups.com; contact swupdate+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: swupdate@googlegroups.com X-Google-Group-Id: 605343134186 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , Read all variables from sw-description file and add them to the vardeps of the do_swuimage task. Bitbake cannot know that the do_swuimage task which evaluates the templated sw-description file needs to be executed if a variable which is refered by the sw-description file but not by the recipe itself. --- classes/swupdate-common.bbclass | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/classes/swupdate-common.bbclass b/classes/swupdate-common.bbclass index dabd466..cb3f084 100644 --- a/classes/swupdate-common.bbclass +++ b/classes/swupdate-common.bbclass @@ -372,3 +372,26 @@ python do_swuimage () { swupdate_create_cpio(d, imgdeploydir, list_for_cpio) } + +# Read all variables from sw-description file and add them to the vardeps of the do_swuimage task. Bitbake +# cannot know that the do_swuimage task which evaluates the templated sw-description file needs to be executed +# if a variable which is refered by the sw-description file but not by the recipe itself. +def swupdate_find_bitbake_variables(d): + import re + + vardeps = '' + filespath = d.getVar('FILESPATH') + sw_desc_path = bb.utils.which(filespath, "sw-description") + try: + with open(sw_desc_path, "r") as f: + content_in = f.read() + var_re = r"@@([^@].+)@@" + m = re.findall(var_re, content_in) + if m: + vardeps = ' '.join(m) + except IOError: + # Since this runs at parse time where we don't know if this will be used later on we cannot threat this as an error + bb.debug(1, "Cannot find sw-description. Please extend FILESPATH (%s)" % filespath) + return vardeps + +do_swuimage[vardeps] ?= "${@swupdate_find_bitbake_variables(d)}"