From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7163980406052618240 X-Received: by 2002:a19:8c16:0:b0:4fd:fef8:7a81 with SMTP id o22-20020a198c16000000b004fdfef87a81mr1236749lfd.55.1692188082290; Wed, 16 Aug 2023 05:14:42 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:4f5e:0:b0:4fe:494b:3760 with SMTP id a30-20020a194f5e000000b004fe494b3760ls1097212lfk.1.-pod-prod-04-eu; Wed, 16 Aug 2023 05:14:40 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHtEVcDj9WHEO1C9hSu3JJzvVEv2ypGjg2KXfMZdZxwgA07m9VyVXON6jGAXR5a70AIDV28 X-Received: by 2002:a05:6512:2390:b0:4fd:f85d:f67a with SMTP id c16-20020a056512239000b004fdf85df67amr1657008lfv.61.1692188080183; Wed, 16 Aug 2023 05:14:40 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1692188080; cv=pass; d=google.com; s=arc-20160816; b=Cl20n9tBybzTXXhMcYwD40NQIZD3bv5JWyIpyyhx/ihsWGhTGBRgu7vZiqHgEjf8CQ 0zdW5ViobcKkySNAqx1wyzMOStaP+UgQ8RAKmOVQBrHW2tTbRMyoqjDra5M0Ra98SNxd hZxOiFp8pa623s8x+BbegChfDLrH4+MAQwGTLOIRuvuev0ZOIPEcYDB3/wnTuXMzol1i H9bQMh7OTGg6+yMcV4G5yk5b5aL8C1MTXaRoNuFOdQI7tz+M7gB8lzgsqjJ2atwmktx+ XREOGDB76LtRF+wcqu6bO9NcgLKyCjiINNOv+u5WRY/VW0/n4hYWPyTWnpukCaQsBKkC ftBA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:dkim-signature; bh=BpKbAr7q/a2UyXcksPtUDTOAoo0EFxpaztcz0R+CzhM=; fh=P0iuKgidmAaYvPfY6P+WWv+5AQ1KAqwDcu5amwfnCeI=; b=UoHcaJ+ztmajK44y8TjzUy4P1WzSVqWeT5z4XoQ8aYRTYI0EuytHTxjBFqZXQg4rYY H/4A2Av+N3fnIZVV9L5NIY1f7Ihsgyp04n7/TE1iXUBwyyI2zEpw2lvE0CQVqVPmabHj cCKF4AHdj8L4xRD4xN0vUiAMh6RvpYlCUPEIqWwbMC1wmOd6blzjXeZeDI7b3Wli7nAU PYa6YLi324WcXpn86wFDBXTriiMcQtld875DBGbDKkautJqJwiTmjIdqyigRCOjwgwz6 lQlF6ZBEvD3vMBRrJA95hqf+LK7LnyldTAQE8+WMslVC6LykEWzBjjwGO+erPWq9niDW 7Hkg== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=OCJAQOFe; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of stefan-koch@siemens.com designates 2a01:111:f400:fe0e::625 as permitted sender) smtp.mailfrom=stefan-koch@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Return-Path: Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0625.outbound.protection.outlook.com. [2a01:111:f400:fe0e::625]) by gmr-mx.google.com with ESMTPS id j2-20020a056512344200b004fe3478235csi996976lfr.7.2023.08.16.05.14.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 16 Aug 2023 05:14:39 -0700 (PDT) Received-SPF: pass (google.com: domain of stefan-koch@siemens.com designates 2a01:111:f400:fe0e::625 as permitted sender) client-ip=2a01:111:f400:fe0e::625; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=OCJAQOFe; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of stefan-koch@siemens.com designates 2a01:111:f400:fe0e::625 as permitted sender) smtp.mailfrom=stefan-koch@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mLAiZlaNE6mTkJINtPAwy/6u/rQzNhEgVXHFjkkQL5yyUd9Ck5WAWSSWa9dduAm3lx4uI2U6zhduLCQBQ7XmvA0z8TLa5CmPx95MG/VorJEeFQk09zJx9Z6EfBxwbuSUjchx9O6P9xx5En8HgMIvyDpdKM56NM2mQ/0X+arOXW+ItzjTBoEJ+6cOs8AMPRQypc/VVseoxsISc9GtqyBNUuv8f9HvPG8AdYPB9mtAIWJw36hY5qIVRTFQRxt80PCBLAXhPyX4ekHMLAZUYofSP/oV2J2zBuvKGMGfup+cFHhcKx1lovWjiWX0BcOJQvR4kzrhbubSdNybXOuOYVfPQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=BpKbAr7q/a2UyXcksPtUDTOAoo0EFxpaztcz0R+CzhM=; b=Z2e/bZ9LzHFtuozm0onuzD6TOuCPaBtArZHFizXia0fP6XbdLnvTuJlfoAcPZejqnaw1uvaIe9wvHzJiQphp05jerma+pVGvIpiquVUm/0VpGmcC8QU1pLpoxEgzIYzDjv4i5Csd1FWHpX9+coXTU822VaFtcdlGIJtDWT0zhIqgQ9LfY/5zjJheayrBZONRt8plM+DdzFNRYmo5zo5p2dvice6LlkXGvt/vfizHGliDQhsNUFf1k3ggOSNoSCcpY8ftWOlUA54Ks5bMusuCtN8zhwkddsy8w0qNtLn3roopzyUJycTh6/WJXX4FPxTx4z5KFIXB7FCF47OmkO2L2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BpKbAr7q/a2UyXcksPtUDTOAoo0EFxpaztcz0R+CzhM=; b=OCJAQOFeyRV3mtLPbOXNExo8jJxMX3WWLLe1NzSk7VgW8ekWVpT7N6nmXgvN8h9M9iRETl9MFkFgCzMob4vbzYq3rspnQARF2gOrS+Cz33IrDWwYpmrzat425LazeZY0soiOykSXSwrjjQER/sujZeK7MMEcva/iAqG4jsG17DYswOoNhEQgePodug8CLVdqTJuWeej+N4muUuJcd0i4TqqAh6wgg4h1oHqj+Tc0B75dVip2XPxZLvgZOzgUzT5DoAUBT+v0dpPa2cc8UeZXwjS1xNp1jqAk4prDXaNQq/y897ajyWnRF3O3dUIrSwX2i6JyDHppHyXoDKsEJ/iLOA== Received: from AM9PR10MB4959.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:41e::11) by AM7PR10MB3480.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:132::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6678.29; Wed, 16 Aug 2023 12:14:38 +0000 Received: from AM9PR10MB4959.EURPRD10.PROD.OUTLOOK.COM ([fe80::c9da:178c:455b:211e]) by AM9PR10MB4959.EURPRD10.PROD.OUTLOOK.COM ([fe80::c9da:178c:455b:211e%4]) with mapi id 15.20.6678.029; Wed, 16 Aug 2023 12:14:38 +0000 From: "Koch, Stefan" To: "isar-users@googlegroups.com" CC: "Koch, Stefan" , "Kiszka, Jan" , "Storm, Christian" , "Adler, Michael" , "Sudler, Simon" , "cedric.hombourger@siemens.com" , "Schmidt, Adriaan" , "MOESSBAUER, FELIX JONATHAN" , "ubely@ilbers.de" Subject: [PATCH v3 1/5] linux-custom: Split up binaries from kernel headers to kbuild package Thread-Topic: [PATCH v3 1/5] linux-custom: Split up binaries from kernel headers to kbuild package Thread-Index: AQHZ0Ds6lJkhFlm5R0CpAWBlwxK+Ug== Date: Wed, 16 Aug 2023 12:14:38 +0000 Message-ID: <20230816121423.3956608-2-stefan-koch@siemens.com> References: <20230816121423.3956608-1-stefan-koch@siemens.com> In-Reply-To: <20230816121423.3956608-1-stefan-koch@siemens.com> Accept-Language: de-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.39.2 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=siemens.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AM9PR10MB4959:EE_|AM7PR10MB3480:EE_ x-ms-office365-filtering-correlation-id: 442ddeae-00ac-46b7-e897-08db9e525ca8 x-ld-processed: 38ae3bcd-9579-4fd4-adda-b42e1495d55a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YXz6Zb+nIdPV1dRnmp3OzfBdVoF4MIqBS6npLK60Bm/jIS9VVQExQvMR4nqOM7aAst2tZsg1QZ16CMZGnWXzQSMJEK7YNtlZueXdCetq2d7g0yxkPQ7soGgSdmoOgpLcRtNT1gDDhEb71mWpmBuKWuBU83/ZOZn2g5EP2Lft3ZEggWB60al3smOIW4gLCyxjKzvmJSMBUjGU7pH2RifGzBItc43k0y/+suRP3MKkm5gnmE0ziRIMvE0cm/PPt5zwPX5DpiPYXkpi+A6FiRRoorMKqMmKdzZ39V2B+Feh5u7eA0YXck7QJ/jf6wxCwGujKb9534g+WU3MZb95uo3LWH0N0GhPD8KPplMwiKAkxLiKogzNV+LpB93pI3bJjIkdipaHkjQBcDObPmT1XZLKqRTdTEW4T/b8OiWY2DhGfemb+bMKZJjwPaR/EardtbPiRfebFkjth3kSFOokk2kuQ5L1RI8rQO6uOaf/QQAAm7Ifwkz/BPsbL+6SCHzAQKcV6P+56DhAAp3U19DhUTpYGl5U25QbAetVPZpIJoeukXce6GdYYhgR+Qf4c8QdsOBpJH4rJxSD7Ebonk6UX9ftETbyeDjp2ITd1cnuynBbiIE4s+xwLa8TyAjmcltvBuTb x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR10MB4959.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(136003)(366004)(346002)(376002)(1800799009)(451199024)(186009)(316002)(54906003)(76116006)(6916009)(66946007)(91956017)(64756008)(66446008)(66476007)(66556008)(122000001)(41300700001)(5660300002)(38070700005)(38100700002)(8676002)(4326008)(8936002)(82960400001)(2906002)(83380400001)(26005)(478600001)(86362001)(6512007)(6506007)(36756003)(71200400001)(1076003)(2616005)(6486002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?/wp0G0JeRs3BpfSIoqBYaXr7r/V59aC2Jsv1d/Y6fy5KhfmQSRng1Z2AUe?= =?iso-8859-1?Q?GPAa0HVtTeqYBB/wQOPCwAY7+NxdRxMUhc6JGxCuWvSKewPjbW3BEYKdJP?= =?iso-8859-1?Q?VlTXlkw8ghBpC509908AcWCwPp3VmmU9Dj4dUrynW9XLmO8TakGxcpyZg3?= =?iso-8859-1?Q?kfn9eAkLo/RICWH/D7H5QSvTN6fZCLtX3XmpbUHHWXlSuNpsRWok595RQP?= =?iso-8859-1?Q?PvvCYDNrm5sjXHoP9xNZt5X0Po5LiIuh0mGkNqp2qRs0Vig/nEUqRKgugA?= =?iso-8859-1?Q?hKqEXqxnnsQJdp+5RcAQq/pQ+3nqdaEsKo0Ow99h2V31XpGBW12VUm/l2y?= =?iso-8859-1?Q?/b2Li4pyC6Wc6wbtw7UqcLW42T2ZCsyH9cjKgp/6TjFuJWTFy7j9rC5jVs?= =?iso-8859-1?Q?1+MR5Tu4YmQe9a0lxelkJXDvZtWdRZ4EGyippoIdslTcUbuDb9Oyy/SHSS?= =?iso-8859-1?Q?/0MRNOByw9A7PjV1/3jxOwGr79eO30cSNj1bK9Spu+WHyG8lXvWKvFIgj4?= =?iso-8859-1?Q?jKhWfGZn29ob/5oDD9cTeIKDUH8mpPqF5TUA9Yd6hQEr528RYFohJDmVd0?= =?iso-8859-1?Q?JpdjCz+bYGYARdCR2jPxxq3YwKavxBK9gFuRkv8aGDfUUtudg2/uGEqFXj?= =?iso-8859-1?Q?mNGcBa5sbi1ZEg1TQ8OG4qGzZZ8jdhl1eVdDJWPNIuPB/UKVkUVc8QXTNT?= =?iso-8859-1?Q?K7wKypvoPLhr9r/hJmNazfaBUSIgjcKY1mgdPEcYSzswzEUYg0feumgjdI?= =?iso-8859-1?Q?LdBhQp+nn59uWYwnP2/W41Op0eLPBprOG5KeEwTqK6LaG82SMrxq4HwSmm?= =?iso-8859-1?Q?hyj+QcIxSOjxUzyAixgGNy5IAz3mF1g3EhbS2EuNUQ3+P/OJkF6EsaMLWo?= =?iso-8859-1?Q?6fP0jGCBqH/VesI3FLN5TpBT4fw76M42F4P7cA5Y9Zr+zJvflJvBo5I0dr?= =?iso-8859-1?Q?OmO7J6u0ldqi1M2kHOSHpIhBU/yZsWzgzyQBcrfeMSv+obAxb7SVLufZQZ?= =?iso-8859-1?Q?H+3gCVMLhrlJpJLzHUVBIYh+n5/ZZTittlLPrd3Svdh42ZfHUc80JaPCVN?= =?iso-8859-1?Q?ynJ/f1fyqhQ0DcbTHFDCxvyxaF9UVMY/ZT3IzHEFhRh39pXN9+5GUdL/VQ?= =?iso-8859-1?Q?vJX/GkSgX54NNEb8vZfKfNqrCIYJMvx9bI1V5CE5Y2kIOzDq4Prr5yFD0s?= =?iso-8859-1?Q?ERRZrUzkvXeG3jDX/28IW5cUP3UALSuThBFzed8DXhjsXZMFvSXm5s75Ne?= =?iso-8859-1?Q?mY++rWQrWD+PcA5R5lK3k+MWW5Yvfezlz5gGfs0fWA0yzyN86sTi7lxLjP?= =?iso-8859-1?Q?i4IvAsfb1hlD7ys+gsnIb3uX0N3o3rkmjzt4AT+NQrM5AOodF5bp4G/HDR?= =?iso-8859-1?Q?SfoFuYRVluKnk+Ms7ZObXMSvfbeK1iDUqHFBYUiD1esv6kJHqlC1Kz1tXo?= =?iso-8859-1?Q?03uzNLKdn+EF5nIHC1zpD8OVBSwxOJ+cSl1j9cGgK17q7t9wfArSgyNr5E?= =?iso-8859-1?Q?EL3zO94RuCO7TmzvPoV6M0NAyqg9bnmxFIhzbAt5ZTaZluJctNHX8YsYxi?= =?iso-8859-1?Q?HFu7yGdAbIkVw2E+gzoVcFxnc9pXntWifa+NGR3efjk4k5ya9w+5hM69Ny?= =?iso-8859-1?Q?Ytay2KuRmtP5TTtvi9N/9qg0ux0EtEsyK0gZE2kL6qdvhNU+juzS0voA?= =?iso-8859-1?Q?=3D=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM9PR10MB4959.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 442ddeae-00ac-46b7-e897-08db9e525ca8 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2023 12:14:38.1930 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: GuBthciZtSP2D7BQ1DnXwFTzbDc4eGZyrjzYaRN+fdvACGfxL/eBysH9V8L7pDy89KdJQ5DidSQ6n2djZ9Bnlg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR10MB3480 X-TUID: 42u0KJQB9JRU This patch does introduce specific kernel kbuild packages that ship the "scripts" and "tools" binaries. The kernel headers fulfill this using symlinks to point to the "scripts" and "tools" of the kernel kbuild package. This is already known from debian kernel packages structure: - Generate a kernel headers package without binaries - Create kernel kbuild packages that ship the "scripts" and "tools" binaries - Using symlinks to point to the "scripts" and "tools" binaries Signed-off-by: Stefan Koch --- .../linux/files/debian/control.tmpl | 9 +++- .../linux/files/debian/isar/common.tmpl | 2 + .../linux/files/debian/isar/install.tmpl | 51 +++++++++++++++---- meta/recipes-kernel/linux/linux-custom.inc | 4 ++ 4 files changed, 54 insertions(+), 12 deletions(-) diff --git a/meta/recipes-kernel/linux/files/debian/control.tmpl b/meta/rec= ipes-kernel/linux/files/debian/control.tmpl index dd0b6245..b19ca2c9 100644 --- a/meta/recipes-kernel/linux/files/debian/control.tmpl +++ b/meta/recipes-kernel/linux/files/debian/control.tmpl @@ -26,7 +26,7 @@ Section: devel Provides: linux-kernel-headers Architecture: any Description: Linux support headers for userspace development - This package provides userspaces headers from the Linux kernel. These he= aders + This package provides userspaces headers from the Linux kernel. These hea= ders are used by the installed headers for GNU glibc and other system librarie= s. =20 Package: linux-image-${KERNEL_NAME_PROVIDED}-dbg @@ -35,3 +35,10 @@ Architecture: any Description: Linux kernel debugging symbols for @KR@ This package will come in handy if you need to debug the kernel. It provi= des all the necessary debug symbols for the kernel and its modules. + +Package: linux-kbuild-${KERNEL_NAME_PROVIDED} +Architecture: any +Depends: ${perl:Depends}, ${shlib:Depends} +Description: ${KERNEL_NAME_PROVIDED} Linux kbuild scripts and tools for @K= R@ + This package provides kernel kbuild scripts and tools for @KR@ + This is useful for people who need to build external modules diff --git a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl b/meta= /recipes-kernel/linux/files/debian/isar/common.tmpl index 52ebebb0..f4c0519f 100644 --- a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl +++ b/meta/recipes-kernel/linux/files/debian/isar/common.tmpl @@ -9,6 +9,7 @@ ARCH=3D${KERNEL_ARCH} KERNEL_PKG_IMAGE=3Dlinux-image-${KERNEL_NAME_PROVIDED} KERNEL_PKG_KERN_HEADERS=3Dlinux-headers-${KERNEL_NAME_PROVIDED} KERNEL_PKG_LIBC_HEADERS=3Dlinux-libc-dev +KERNEL_PKG_KERN_KBUILD=3Dlinux-kbuild-${KERNEL_NAME_PROVIDED} =20 # Constants KCONF=3D.config @@ -19,6 +20,7 @@ deb_img_dir=3D${deb_top_dir}/${KERNEL_PKG_IMAGE} deb_dbg_dir=3D${deb_img_dir}-dbg deb_kern_hdr_dir=3D${deb_top_dir}/${KERNEL_PKG_KERN_HEADERS} deb_libc_hdr_dir=3D${deb_top_dir}/${KERNEL_PKG_LIBC_HEADERS} +deb_kern_kbuild_dir=3D${deb_top_dir}/${KERNEL_PKG_KERN_KBUILD} =20 # Array of packages to be generated declare -A kern_pkgs diff --git a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl b/met= a/recipes-kernel/linux/files/debian/isar/install.tmpl index 8a604e45..236b67c4 100644 --- a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl +++ b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl @@ -33,6 +33,7 @@ do_install() { # Trace what we do here set -x =20 + # Run the install steps install_image if [ "${ARCH}" !=3D "um" ]; then install_config @@ -43,6 +44,10 @@ do_install() { install_kmods install_headers =20 + # Cleanup and install kernel scripts and tools + rm -rf ${deb_kern_kbuild_dir} + install_kbuild ${deb_kern_kbuild_dir} + # Stop tracing set +x } @@ -168,21 +173,15 @@ kernel_headers() { mkdir -p ${destdir} mkdir -p ${deb_kern_hdr_dir}/lib/modules/${krel} =20 - (cd ${S}; find . -name 'Makefile*' -o -name 'Kconfig*' -o -name '*.pl'= ) >>${src_hdr_files} - (cd ${S}; find arch/*/include include scripts -type f -o -type l) >>${= src_hdr_files} + (cd ${S}; find . -not -path './scripts/*' -a -not -path './tools/*' -a= \( -name 'Makefile*' -o -name 'Kconfig*' -o -name '*.pl' \)) >>${src_hdr_f= iles} + (cd ${S}; find arch/*/include include -type f -o -type l) >>${src_hdr_= files} (cd ${S}; find arch/${ARCH} -name module.lds -o -name Kbuild.platforms= -o -name Platform) >>${src_hdr_files} (cd ${S}; find $(find arch/${ARCH} -name include -o -name scripts -typ= e d) -type f) >>${src_hdr_files} =20 if [ -n "${CONFIG_MODULES}" ]; then echo Module.symvers >> ${obj_hdr_files} fi - (cd ${O}; find arch/${ARCH}/include include scripts -type f) >>${obj_h= dr_files} - if [ -n "${CONFIG_STACK_VALIDATION}" -o -n "${CONFIG_HAVE_OBJTOOL}" ];= then - (cd ${O}; find tools/objtool -type f -executable) >>${obj_hdr_file= s} - fi - if [ -n "${CONFIG_GCC_PLUGINS}" ]; then - (cd ${O}; find scripts/gcc-plugins -name *.so -o -name gcc-common.= h) >>${obj_hdr_files} - fi + (cd ${O}; find arch/${ARCH}/include include -type f) >>${obj_hdr_files= } =20 # deploy files that were matched above tar -C ${S} -cf - -T - <${src_hdr_files} | tar -C ${destdir} -xf - @@ -191,8 +190,11 @@ kernel_headers() { # add the kernel config cp ${O}/${KCONF} ${destdir}/.config =20 - # handle kernel development tools - kernel_tools + # add symlink to scripts and tools directories + ln -sf ../../lib/linux-kbuild-${krel}/scripts ${destdir}/scripts + if [ -n "${CONFIG_STACK_VALIDATION}" -o -n "${CONFIG_HAVE_OBJTOOL}" ];= then + ln -sf ../../lib/linux-kbuild-${krel}/tools ${destdir}/tools + fi =20 # create symlinks ln -sf /${kernel_headers_dir} ${deb_kern_hdr_dir}/lib/modules/${krel}/= build @@ -206,4 +208,31 @@ install_headers() { kernel_headers } =20 +install_kbuild() { + kernel_kbuild_dir=3Dusr/lib/linux-kbuild-${krel} + destdir=3D${1}/${kernel_kbuild_dir} + src_kbuild_files=3D$(mktemp) + obj_kbuild_files=3D$(mktemp) + + mkdir -p ${destdir} + + (cd ${S}; find . -path './scripts/*' -a -path './tools/*' -a \( -name = 'Makefile*' -o -name 'Kconfig*' -o -name '*.pl' \)) >>${src_kbuild_files} + (cd ${S}; find scripts -type f -o -type l) >>${src_kbuild_files} + + (cd ${O}; find scripts -type f) >>${obj_kbuild_files} + if [ -n "${CONFIG_STACK_VALIDATION}" -o -n "${CONFIG_HAVE_OBJTOOL}" ];= then + (cd ${O}; find tools/objtool -type f -executable) >>${obj_kbuild_f= iles} + fi + if [ -n "${CONFIG_GCC_PLUGINS}" ]; then + (cd ${O}; find scripts/gcc-plugins -name *.so -o -name gcc-common.= h) >>${obj_kbuild_files} + fi + + # deploy files that were matched above + tar -C ${S} -cf - -T - <${src_kbuild_files} | tar -C ${destdir} -xf - + tar -C ${O} -cf - -T - <${obj_kbuild_files} | tar -C ${destdir} -xf - + + # handle kernel development tools + kernel_tools +} + main install ${*} diff --git a/meta/recipes-kernel/linux/linux-custom.inc b/meta/recipes-kern= el/linux/linux-custom.inc index 8b367a2f..94ed84a2 100644 --- a/meta/recipes-kernel/linux/linux-custom.inc +++ b/meta/recipes-kernel/linux/linux-custom.inc @@ -100,6 +100,10 @@ python() { kernel_name =3D d.getVar("KERNEL_NAME_PROVIDED") d.setVar('PROVIDES', 'linux-image-' + kernel_name + ' ' + \ 'linux-headers-' + kernel_name) + headers_depends =3D "linux-kbuild-" + kernel_name + + # Set dependency for kernel headers + d.appendVar("KERNEL_HEADERS_DEBIAN_DEPENDS", headers_depends) } =20 def get_kernel_arch(d): --=20 2.39.2