From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6572049490740510720 X-Received: by 2002:adf:9d8f:: with SMTP id p15-v6mr298566wre.6.1530734755533; Wed, 04 Jul 2018 13:05:55 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a1c:9ec5:: with SMTP id h188-v6ls563512wme.9.canary-gmail; Wed, 04 Jul 2018 13:05:55 -0700 (PDT) X-Google-Smtp-Source: AAOMgpejNPFNun7UfVdHqu9V++j9vwwN94RtCXUVSdBEL6oYaZ1nzWj4Nc5NjMHqEq+xs4BsVVLy X-Received: by 2002:a1c:9c16:: with SMTP id f22-v6mr348952wme.19.1530734755133; Wed, 04 Jul 2018 13:05:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530734755; cv=none; d=google.com; s=arc-20160816; b=xGmuebB4IK9QlX9TKi3ngP9KwTbNNRj8i9B+c6CJvDrTj/HO63NNn4xQBhNGJsUnSF 3THhI75ud2n+18pyObRFugT9W8GImNKggz91o8AYv6B33HxaoPADllajklZ7XDX4G2Q4 BcpMlPWLRqYWi1giuC3sOodEV2h8MgqZpESGhDf5/i92vsdofidhn1ucpsl8vTWfXv0A 3tz9Iz2tNTl4gRE1BwAlkzzcgC/QCDW6hjbSxNPrSSSib4Pcbq9IDKcUOOUFt4Onifm9 4jmLdrON3duERK++DbuBq4cnVRnxgjTPqvG7OKhVR8kD0kqussHA30MIAe+RDtHlrHa8 5qWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:mime-version:user-agent:date:message-id:autocrypt :openpgp:from:references:to:subject:arc-authentication-results; bh=j1bKmXPT1JASez4ig6fNtlvIeEakAeGkbZz08cQzOxs=; b=R8zYozltqotAzI5/R/XdmheQp4BvZPc6/PN/tORbujhfWbFRctgb/3E4KyWlJU/a69 dq8XxyJv8cjfMK9alq9Nwoo3shd0TR5DLCmPouQQD3F22gfkH+n8wTyHEPIbXyWbMCFw JwqL5E1diaLzvGhmrl0owuFAjWK+161bSOF2Z5OwBdbIZkqDYB2JuwJPVsx/EqwGv9e4 FRw9uXtvFogCYxER+JfUOGG8s1/v0oJj75JOkt02vdQdOnysH0uuiOpZXrirNg5VfVx+ A7O7C+JCtimv9IVwo6GAZzbbKp+LzjIWH3bbUONZkXhCFPwOxwGSDLY6n1/pLrrxEMQq nFIQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@web.de designates 212.227.15.3 as permitted sender) smtp.mailfrom=jan.kiszka@web.de Return-Path: Received: from mout.web.de (mout.web.de. [212.227.15.3]) by gmr-mx.google.com with ESMTPS id q20-v6si189092wmc.1.2018.07.04.13.05.55 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 04 Jul 2018 13:05:55 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@web.de designates 212.227.15.3 as permitted sender) client-ip=212.227.15.3; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@web.de designates 212.227.15.3 as permitted sender) smtp.mailfrom=jan.kiszka@web.de Received: from [192.168.1.10] ([95.157.57.47]) by smtp.web.de (mrweb001 [213.165.67.108]) with ESMTPSA (Nemesis) id 0Lym5H-1gDm692aIR-01662h; Wed, 04 Jul 2018 22:05:54 +0200 Subject: Re: [PATCH v2 05/12] buildchroot-cross: Initial implementation To: Alexander Smirnov , isar-users@googlegroups.com References: <20180628082810.3571-1-asmirnov@ilbers.de> <20180628082810.3571-6-asmirnov@ilbers.de> <26683869-a5e4-f5e6-f0d0-afdddd3ff36a@web.de> <7113034c-bf3e-a210-e070-b39d8115a576@ilbers.de> From: Jan Kiszka Openpgp: preference=signencrypt Autocrypt: addr=jan.kiszka@web.de; prefer-encrypt=mutual; keydata= xsDhBEq0i8QRBAD2wOxlC9m/8t/vqjm1U9yQCT6OJ2Wbv/qys9DYM0CvcOTDMWQwmV1/VsZj KR5YgB5NPt+To7X6x5cjz15AGnx5Fb8Wnrq8EF9ZfHMwb7YMx1LdPYPDnXr37wE3XupFmkHB Mes4htyX7Dz8LvKDLnli4IsAmWG+kV1JI6LWKXLpSwCg8JRq4SWoB4VCQxbH3GjntgvwNc8D /2q5Dj0urJ7s7sdXhrH0hcFkpSFRmU5Yd6MCwcbFHm2paL5gqVjNNUUwDBKAL9eZaQVIHKwC 44BvNGO2gcQ26R3AuCHUQ+pZHg34tok1JCNZ6IEZccb+33Qq0qbcDMJJiDYp7ppp6ozifvc4 YaqJECX48IydxfE9+41oV7T5vNAzA/QL/UMJyTnu5jiOXcyn5iFQw535lXkwKsqeXzCowLho HICZ2jITJPdTT/+9pGWwMQqST/SS35Tx4EnS3z2BWsNMCLuXCPkxF1elaMJqMfMJxFD8rAgS 9GK6zP6fJlsA1wq/UvKSL8v4QPOnTNCVOsyqJVasGV0ZPcDfcj+ClNO4zR5KYW4gS2lzemth IDxqYW4ua2lzemthQHdlYi5kZT7CYwQTEQIAIwIbIwYLCQgHAwIEFQIIAwQWAgMBAh4BAheA BQJOpoNtAhkBAAoJEIrUrG965ecUOPUAoK+Rh12KgCjplHAS0AoiGKwGOuq7AKDEVnBtRAoy VRvp3lOlOx+P2Ay56M7BTQRKtIvEEAgA2/PlX6oyi7dToH0CJCHq0eKmZaa7CmGaVnxyeepK vIfiM8n8Td76AbG64fjREMwgSpb4F/UytF3z/03tj4e49W/zKjbBRB2/wmFRlZBC9crg22Q+ bgvMOsxnC6uHXaWN8fL+jVei/5OoHOoFqaMsX8EvploitlI/BPj+VgW26jksf3YZyk1hncls Z/IYhXzgRmVJo4RiTW/YLQAkwndwc+fKPa/IYLEDW1Jc4kNLoK0P90b45zju0hpl0C00pVOR TOtzFK9G5Ha7qOAWJfAVJORHKAkkvwftf3hkpPdLyvZUWRHXvUexmA61fLvDBAFhRxYGD8t5 gz88SF5Tzq+0ywADBQf/YSkaYrEslPWiCA2wU6EW0yaqBQAobFsOMvsufJ6o2ntq5Ncq37VI 3KCT67eHPE9x+zPcENoZWsRrC9S9PCf1LOsi7ybZsR13AJqDFlRzJZ4klh9QwgwFZxUBzOdI vttwzG1QkzHx06RKZluFYpPF3DRduSMukdIJ2wmWCU+ohB+mYefe65JGjYQfHVs8mgYVFOPx bRea9VJACCMuspoZWpj43UdR1lLLyIUFYz+jqcPW7Hd/GTIw4N67pYl0dwPDmFd4ohJ5g4Zp q61toNysBGEuEm5GCcn0VmGtQpSYnR5cVm5b2yPz4bIuFOSuZUo/l7vitdY0iy0/wvKbBC+N K8JJBBgRAgAJBQJKtIvEAhsMAAoJEIrUrG965ecULvAAoKGvxs5T3IhyQT8I8sMsyAvCE4wH AJ46S16yab+OxNkvOeoOEX0EnHVHaA== Message-ID: Date: Wed, 4 Jul 2018 22:05:53 +0200 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 In-Reply-To: <7113034c-bf3e-a210-e070-b39d8115a576@ilbers.de> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="bJgCr2HLpuv2fsXm4EREvnyLkcEMHyvSN" X-Provags-ID: V03:K1:1d+3t76T/kX+a4jziPk1csdcoNNrqAxbgWMtFWIA7k7MslQsvq2 JIl1R0J6wR11935lZR8l7591C17vhtBylO7r/AELvmEHfaA9bvJqkRcZNxN5MEgdlmMoYlz Sn621hP5FIhQug34Nh7n3/2LBt0quu3VcS+buglyyKXRbJ28F8tmCOZbDAtbTSkXdnEQh2W n5iupOG9m96LTyl8s1E6Q== X-UI-Out-Filterresults: notjunk:1;V01:K0:pcBSn3w46/Q=:TSPh9dKdejm+y1jAAmN7yl gWyA9v2VnOdRMpwWTHwYP/0Wbu1uVoiiTVD2kBhs4rT6UQsWRhatY3+nkCWgoM0zkhCkq+QoG lWhoVJrJZ5MyeH74j8TIU8CKLL2vZaObghM5mqzagudx/OZzo7LbqrvDS98L6NOT3kV1jf+Ev f8cUhMH2cxILZ8gbar1n9uYRWdA32tZ5nSh9PNfTY2x7emVKRIRke7dzi+3vAC2MDHVzHCkaw YzKit6Ite40ogrAWADlOlssb/pCW5GETcw+QP2Z99jdYyIwbvVTLvE238MW+IDP6Lw0HT79Ua SMB4EojC9f6tE1cfEdkdmjunZ89/8eR2TQ59vbeE7BWZraFHgpkj08uhrnS593FFeE24XKqFH eXdyXVjq4sdTIg3l2rQbERYzQBgoDfNoeLssX5WIoy0tIwhthuAmCuUeLZr96PIM/dmf6V4ng P0EbRZ2XgmfuMQ0xWzwHeG+34WV9IkaJvI6o0xOyxxH7hTLJYxMKjRJcLI4Lx3/4ewv4CU0HY 4c2vQPMllaq6TWgyrg+OPigQAqwEyFmkpXL7Jdpoj8veXhzo2wwFS8Zqr+CjIwz2DveqFDzxY vIZQLiJnHKe70RFYJ69VoNSiQ1t0QP3SfDBXmQV1Vt/NAgt4e+mphT7i52RDVMVX83JrNFKNs gHMw7dtY9dVvfrknSPVy/w2pV1L0VPLOgV7Z37AuoTmXePoacD0IHIrz/Ym7puSAMMRNlZPk7 lM5KkA69qPtQjyEhqjiT2WRB1yt3fkS/kOO/6jqBoX3yUJqIfWVhZxv6FYI= X-TUID: lyE5cN6a5I9Z This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --bJgCr2HLpuv2fsXm4EREvnyLkcEMHyvSN Content-Type: multipart/mixed; boundary="42eYb5T3493ay8deN83VBJTbORIioc1qJ"; protected-headers="v1" From: Jan Kiszka To: Alexander Smirnov , isar-users@googlegroups.com Message-ID: Subject: Re: [PATCH v2 05/12] buildchroot-cross: Initial implementation References: <20180628082810.3571-1-asmirnov@ilbers.de> <20180628082810.3571-6-asmirnov@ilbers.de> <26683869-a5e4-f5e6-f0d0-afdddd3ff36a@web.de> <7113034c-bf3e-a210-e070-b39d8115a576@ilbers.de> In-Reply-To: <7113034c-bf3e-a210-e070-b39d8115a576@ilbers.de> --42eYb5T3493ay8deN83VBJTbORIioc1qJ Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 2018-07-04 21:56, Alexander Smirnov wrote: >=20 > On 06/29/2018 08:36 PM, Jan Kiszka wrote: >> On 2018-06-28 10:28, Alexander Smirnov wrote: >>> Add initial generation of buildchroot for cross-compilation. >>> >>> Signed-off-by: Alexander Smirnov >>> --- >>> =C2=A0 meta/classes/isar-bootstrap-helper.bbclass=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 5 ++ >>> =C2=A0 meta/conf/isar-bitbake.conf=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 1 + >>> =C2=A0 .../buildchroot/buildchroot-cross.bb=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 57 >>> ++++++++++++++++++++++ >>> =C2=A0 3 files changed, 63 insertions(+) >>> =C2=A0 create mode 100644 >>> meta/recipes-devtools/buildchroot/buildchroot-cross.bb >>> >>> diff --git a/meta/classes/isar-bootstrap-helper.bbclass >>> b/meta/classes/isar-bootstrap-helper.bbclass >>> index d4f8d9a..a3ef19d 100644 >>> --- a/meta/classes/isar-bootstrap-helper.bbclass >>> +++ b/meta/classes/isar-bootstrap-helper.bbclass >>> @@ -70,6 +70,11 @@ setup_root_file_system() { >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -o Dir::Etc::s= ourcelist=3D"sources.list.d/isar-apt.list" \ >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -o Dir::Etc::s= ourceparts=3D"-" \ >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -o APT::Get::L= ist-Cleanup=3D"0" >>> +=C2=A0=C2=A0=C2=A0 # Add multiarch for cross-target >>> +=C2=A0=C2=A0=C2=A0 if [ "${ROOTFS_ARCH}" !=3D "${DISTRO_ARCH}" ]; th= en >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sudo -E chroot "$ROOTFSDI= R" /usr/bin/dpkg --add-architecture >>> ${DISTRO_ARCH} >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sudo -E chroot "$ROOTFSDI= R" /usr/bin/apt-get update >>> +=C2=A0=C2=A0=C2=A0 fi >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sudo -E chroot "$ROOTFSDIR" \ >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /usr/bin/apt-g= et ${APT_ARGS} --download-only $PACKAGES \ >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 ${IMAGE_TRANSIENT_PACKAGES} >>> diff --git a/meta/conf/isar-bitbake.conf b/meta/conf/isar-bitbake.con= f >>> index ead7798..1412508 100644 >>> --- a/meta/conf/isar-bitbake.conf >>> +++ b/meta/conf/isar-bitbake.conf >>> @@ -22,6 +22,7 @@ WORKDIR =3D >>> "${TMPDIR}/work/${DISTRO}-${DISTRO_ARCH}/${PF}" >>> =C2=A0 DL_DIR =3D "${TOPDIR}/downloads" >>> =C2=A0 SSTATE_DIR ?=3D "${TMPDIR}/sstate-cache" >>> =C2=A0 BUILDCHROOT_DIR =3D >>> "${TMPDIR}/work/${DISTRO}-${DISTRO_ARCH}/buildchroot/rootfs" >>> +BUILDCHROOT_CROSS_DIR =3D >>> "${TMPDIR}/work/${DISTRO}-${DISTRO_ARCH}/buildchroot-cross/rootfs" >>> =C2=A0 CACHE =3D "${TMPDIR}/cache" >>> =C2=A0 =C2=A0 OVERRIDES_append =3D ":${DISTRO}:${DISTRO_ARCH}" >>> diff --git a/meta/recipes-devtools/buildchroot/buildchroot-cross.bb >>> b/meta/recipes-devtools/buildchroot/buildchroot-cross.bb >>> new file mode 100644 >>> index 0000000..bc0bc66 >>> --- /dev/null >>> +++ b/meta/recipes-devtools/buildchroot/buildchroot-cross.bb >>> @@ -0,0 +1,57 @@ >>> +# Root filesystem for packages cross-building >>> +# >>> +# This software is a part of ISAR. >>> +# Copyright (C) 2015-2016 ilbers GmbH >>> + >>> +DESCRIPTION =3D "Isar development cross-filesystem" >>> + >>> +LICENSE =3D "gpl-2.0" >>> +LIC_FILES_CHKSUM =3D >>> "file://${LAYERDIR_isar}/licenses/COPYING.GPLv2;md5=3D751419260aa9544= 99f7abaabaa882bbe" >>> >>> + >>> +FILESPATH_prepend :=3D "${THISDIR}/files:" >>> +SRC_URI =3D "file://configscript.sh \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 file://= build.sh" >>> +PV =3D "1.0" >>> + >>> +inherit isar-bootstrap-helper >>> + >>> +BUILDCHROOT_CROSS_PREINSTALL ?=3D "make \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 debhelper \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 autotools-dev \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dpkg \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 locales \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 docbook-to-man \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 apt \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 automake \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 devscripts \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 equivs \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 libc6:${DISTRO_ARCH}" >>> + >>> +# Please note: this works for Stretch distro only. According to the >>> wiki page: >>> +#=C2=A0=C2=A0=C2=A0=C2=A0 https://wiki.debian.org/CrossToolchains >>> +# Jessie doesn't contain toolchain. It should be fetched from the >>> external >>> +# repository: >>> +#=C2=A0=C2=A0=C2=A0=C2=A0 http://emdebian.org/tools/debian/ >>> +BUILDCHROOT_CROSS_PREINSTALL_append_armhf +=3D >>> "binutils-arm-linux-gnueabihf \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 >>> crossbuild-essential-armhf" >>> + >>> +WORKDIR =3D "${TMPDIR}/work/${DISTRO}-${DISTRO_ARCH}/${PN}" >>> + >>> +do_build[stamp-extra-info] =3D "${DISTRO}-${DISTRO_ARCH}" >>> +do_build[root_cleandirs] =3D "${BUILDCHROOT_CROSS_DIR} \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 ${BUILDCHROOT_CROSS_DIR}/isar-apt \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 ${BUILDCHROOT_CROSS_DIR}/downloads \ >>> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 ${BUILDCHROOT_CROSS_DIR}/home/builder" >>> +do_build[depends] =3D "isar-apt:do_cache_config >>> isar-bootstrap-host:do_deploy" >>> + >>> +do_build() { >>> +=C2=A0=C2=A0=C2=A0 setup_root_file_system --host-arch "${BUILDCHROOT= _CROSS_DIR}" >>> ${BUILDCHROOT_CROSS_PREINSTALL} >>> + >>> +=C2=A0=C2=A0=C2=A0 # Install package builder script >>> +=C2=A0=C2=A0=C2=A0 sudo chmod -R a+rw "${BUILDCHROOT_CROSS_DIR}/home= /builder" >>> +=C2=A0=C2=A0=C2=A0 sudo install -m 755 ${WORKDIR}/build.sh >>> ${BUILDCHROOT_CROSS_DIR}/build.sh >>> + >>> +=C2=A0=C2=A0=C2=A0 # Configure root filesystem >>> +=C2=A0=C2=A0=C2=A0 sudo install -m 755 ${WORKDIR}/configscript.sh >>> ${BUILDCHROOT_CROSS_DIR} >>> +=C2=A0=C2=A0=C2=A0 sudo chroot ${BUILDCHROOT_CROSS_DIR} /configscrip= t.sh >>> +} >>> >> >> This is almost identical to buildchroot:do_build - except for one >> differently named variable, the first line, and missing fix >> 39e0c488d8b2. Please avoid those duplications. >> >=20 > Sorry, didn't get this. It's absolutely different logical units: No, the code is identical. Step back, look at it again. > =C2=A0- crossbuildchroot has its own lifecycle including stamps, so it = could > not be shared with the original buildchroot (only via common include) > =C2=A0- crossbuildchroot and buildchroot have different default package= s to > install and they are incompatible due to possibly different > architectures (cross has always host one, bchroot has target one). >=20 > Could you please clarify what you mean here? I'm not suggesting to have only a single recipe. I'm asking to pull out identical code into a shared function, class, whatever so that we can maintain identical logic in one place (and fix bugs only once). Jan --42eYb5T3493ay8deN83VBJTbORIioc1qJ-- --bJgCr2HLpuv2fsXm4EREvnyLkcEMHyvSN Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EARECAB0WIQTKX4wA9fvIVGYBbICK1KxveuXnFAUCWz0ooQAKCRCK1KxveuXn FHqVAJ9PmMTPBuNR0b0hwUWJA6wIneVnKwCfbrNXHmUN9QlPihyJNYf2xg4W5fs= =oLdv -----END PGP SIGNATURE----- --bJgCr2HLpuv2fsXm4EREvnyLkcEMHyvSN--