From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6488313435861811200 X-Received: by 10.28.91.79 with SMTP id p76mr1104907wmb.18.1511170631393; Mon, 20 Nov 2017 01:37:11 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 10.28.125.198 with SMTP id y189ls815857wmc.8.canary-gmail; Mon, 20 Nov 2017 01:37:11 -0800 (PST) X-Google-Smtp-Source: AGs4zMbfKpM+XlleJJjJQ/KVlOqN6QwSfJcSJ/OcNnuMrn2xfcXIJo7F9jE/VUhnO4TfQ4Tg/Smv X-Received: by 10.28.189.85 with SMTP id n82mr811315wmf.23.1511170631018; Mon, 20 Nov 2017 01:37:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511170630; cv=none; d=google.com; s=arc-20160816; b=wH3wpmRRkNIpgdE9cqumDp5l4HsMseT5QqtRBaFOsb2q40b78AKNg94/GLNHkVswyp iD1h5PMJhtUtgJio3i3+CDjpTLsAftM26OT4nTskhUV6XmLIOV3+f7GlXGEpqQWNBCfi 3JHwc9W7gBIswWD395RimDBF17JqgTQmkd0o0TvHrBg308P916AOe9QbVOo0PTq4LXJL lsDOQwmECDvtfD/M/4COtjGybycN/D0svN5PwltTlKUXyYr7rfhTu8/sz39/9E4+NQHr m09gFxt2XeQ5IM8p9lE68BBjTZc8tjLVirrQyC8rjRAA188qA8AV/NTQ129/4qn7XQHC G2QQ== 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:subject:cc:to:from:date:arc-authentication-results; bh=hPPxEJjO2NRVLPxMgeyzdcjXqh5UFylvv1fVsXOwPeE=; b=R1ZZsj3Dn71ygpLSivA6vW0jDUDYj4hY4tce4xWrIPGEwLH34SqVY7DIxqb/WXaM7+ KF1tiENNWpBr0VkKEGEpvBCDXHCGIkIu3hSnKoNL8uC041pX0DbwOXG3BaosYHMZIzPv VmaZzjZh4gIu94uaFyiNaujm7Q6/Ah8JxscHsu2zCqOvyQNbb2FFBYBMbDi9VVpsmbdp A+S0YSXuglhPOG22ezTttppAD9LGmBQ4S95xVdX/5czTTf+i74xSNxgljunYdtqYVx0t gayh/F9qGa5zR7J/O/gGEqGXrNHrZJKB1gZlw8NjjpHio2tW39jkWUO209dMZIAQH3ec Pxtg== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Return-Path: Received: from goliath.siemens.de (goliath.siemens.de. [192.35.17.28]) by gmr-mx.google.com with ESMTPS id a2si448640wmg.0.2017.11.20.01.37.10 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 20 Nov 2017 01:37:10 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) client-ip=192.35.17.28; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=henning.schild@siemens.com Received: from mail3.siemens.de (mail3.siemens.de [139.25.208.14]) by goliath.siemens.de (8.15.2/8.15.2) with ESMTPS id vAK9bAnr030044 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 20 Nov 2017 10:37:10 +0100 Received: from md1em3qc ([139.25.68.40]) by mail3.siemens.de (8.15.2/8.15.2) with ESMTP id vAK9bArV015612; Mon, 20 Nov 2017 10:37:10 +0100 Date: Mon, 20 Nov 2017 10:37:28 +0100 From: Henning Schild To: "[ext] Christian Storm" Cc: Subject: Re: [PATCH] dpkg-base: mount git source folder into buildchroot Message-ID: <20171120103728.08714150@md1em3qc> In-Reply-To: <20171114164844.16899-1-christian.storm@siemens.com> References: <20171114164844.16899-1-christian.storm@siemens.com> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TUID: bzIsCoTAZrUc Am Tue, 14 Nov 2017 17:48:44 +0100 schrieb "[ext] Christian Storm" : > When building a Debian source package with source/format "3.0 (git)", > the git binary is used to bundle the source. For being able to do so, > /tmp/downloads/git/ needs to be mounted into the > buildchroot as .git/objects/info/alternates refers to it. > > Signed-off-by: Christian Storm > --- > meta/classes/dpkg-base.bbclass | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/meta/classes/dpkg-base.bbclass > b/meta/classes/dpkg-base.bbclass index 35af6d5..a98e690 100644 > --- a/meta/classes/dpkg-base.bbclass > +++ b/meta/classes/dpkg-base.bbclass > @@ -20,14 +20,18 @@ dpkg_runbuild() { > # Wrap the function dpkg_runbuild with the bind mount for buildroot > do_build() { > mkdir -p ${BUILDROOT} > - sudo mount --bind ${WORKDIR} ${BUILDROOT} > + [ ! -d ${BUILDCHROOT_DIR}/${GITDIR} ] && sudo install -d -m 755 > ${BUILDCHROOT_DIR}/${GITDIR} This "mkdir" should probably be done in buildchroot:do_build, maybe with [dirs]. The current implementation has a race and the mkdir could also be done without condition, since install would not fail anyways. > _do_build_cleanup() { > ret=$? > sudo umount ${BUILDROOT} 2>/dev/null || true > sudo rmdir ${BUILDROOT} 2>/dev/null || true > + sudo umount ${BUILDCHROOT_DIR}/${GITDIR} 2>/dev/null || true > + sudo rmdir ${BUILDCHROOT_DIR}/${GITDIR} 2>/dev/null || true The rmdir is not really needed, maybe [dirs] will handle it. Henning > (exit $ret) || bb_exit_handler > } > trap '_do_build_cleanup' EXIT > + sudo mount --bind ${WORKDIR} ${BUILDROOT} > + sudo mount --bind ${GITDIR} ${BUILDCHROOT_DIR}/${GITDIR} > dpkg_runbuild > _do_build_cleanup > }