From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7051880287817433088 X-Received: by 2002:a05:600c:4f08:: with SMTP id l8mr1698346wmq.59.1641893827259; Tue, 11 Jan 2022 01:37:07 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a5d:53d2:: with SMTP id a18ls63658wrw.1.gmail; Tue, 11 Jan 2022 01:37:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJzaD+79/hvRKfh3O22+kdAspRgqveyFL9bjhVzuPT7cw/pyowmg5r+YwG04zySx7z3ydqtR X-Received: by 2002:adf:e90d:: with SMTP id f13mr3181659wrm.496.1641893826306; Tue, 11 Jan 2022 01:37:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1641893826; cv=none; d=google.com; s=arc-20160816; b=nqFopDIq+CNLky0/WFyrUPnBEb9I+FglzuX10OdcznLxg+lwz9sBuiQhtQ8jKKGVzC zuAUJrFYkPCAu6/SdHh3Uzn2xj8IKngHWrL4kZMcQ39tC4PjOnjh7jOZD5y+ib78WWKp oUK7QYDEDRzjIjQMKpjZ3VpSJt2u/zdWyq4XVP/sc/D0YKnNuBUNFywP6zyXddipR8pP A973vJlhaPjWOHRKQBi+X0Q2+wDkfNWxih/3uvusiKZxzePLviddbY6qz8hQN7IiyShP Sl06inbDDPstrftstVphwEg2UBgFDMltahKxg6K6RmWML51Gf8U5jcEgjcrgUpupMFFf p3bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from; bh=Dx5U3sEKvxvyDIpche2UbFQcBgUzmV8TXIUZkSE0jUw=; b=cyLcXhw3qpTSbX8Bfy7dmxTYyOaREH1wdNEYmS/zb+xs4caLVWpYJNZ+PHnRSZOm4v fbYkNTRbUg0Cz9xE4hcEd//97OBBoL2W3lolcoacGP447koaja1aK7e3OUDOgL89+FYK aeEYcQkwfKLMRz2n4LThXurG0gIeoXOshsKMLgvT19+ZZmd6DpyHdNy0H/OtDmTDRGq3 Cv/ujSr5CqWqgj8AfHlKQR67UfvXExaFeOBvcocS9ga0+w6RRcSAFA8TUWb0NssMjaGP UOvPP4jQbgnJHVOXtKupv6QBQs8kHuIM8S3iFiY3gMFw+RlPiOkPj6T1smfQiEPgF7r/ YCkQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id g9si333883wrd.4.2022.01.11.01.37.06 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 11 Jan 2022 01:37:06 -0800 (PST) Received-SPF: pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of amikan@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=amikan@ilbers.de Received: from localhost.localdomain (mm-239-38-214-37.mgts.dynamic.pppoe.byfly.by [37.214.38.239] (may be forged)) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8) with ESMTPSA id 20B9b3DP022450 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 11 Jan 2022 10:37:05 +0100 From: Anton Mikanovich To: isar-users@googlegroups.com Cc: Anton Mikanovich Subject: [PATCH 1/2] dpkg: Allow parallel build of different package versions Date: Tue, 11 Jan 2022 12:36:55 +0300 Message-Id: <20220111093656.220514-2-amikan@ilbers.de> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220111093656.220514-1-amikan@ilbers.de> References: <20220111093656.220514-1-amikan@ilbers.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: m1H3Y7CPD6kY To be able to use different versions of the same package for the different machines/multiconfigs we need to split workdir mount points and sstate manifests based on package version. Signed-off-by: Anton Mikanovich --- meta/classes/dpkg-base.bbclass | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index cb5ce4a..8850544 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -158,8 +158,8 @@ def get_package_srcdir(d): return s # Each package should have its own unique build folder, so use -# recipe name as identifier -PP = "/home/builder/${PN}" +# recipe name and version as identifier +PP = "/home/builder/${P}" PPS ?= "${@get_package_srcdir(d)}" # Empty do_prepare_build() implementation, to be overwritten if needed @@ -221,6 +221,9 @@ do_dpkg_build[cleandirs] += "${DPKG_SSTATE}" do_dpkg_build[sstate-plaindirs] = "${DPKG_SSTATE}" do_dpkg_build[sstate-interceptfuncs] = "dpkg_build_sstate_prepare" +# Allow parallel build of different versions +SSTATE_MANFILEPREFIX .= "-${PV}" + dpkg_build_sstate_prepare() { test -n "$(find ${S}/.. -maxdepth 1 -name '*.deb' -print -quit)" && ln -f ${S}/../*.deb -t ${DPKG_SSTATE} -- 2.25.1