From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7044234567900725248 X-Received: by 2002:a05:622a:40f:: with SMTP id n15mr42961206qtx.296.1641301318904; Tue, 04 Jan 2022 05:01:58 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:620a:19a2:: with SMTP id bm34ls19015102qkb.5.gmail; Tue, 04 Jan 2022 05:01:58 -0800 (PST) X-Google-Smtp-Source: ABdhPJyzflhzgjAxC6bAWwFnLz0+QDA/M+l4ixEMfhTOv88XAghHs29yve30poKHXGCFJvFgadYW X-Received: by 2002:a05:620a:4249:: with SMTP id w9mr34670546qko.251.1641301318383; Tue, 04 Jan 2022 05:01:58 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1641301318; cv=pass; d=google.com; s=arc-20160816; b=WZ+tiYHWWppTmcIYYlIRJ/0keBH/dHomlQZgbGBlA0bu08eBNdKkBqmPSWF4xq9bHN BVq/B/VK359tLesokpK8CakV8ZfbgXB68SCpHfinRbteCcQvNvtUaooD8XLW9B4glgtJ iu1QbAwU80VjTnZCndd+T8Ue5Jo2WQ80KcThu0I+CyE6C2FI8DPoAoshRL7vBTp91bLP 1/jyiRRZQfIuBWCe3Qcs6rLCitpcDatKaj/faxtnjnJj6KcWd8W+c4ROuwGeZGzPsNRL XX58VMEjc1zPi42gd+4YPTWfSTgoQa66dlQn3XxouIybuJ5C93d3MSdp+uaIJ20QGKfQ 0Hwg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=RjDfr5y7RWGLRkYAzatpUxjkgTqj3T254OgY2L77fFI=; b=pq8sLTItnksPxgbxMZB/rEHPEJc13PhUBE8Z4LB2yr3yiYfDoJKnBWe8nhSJcGiPol iRxHoQHGbIf1F5qmkW0K5zkOUGnOtWdzaZoWMwAJRosvul+OUGaEbHNw6NY9xB4HJFdX EFT4rBkxrsgYzjLprk+VqgVCgp/68mGrpEF8nbsrR0Om9j7r603jfZY02XNplZ+xKrA+ qF6X2rJEK9oG+hDaF7+8PPuh7h0PfOZtdgm1VcP6PpTA+yChHVHIxg47E+D4njs1v2Ol 3cOafBz2n8b7f1P4rcYfFAftiMOe5kGiDM+SY1x1yxwze3dMKwS3Y32TU6HOEsmlxBGX aayw== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=vZh9s3Mz; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 40.107.20.73 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2073.outbound.protection.outlook.com. [40.107.20.73]) by gmr-mx.google.com with ESMTPS id bm4si3399031qkb.6.2022.01.04.05.01.58 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 04 Jan 2022 05:01:58 -0800 (PST) Received-SPF: pass (google.com: domain of felix.moessbauer@siemens.com designates 40.107.20.73 as permitted sender) client-ip=40.107.20.73; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=vZh9s3Mz; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of felix.moessbauer@siemens.com designates 40.107.20.73 as permitted sender) smtp.mailfrom=felix.moessbauer@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f41yRQyAbBm5uPSS5F92e6srkT02drHQIF0D58kSnvGR7xD6souINa7NRUYKGb5Ll3Us0Z9Q2tlbqdz4vQBMgiqHz0XHUyLts3njeImDM5UiiKK2qdqJvQZbDdZhuK+rTpWyyxDnoS93iwqaFxYpMwlzVtYINGlwpX4prbSe2U/ICWJTTXgZR7BHARa996vmS+bT0gw7gc5bGQ/iDMo9tixxvH/bqG+M32FaZnCFX5bPRiPSrYqFS4dnajJptJCYaGkA1sbGR6YPCjWlR2Z/xg1CngWtMEgISHmef8tZacJyAAMedVAAQKVRBD2+/KX6Gdto88yfXi9ViL7MXYOKuA== 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=RjDfr5y7RWGLRkYAzatpUxjkgTqj3T254OgY2L77fFI=; b=Zh73KpkD0UY1stCqgq/4gcC1umkoe7rLOYzTFdkZe9M6mPEA/dzCcgTAKlgwtLw7TrRAe3v/pF6IWIYNMtF1B+MHfDHAul08cr2ug3ZXxj/1jmvqx5TfhMvmRGkUGXZvt7p5POQaNnf6gx/vmdOSgAlIBOJuklFDDh2iAxs/+cIJtClQD+kE/gMJLdLVe/iheukEIr/auyBI9vpA5kUPHtAJSE/lTrMpuhJwkmXfdADK/iU2xAyQAjHq+S7MSxLl1yO9dB6UNy+PzvGUAB2GKQV6etQxQXo9rCMtVqang9FJgObzwNjMfEMgEjcEHp0eXzVpmLtzzjGG2KxiknBZFw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 194.138.21.73) smtp.rcpttodomain=googlegroups.com smtp.mailfrom=siemens.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=siemens.com; dkim=none (message not signed); 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=RjDfr5y7RWGLRkYAzatpUxjkgTqj3T254OgY2L77fFI=; b=vZh9s3Mzcqds9sGr55vuU4A2lPbmTYRgBNEQUi7nzi0HzB1GPEuVioZuOJA65OHb/X1/WlxoEEUEivOg2Z+TprJVD4bZsmb2ofw++H3KHX/wyRYcv1RL9ceoJd2ZiAgfCzRwn4mbdOKf6t6paG9/94KQjL2Ykm+QgKoyPVik9Els0A4egV5U9nGLLFNnttEO7NmX/H8hiegFG1rxEqr0HSiF1LAHtE7pWYlmokzghNNAIrULBnL0pj8t9AQ9DtsZfPRBF6fFOCEuwlhPhSt8VfAEAiW30V2upa/GXltu256ds0cNDAfpZ+lCW2/WHANPJXHZOwp9KM6Xcs7SJnaZ9w== Received: from SV0P279CA0006.NORP279.PROD.OUTLOOK.COM (2603:10a6:f10:11::11) by DU0PR10MB5430.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:10:329::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4844.15; Tue, 4 Jan 2022 13:01:56 +0000 Received: from HE1EUR01FT010.eop-EUR01.prod.protection.outlook.com (2603:10a6:f10:11:cafe::e8) by SV0P279CA0006.outlook.office365.com (2603:10a6:f10:11::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4844.13 via Frontend Transport; Tue, 4 Jan 2022 13:01:56 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 194.138.21.73) smtp.mailfrom=siemens.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=siemens.com; Received-SPF: Pass (protection.outlook.com: domain of siemens.com designates 194.138.21.73 as permitted sender) receiver=protection.outlook.com; client-ip=194.138.21.73; helo=hybrid.siemens.com; Received: from hybrid.siemens.com (194.138.21.73) by HE1EUR01FT010.mail.protection.outlook.com (10.152.0.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4844.14 via Frontend Transport; Tue, 4 Jan 2022 13:01:55 +0000 Received: from DEMCHDC8A1A.ad011.siemens.net (139.25.226.107) by DEMCHDC9SNA.ad011.siemens.net (194.138.21.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.17; Tue, 4 Jan 2022 14:01:54 +0100 Received: from MD1T0KAC-VM.ad001.siemens.net (139.25.68.224) by DEMCHDC8A1A.ad011.siemens.net (139.25.226.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.17; Tue, 4 Jan 2022 14:01:54 +0100 From: Felix Moessbauer To: CC: , , "Felix Moessbauer" Subject: [PATCH v3 1/3] add support for debian build profiles and options Date: Tue, 4 Jan 2022 14:01:28 +0100 Message-ID: <20220104130130.777924-2-felix.moessbauer@siemens.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220104130130.777924-1-felix.moessbauer@siemens.com> References: <20220104130130.777924-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Return-Path: felix.moessbauer@siemens.com X-Originating-IP: [139.25.68.224] X-ClientProxiedBy: DEMCHDC89YA.ad011.siemens.net (139.25.226.104) To DEMCHDC8A1A.ad011.siemens.net (139.25.226.107) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cde70d22-d437-45ce-c8b3-08d9cf8262c2 X-MS-TrafficTypeDiagnostic: DU0PR10MB5430:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bbbNfprXnRgR8wX2A30tCGRUIzCDMtjGS2y2WDZ/EGAJAV3tAChYPT2X0Bl+5rM/VAM4ffY9CJcDNtLLaZ9EkhWwiTZOwKTeAXKM7kzm5eTOS9uvin0j2qLZy4i1OOzg80nawP0RxH9Z5QmYdteDRscgQPmCN/e5su/Qy71r6490i+lcvXwE9/WcQlOlnVglJuBuR4hbEvWqmflRVVUGggvopEV1vkhqvLk0sh8GTfn4vXOM34U33xmY5t4HqfvuD3zBL7stqq5a37J6PMW+WGADdsl5egq43cZ1rzsOpUX+3nyjE/CGMKuph87vxFBJn+rbHTjvTIPGdPHyHWbO3ckDLF17B67ZRImkbjwoFrco+ucjRlRxQmAGKKES2VndtSJe3APgXTaP+3yH4uXeOFT7KM2wxu5u5Qe8NUCRyDbcaszRzCOQcfnUO9+4am56C5IaI/4zgo01i94eeg6sjeTwL5I9Snb8I8Vivbop9edIMgyVB6j9lm0j7AiKYSxT20rnzl9w++oNyhjKfjV2bvL6g3HP7Vby3DqIfGprw7TyOHHotqw8pRSz1a/o4y4nEVkAc3vpFVjDC5fj7Z0uFSiJgkKrfyiW36Tp02spIuSU5mIpQfGgKllY2gKp0RNcYoyznTx6MdWPEx+u9HMZ/bo4UC68aM78gnO8xFWZeUOe2hs7w7qaHcModa0+RVCDps5g9Y+RucY+YjARvyiDP21HFty/xYbNtvXNxvZ052FuWGXqkj8YBv9OiKjb/6mZDlYHxEOuvsJ2sj8oArRivrmPaYRp7yv/TaOayhTPnS4= X-Forefront-Antispam-Report: CIP:194.138.21.73;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:hybrid.siemens.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(4636009)(46966006)(36840700001)(40470700002)(2906002)(36860700001)(82960400001)(2616005)(956004)(70206006)(26005)(44832011)(508600001)(316002)(8676002)(82310400004)(186003)(70586007)(16526019)(8936002)(54906003)(336012)(36756003)(40460700001)(81166007)(6666004)(4326008)(83380400001)(6916009)(5660300002)(86362001)(356005)(107886003)(47076005)(1076003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2022 13:01:55.8329 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cde70d22-d437-45ce-c8b3-08d9cf8262c2 X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=38ae3bcd-9579-4fd4-adda-b42e1495d55a;Ip=[194.138.21.73];Helo=[hybrid.siemens.com] X-MS-Exchange-CrossTenant-AuthSource: HE1EUR01FT010.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR10MB5430 X-TUID: mBEjatBZIHDz This patch adds the bitbake variables DEB_BUILD_PROFILES and DEB_BUILD_OPTIONS. These are used to define the respective environment variables. When cross-compiling, "cross" is added to the DEB_BUILD_PROFILES environment variable. Signed-off-by: Felix Moessbauer --- RECIPE-API-CHANGELOG.md | 9 +++++++++ meta/classes/dpkg-base.bbclass | 16 ++++++++++++++++ meta/classes/dpkg.bbclass | 4 +++- 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md index 3bbb42a9..65a1d9e4 100644 --- a/RECIPE-API-CHANGELOG.md +++ b/RECIPE-API-CHANGELOG.md @@ -314,3 +314,12 @@ The "NAME" used to be rather static and the TAG was always "latest", now the val ### Renamed variable CONTAINER_FORMATS to CONTAINER_IMAGE_FORMATS The meaning remains the same, just the name changed. +### Introduce debian build profiles + +All recipes that inherit from dpkg and dpkg-base can utilize the variables DEB_BUILD_PROFILES and DEB_BUILD_OPTIONS. +The bitbake variable defines the respective environment variable which is available in `do_install_builddeps` and `do_dpkg_build`. +When cross compiling, `cross` is added to the DEB_BUILD_PROFILES environment variable. + +For a list of well-known Debian build profiles and common practices, we refer to Debian's BuildProfileSpec. + + diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index cb5ce4a9..ebf67ebc 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -13,6 +13,8 @@ inherit deb-dl-dir DEPENDS ?= "" DEPENDS_append_riscv64 = "${@' crossbuild-essential-riscv64' if d.getVar('ISAR_CROSS_COMPILE', True) == '1' and d.getVar('PN') != 'crossbuild-essential-riscv64' else ''}" +DEB_BUILD_PROFILES ?= "" +DEB_BUILD_OPTIONS ?= "" python do_adjust_git() { import subprocess @@ -201,7 +203,20 @@ dpkg_runbuild() { die "This should never be called, overwrite it in your derived class" } +def isar_export_build_settings(d): + import os + deb_build_profiles = os.environ['DEB_BUILD_PROFILES'] if 'DEB_BUILD_PROFILES' in os.environ else '' + deb_build_profiles += ' ' + d.getVar('DEB_BUILD_PROFILES', True) + if d.getVar("ISAR_CROSS_COMPILE") == "1": + deb_build_profiles += ' cross' + os.environ['DEB_BUILD_PROFILES'] = deb_build_profiles.strip() + + deb_build_options = os.environ['DEB_BUILD_OPTIONS'] if 'DEB_BUILD_OPTIONS' in os.environ else '' + deb_build_options += ' ' + d.getVar('DEB_BUILD_OPTIONS', True) + os.environ['DEB_BUILD_OPTIONS'] = deb_build_options.strip() + python do_dpkg_build() { + isar_export_build_settings(d) lock = bb.utils.lockfile(d.getVar("REPO_ISAR_DIR") + "/isar.lock", shared=True) bb.build.exec_func("dpkg_do_mounts", d) @@ -279,6 +294,7 @@ python do_devshell() { isar_export_proxies(d) isar_export_ccache(d) + isar_export_build_settings(d) buildchroot = d.getVar('BUILDCHROOT_DIR') pp_pps = os.path.join(d.getVar('PP'), d.getVar('PPS')) diff --git a/meta/classes/dpkg.bbclass b/meta/classes/dpkg.bbclass index 27fe84f4..67d63813 100644 --- a/meta/classes/dpkg.bbclass +++ b/meta/classes/dpkg.bbclass @@ -9,10 +9,12 @@ PACKAGE_ARCH ?= "${DISTRO_ARCH}" do_install_builddeps() { dpkg_do_mounts E="${@ isar_export_proxies(d)}" + E="${@ isar_export_build_settings(d)}" distro="${DISTRO}" if [ ${ISAR_CROSS_COMPILE} -eq 1 ]; then - distro="${HOST_DISTRO}" + distro="${HOST_DISTRO}" fi + deb_dl_dir_import "${BUILDCHROOT_DIR}" "${distro}" sudo -E chroot ${BUILDCHROOT_DIR} /isar/deps.sh \ ${PP}/${PPS} ${PACKAGE_ARCH} --download-only -- 2.30.2