From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6701739048874016768 X-Received: by 2002:a1c:a557:: with SMTP id o84mr680936wme.138.1560370216914; Wed, 12 Jun 2019 13:10:16 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a1c:b6c3:: with SMTP id g186ls1031758wmf.5.gmail; Wed, 12 Jun 2019 13:10:16 -0700 (PDT) X-Google-Smtp-Source: APXvYqxi4pusUE3/f2Pt1xXT2t82ZKh9/dcUyMOIZRCON6yJYsgu5JMuAfv+atE55z8w2X3p+81b X-Received: by 2002:a1c:b189:: with SMTP id a131mr673439wmf.7.1560370216467; Wed, 12 Jun 2019 13:10:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560370216; cv=none; d=google.com; s=arc-20160816; b=Hd0wnq+/y8mOJ3XqZ1CRXSObJRSNLjdLugUH8lTq/G3l3YGDi2EdGKzrkvlUak+mDd NTiiMpQQU3RvcSdZmhyEnTAcu8KIPAs4zUjWfSEeDXzvvB3HtG3KPi8QuTqhaWXDzlYb 1eGOGbfutCq/FRw3QklKJZvaGFeK01whjSfsZAelAmFqFUr6pElJoRHoImFK1IkfYMX9 NL9wOLq6PaZNqYJJ+mLzquySZ9j99MiBeiyKXVVfzNV5ystMbx5s3+JGS1rImKkL+cOG ULsBfv4DQENPaQzx+F3XCF8yxDzH53NyY28fKK3V6gJJ5JodgvS2BXgz9Hs29Wninbf6 Jr3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:message-id:date:subject:cc:to:from; bh=nxwste08okyG2pBOvhR7qMFfzFNje3DVAN/LcII2w3E=; b=DUWsBmMs8DK6i1ivxna83VrQ0rSsx29xOIdWn5EleEktxIQwUayzBiyLPlYB9kJ6RM slmL3cphbgzs2eeZ5ecQnSldKvkx8DgUbukXB8l1kFELT+3gfm/y0KFlv8kNoQVHERJN 7Tjkw8azqfGacX+YR8M+tW/zXZXD6yzJWMtgfKgXBGUglu/h8GnnzgTPe6CqkUvUyxa9 RkrmYl1yciJUov7bYN97SVZvcvlVqKwuQhCREl3NRrgleQ8Z6+CPbTDhq8qAmz6IlEFc FRUaosPRgLTH+ESxVfzN3sOoh2e/wzTEh2DtD2+OH0sDKPR4YGt6fy/WRGRC3mNmj6Hr BV3Q== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of cedric_hombourger@mentor.com designates 192.94.38.131 as permitted sender) smtp.mailfrom=Cedric_Hombourger@mentor.com Return-Path: Received: from relay1.mentorg.com (relay1.mentorg.com. [192.94.38.131]) by gmr-mx.google.com with ESMTPS id h13si43305wrt.4.2019.06.12.13.10.16 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Jun 2019 13:10:16 -0700 (PDT) Received-SPF: pass (google.com: domain of cedric_hombourger@mentor.com designates 192.94.38.131 as permitted sender) client-ip=192.94.38.131; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of cedric_hombourger@mentor.com designates 192.94.38.131 as permitted sender) smtp.mailfrom=Cedric_Hombourger@mentor.com Received: from nat-ies.mentorg.com ([192.94.31.2] helo=svr-ies-mbx-02.mgc.mentorg.com) by relay1.mentorg.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-SHA384:256) id 1hb9ZX-0000yD-6C from Cedric_Hombourger@mentor.com for isar-users@googlegroups.com; Wed, 12 Jun 2019 13:10:15 -0700 Received: from FRG-W10-HOMBOUR.world.mentorg.com (137.202.0.90) by svr-ies-mbx-02.mgc.mentorg.com (139.181.222.2) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Wed, 12 Jun 2019 21:10:11 +0100 From: Cedric Hombourger To: CC: Cedric Hombourger Subject: [PATCH] linux-custom: repack linux-libc-dev Date: Wed, 12 Jun 2019 22:10:02 +0200 Message-ID: <1560370202-632-1-git-send-email-Cedric_Hombourger@mentor.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-06.mgc.mentorg.com (139.181.222.6) To svr-ies-mbx-02.mgc.mentorg.com (139.181.222.2) X-TUID: RgKQ274Y8BH6 Debian's linux-libc-dev package has "asm" headers in the following directory: /usr/include//asm while the builddeb script from the Linux kernel places them in: /usr/include/asm. Repack the linux-libc-dev package (fixing a build error for packages built against Isar-created distributions shipping a custom kernel in lieu of Debian's). Signed-off-by: Cedric Hombourger --- meta/recipes-kernel/linux/files/build-kernel.sh | 38 +++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/meta/recipes-kernel/linux/files/build-kernel.sh b/meta/recipes-kernel/linux/files/build-kernel.sh index 8b7b23b..2c97932 100644 --- a/meta/recipes-kernel/linux/files/build-kernel.sh +++ b/meta/recipes-kernel/linux/files/build-kernel.sh @@ -9,8 +9,20 @@ source /isar/common.sh -host_arch=$(dpkg --print-architecture) +unsupported_arch() { + echo "error: unsupported architecture ($1)" >&2 + exit 1 +} + +case $target_arch in + amd64) LIBC_HEADERS_DIR="x86_64-linux-gnu" ;; + armhf) LIBC_HEADERS_DIR="arm-linux-gnueabihf" ;; + arm64) LIBC_HEADERS_DIR="aarch64-linux-gnu" ;; + mipsel) LIBC_HEADERS_DIR="mipsel-linux-gnu" ;; + *) unsupported_arch "$target_arch" ;; +esac +host_arch=$(dpkg --print-architecture) if [ "$host_arch" != "$target_arch" ]; then case $target_arch in armhf) @@ -26,8 +38,7 @@ if [ "$host_arch" != "$target_arch" ]; then export CROSS_COMPILE="mipsel-linux-gnu-" ;; *) - echo "error: unsupported architecture ($target_arch)" - exit 1 + unsupported_arch "$target_arch" ;; esac fi @@ -35,6 +46,7 @@ fi REPACK_DIR="$1/../repack" REPACK_LINUX_IMAGE_DIR="${REPACK_DIR}/linux-image" REPACK_LINUX_HEADERS_DIR="${REPACK_DIR}/linux-headers" +REPACK_LIBC_HEADERS_DIR="${REPACK_DIR}/libc-headers" if [ -e .config ]; then make olddefconfig @@ -56,6 +68,7 @@ rm -rf "${REPACK_DIR}" mkdir -p "${REPACK_DIR}" mkdir -p "${REPACK_LINUX_IMAGE_DIR}" mkdir -p "${REPACK_LINUX_HEADERS_DIR}" +mkdir -p "${REPACK_LIBC_HEADERS_DIR}" cp -a debian "${REPACK_DIR}" @@ -67,6 +80,7 @@ cd .. dpkg-deb -R linux-image-${PV}_${PV}-1_*.deb "${REPACK_LINUX_IMAGE_DIR}" dpkg-deb -R linux-headers-${PV}_${PV}-1_*.deb "${REPACK_LINUX_HEADERS_DIR}" +dpkg-deb -R linux-libc-dev_${PV}-1_*.deb "${REPACK_LIBC_HEADERS_DIR}" dpkg-gencontrol -crepack/debian/control \ -lrepack/debian/changelog \ @@ -110,6 +124,10 @@ if [ "$target_arch" = "arm64" ]; then gunzip "$vmlinuz.gz" fi +# Move libc's asm headers where they are expected +mkdir ${REPACK_LIBC_HEADERS_DIR}/usr/include/${LIBC_HEADERS_DIR} +mv ${REPACK_LIBC_HEADERS_DIR}/usr/include/asm ${REPACK_LIBC_HEADERS_DIR}/usr/include/${LIBC_HEADERS_DIR} + dpkg-gencontrol -crepack/debian/control \ -lrepack/debian/changelog \ -frepack/debian/files \ @@ -121,12 +139,26 @@ dpkg-gencontrol -crepack/debian/control \ -DDepends="${KERNEL_HEADERS_DEBIAN_DEPENDS}" \ -DArchitecture=$target_arch +dpkg-gencontrol -crepack/debian/control \ + -lrepack/debian/changelog \ + -frepack/debian/files \ + -plinux-libc-dev \ + -P"${REPACK_LIBC_HEADERS_DIR}" \ + -Vkernel:debarch="${KERNEL_NAME}" \ + -DPackage="linux-libc-dev" \ + -DSection=kernel \ + -DDepends="${LIBC_HEADERS_DEBIAN_DEPENDS}" \ + -DArchitecture=$target_arch + fakeroot dpkg-deb -b "${REPACK_LINUX_IMAGE_DIR}" \ linux-image-${KERNEL_NAME}_${PV}-1_${KERNEL_NAME}.deb rm -f linux-image-${PV}_${PV}-1_*.deb fakeroot dpkg-deb -b "${REPACK_LINUX_HEADERS_DIR}" \ linux-headers-${KERNEL_NAME}_${PV}-1_${KERNEL_NAME}.deb rm -f linux-headers-${PV}_${PV}-1_*.deb +rm -f linux-libc-dev_${PV}-1_*.deb +fakeroot dpkg-deb -b "${REPACK_LIBC_HEADERS_DIR}" \ + linux-libc-dev_${PV}-1_${KERNEL_NAME}.deb # linux-libc-dev causes dependency problems if we downgrade # remove it after the build so the downgraded version does not get deployed -- 2.11.0