From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6566555412143800320 X-Received: by 2002:a50:fc04:: with SMTP id i4-v6mr1289307edr.10.1528895327791; Wed, 13 Jun 2018 06:08:47 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:aa7:d0d5:: with SMTP id u21-v6ls1892487edo.5.gmail; Wed, 13 Jun 2018 06:08:47 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLyX0eFt+X0W2nzNXrSwtObR8OYIBpLzqAO5lYTXBmS/S8W3PVfEfUceVXt8X2xPCJuG/oe X-Received: by 2002:a50:fb0e:: with SMTP id d14-v6mr1281545edq.1.1528895327478; Wed, 13 Jun 2018 06:08:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528895327; cv=none; d=google.com; s=arc-20160816; b=eHfUfdFaIRAl1iO98Vs+4jRd7osaWkjbZyuOWA+K6/Yh0yM8RczlOekygKLDFUjltq GqhdTK+dKRc1WqdlXEOlEFmCZLoOYtb4HZlXulsA7SQK4pV3FOHnNjtVUm40GCwOOTaZ eR9iBMsNpTl3WXatQ5WRJmRjom3/nPGjlNQiVg7uSNjOC+dzRSMbEnDCugRog9NZ2aQs U+bZHP5MW52LJaCv185symvoVyUBQt7uvyNZhUc5PHZLOVYzN6yVFV/S030KwAbst8OK tVqWCeloEGLtkjL3Rzh6aDni7QQH5eJiyfaX3qFO4bxHlr1gniKYMzFm+ZHN/agWY/MB dOUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=AT4j+dc40oCRZGesgbgt3sFxXcumyuvOkc4GiPStdCo=; b=HVBsTa2HRvz0T2dexYYaPYj494I0mYuk2J7Fw9UQO6bPLZt9HlWMsFtNDnyvR3HHql +wLdzEbYU+XzKjWNTD9bR67aHPc0DxHDcn9zUg0jLNUEWKKhSjP2wODwEL9sa95cTERV 4IVAAdjgFYvjvH5o31ZZWUFYdeTGkMhYvDgh5MCPKM/yCm6Y1W+XVlOiyyvOe2WcqX2A 9jH2SZjAFRwdksWS/qqHeVWYnHCYcgZ++03G3aROj4MXnNpwBujsYI0qOzM949jJExYd RYvLrvgM3mIjm7D/NgSR0S4SkAO72ITlv2F3j5LRucCYywz36IKc13Q4Lhv4hzjLlbJa pHjQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=asmirnov@ilbers.de Return-Path: Received: from aqmola.ilbers.de (aqmola.ilbers.de. [85.214.62.211]) by gmr-mx.google.com with ESMTPS id x7-v6si122410edh.5.2018.06.13.06.08.47 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Jun 2018 06:08:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) client-ip=85.214.62.211; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=asmirnov@ilbers.de Received: from azat.i.ilbers.de (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by aqmola.ilbers.de (8.14.4/8.14.4/Debian-4+deb7u1) with ESMTP id w5DD8P06030010 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT); Wed, 13 Jun 2018 15:08:37 +0200 From: Alexander Smirnov To: isar-users@googlegroups.com Cc: Alexander Smirnov Subject: [PATCH 7/9] classes/dpkg*: Drop hardcoded buildchroot blobs Date: Wed, 13 Jun 2018 15:08:05 +0200 Message-Id: <20180613130807.2461-8-asmirnov@ilbers.de> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20180613130807.2461-1-asmirnov@ilbers.de> References: <20180613130807.2461-1-asmirnov@ilbers.de> X-TUID: yEN3pvZt1lOI This patch makes possible to parametrize the chroot will be actually used by dpkg-base class. Signed-off-by: Alexander Smirnov --- meta/classes/dpkg-base.bbclass | 14 +++++++------- meta/classes/dpkg-raw.bbclass | 4 +++- meta/classes/dpkg.bbclass | 4 +++- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index 24fe2ca..0668e25 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -31,7 +31,7 @@ def get_package_srcdir(d): PP = "/home/builder/${PN}" PPS ?= "${@get_package_srcdir(d)}" -BUILDROOT = "${BUILDCHROOT_DIR}/${PP}" +BUILDROOT = "${ROOTFS_DIR}/${PP}" do_build[stamp-extra-info] = "${DISTRO}-${DISTRO_ARCH}" # default to "emtpy" implementation @@ -39,7 +39,7 @@ dpkg_runbuild() { die "This should never be called, overwrite it in your derived class" } -MOUNT_LOCKFILE = "${BUILDCHROOT_DIR}/mount.lock" +MOUNT_LOCKFILE = "${ROOTFS_DIR}/mount.lock" # Wrap the function dpkg_runbuild with the bind mount for buildroot do_build() { @@ -47,11 +47,11 @@ do_build() { sudo mount --bind ${WORKDIR} ${BUILDROOT} sudo flock ${MOUNT_LOCKFILE} -c ' \ - if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \ - mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt; \ - mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \ - mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev; \ - mount -t proc none ${BUILDCHROOT_DIR}/proc; \ + if ! grep -q ${ROOTFS_DIR}/isar-apt /proc/mounts; then \ + mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${ROOTFS_DIR}/isar-apt; \ + mount --bind ${DL_DIR} ${ROOTFS_DIR}/downloads; \ + mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${ROOTFS_DIR}/dev; \ + mount -t proc none ${ROOTFS_DIR}/proc; \ fi' dpkg_runbuild diff --git a/meta/classes/dpkg-raw.bbclass b/meta/classes/dpkg-raw.bbclass index 5c7be6b..1b661a7 100644 --- a/meta/classes/dpkg-raw.bbclass +++ b/meta/classes/dpkg-raw.bbclass @@ -9,6 +9,8 @@ MAINTAINER ?= "FIXME Unknown maintainer" # Add dependency from buildchroot creation do_build[depends] = "buildchroot:do_build" +ROOTFS_DIR = "${BUILDCHROOT_DIR}" + D = "${WORKDIR}/image/" # Populate folder that will be picked up as package @@ -59,5 +61,5 @@ addtask deb_package_conffiles after do_deb_package_prepare before do_build dpkg_runbuild() { sudo chown -R root:root ${D}/DEBIAN/ - sudo chroot ${BUILDCHROOT_DIR} dpkg-deb --build ${PP}/image ${PP} + sudo chroot ${ROOTFS_DIR} dpkg-deb --build ${PP}/image ${PP} } diff --git a/meta/classes/dpkg.bbclass b/meta/classes/dpkg.bbclass index c483fe2..195174a 100644 --- a/meta/classes/dpkg.bbclass +++ b/meta/classes/dpkg.bbclass @@ -6,8 +6,10 @@ inherit dpkg-base # Add dependency from buildchroot creation do_build[depends] = "buildchroot:do_build" +ROOTFS_DIR = "${BUILDCHROOT_DIR}" + # Build package from sources using build script dpkg_runbuild() { E="${@ bb.utils.export_proxies(d)}" - sudo -E chroot ${BUILDCHROOT_DIR} /build.sh ${PP}/${PPS} + sudo -E chroot ${ROOTFS_DIR} /build.sh ${PP}/${PPS} } -- 2.1.4