From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Tue, 18 Nov 2025 15:38:01 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f62.google.com (mail-lf1-f62.google.com [209.85.167.62]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 5AIEc0W4031352 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 18 Nov 2025 15:38:00 +0100 Received: by mail-lf1-f62.google.com with SMTP id 2adb3069b0e04-5957ecd65c8sf5083928e87.0 for ; Tue, 18 Nov 2025 06:38:00 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1763476675; cv=pass; d=google.com; s=arc-20240605; b=XNXuNwQ6OGhnDkgLnjtvjVj9o+BrJ9zAQWzPIqWQl7Gt8/5WQ/q+T4nfsdJ3hOykOS bcevJUYLWeqCiVxuIQOuCTEdDlqswJ7XTy0jv/wOIJ/co8amNupvx8iLIK2RTMhSNngm EMghodhkGQ9QpNY6dTcRCLm7JVsAQqphO2yatxXaWeFvJwJ3Ip5LaERL8w/UfJvgOMXQ qsx+ChYqXJYZA381Cis83gLoIQUNop5QywWTGyBxEkPVggAzBCpIB43jYVNPBqkJhdv4 TGkTza0099riue+93twfhVpryJD9hNuLWVLJtwZEo4mwG39GYUIRo5ygDaKFTqBeSHi7 +JfQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=ectaGSJn9F7eyAja9lZrBnItvz7tQrj36zUC20kNezQ=; fh=AuDPPKfRnEXomrQHvkPoaayAWyvH2ALGiX8ND3By75I=; b=gajmvmG2GRZXoYUcpY04SN+W2KGgso4xUulN1SfEeTwyj/RBcCidO1P4to3H9yHGiW 3wZpyN1dqn56HY7iAarolbryS/8AUa4rHHnQlVFslnNXybrw+mAnRBs10RUdrlpMqLbD hVgPCBd2t9qNwqP2DWTq+lOwjHewmgWV7qnYrcyIE7FTvmnZEVtvEkxx9QLZrGXbG5BU jLN8VNsUEqCeb8AtSE6qF7T6Q19n8kAwVBL7mecuq6sOwNfxBOrOtxsRiIauz8kSBQbj Fwi2G5uvNvnl6JyWueVLuM9zySnAM8qVTYOmFIIk80BVdNPskFCRQ/FLGMptsBrcFFy7 vCvg==; darn=ilbers.de ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; spf=pass (google.com: domain of anaumann@emlix.com designates 178.63.209.131 as permitted sender) smtp.mailfrom=anaumann@emlix.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=emlix.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1763476675; x=1764081475; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to; bh=ectaGSJn9F7eyAja9lZrBnItvz7tQrj36zUC20kNezQ=; b=eWfxPder07QRTjnvpeGvSC8NiyUu5wh2TnzuXPIaisYs56xCYtNEamB1sN2f7xy+Hx 7GOrn50YxIC+MXCYYxZT+PVmwHxj2eWAp29Qf2qvXrg46EWZ5gQL8NvWbCIbrPhTcpNT 4GlcePp5VTejeXjZ/E/Trn5fCzfzvmxrx9GUelv9RFAzXK8Px5W5+czsMWzSHsyhDymo UVgLMPm4wwGtAZkMWrB41RCcZc9rvuq1R6BOBVVvZFrzXQVNTCJ1Fa7F0piQ6SzuJb2l BX6rbl4ArlSRlk08rdBcJuvRtvHRynY+KL0xWTbxOc6ON/SQx2qwY5GvpywaSze+xZjQ gyOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763476675; x=1764081475; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ectaGSJn9F7eyAja9lZrBnItvz7tQrj36zUC20kNezQ=; b=RPFRpN1UARjr/ifM7ZuvMHcHtkNxja9qNBr62Ih4jL+T8WQBPFroyYpkrynCqoF/PJ rcjapzMvPNhGEGqk6k51EfkQtTwLx3wGIsLx5ofLie1z5sdHr1vHFdyu2x0lq8f4KGNt GjmydYytZ6eP6FzmAN4XXRv0DNc1pCoZG2alXtEuQJNTN5pp+fzjHqQKOGB3NaIXK/tN qL4ucfOW978w7POP9uVgzSUdaKNoGnz6H0wOmsovsThPICwZwag0kg4stQ+VoACly2wk +pqJ6oDYWuhVI3qUzO6vRMoYmsTAaidWf4SHDGN4CUrmc0/82Xno13ooJKPtw2hjbQKt hFKg== X-Forwarded-Encrypted: i=2; AJvYcCWSFZHMyAeyrNSnrobJ8Op+KubKLcDJbqRspXd2g4Bvgq5bJhTBlROVHlqB9PXMLpe3OcZb@ilbers.de X-Gm-Message-State: AOJu0YyxPiX5MCpgDkcwIhks88VSpo5Qfjn5OdQeVwSaYwjf2UwOJ4Yb i258nfViy0Rv7YH7+rJWenfPEQh/PZd463ss2GEG5XEhYk6z1rvQqY9h X-Google-Smtp-Source: AGHT+IHrB6RiRajYs10pPhgqHIhneRzqgsjLB3fcCwhKLXCTlpE3psrGPUlHjlcX8QSdJ01baDF8Yw== X-Received: by 2002:a05:6512:4028:b0:594:34c4:a33a with SMTP id 2adb3069b0e04-595841b4b06mr6054460e87.19.1763476674368; Tue, 18 Nov 2025 06:37:54 -0800 (PST) X-BeenThere: isar-users@googlegroups.com; h="Ae8XA+YHEOmRgHwufKIIgstyNeeEdAEYu7hCQUBhsfS2oD7JNg==" Received: by 2002:ac2:4bc6:0:b0:595:9678:f830 with SMTP id 2adb3069b0e04-5959678f88fls875391e87.1.-pod-prod-08-eu; Tue, 18 Nov 2025 06:37:51 -0800 (PST) X-Received: by 2002:a05:6512:15a2:b0:595:7de0:cb1d with SMTP id 2adb3069b0e04-595842261f9mr5679527e87.53.1763476671427; Tue, 18 Nov 2025 06:37:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1763476671; cv=none; d=google.com; s=arc-20240605; b=VHUqs/wQ8R34+/Z4HTJA/UEoqciKElXyGkDeduvIhoV69i/MhvgBBxnjJvtiLR7olA tege727bI0TJJMscRtau0IWn/pdFvEBr+/BTKa6h//qevWQWiFm46TCm67+rXs2arx0T Eyg9nkkzErNpPeE6a57evjokcHVVO3t0qMmUGANMZC9Md1UfbeGs7sp4NCL55Zjo6wzA /tpLRcpCMmOr5XU+n7Xx46TTEDsLXxbaSY71SMBoKozN0gSJUtJzIRBq++jVwlYgmAwq 1X2Ym/Pd25ZG4rTPJ631Nr+4ApZxwCd5VDOTZRKg3nSsdUkIYhrNpYSP2zm0lz8Hjcm/ r9Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature:dkim-signature; bh=FwTU+hK+WW3kmmJJ3F0AOCrhC4sTfjF2pF00mcmuF8c=; fh=h/3u+BnesbohrVPBf25WVa1dvt5UrhWAO6IFZkZXrvU=; b=S83+/FTB2fARFyEMBegCfPI+nkzqTnQXNktd9oIO+/7RV/9Zk02lwjK8XZXmou3QLe FCGIUY5W/RN9OEzk81NCRBdW72Rx7viy02c02m97CPCnTRTGF5mSDedM8Q8ZZ8QQPZuJ aIjMVyflh0DMeCw9hC4koT0LZS9L/BsWKQHaBMdUsVUsSJ6zyFRYSyX2a2IJ8wadAPxi Zsr1OICrRICOR+/OtpawSSs/crE/e6+JsFOPCJB2nR+Ytf//hEm+TGCncaZePrLVymXV HlTrdOUjhygq70bQBD9Lpwnv3XT0RFWK8SZ0B1H3qtccYsFnhuIVfPzNpccZKLoPLw5l kZWw==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; spf=pass (google.com: domain of anaumann@emlix.com designates 178.63.209.131 as permitted sender) smtp.mailfrom=anaumann@emlix.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=emlix.com Received: from mx1.emlix.com (mx1.emlix.com. [178.63.209.131]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-59580a373e6si273688e87.0.2025.11.18.06.37.51 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Nov 2025 06:37:51 -0800 (PST) Received-SPF: pass (google.com: domain of anaumann@emlix.com designates 178.63.209.131 as permitted sender) client-ip=178.63.209.131; Received: from mx1.emlix.com (localhost [127.0.0.1]) by mx1.emlix.com (Postfix) with ESMTP id 2996C5F7F9 for ; Tue, 18 Nov 2025 15:37:45 +0100 (CET) Received: from mailer.emlix.com (p5098be52.dip0.t-ipconnect.de [80.152.190.82]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.emlix.com (Postfix) with ESMTPS id 0FA1E5FAE5 for ; Tue, 18 Nov 2025 15:37:45 +0100 (CET) From: "'Andreas Naumann' via isar-users" To: isar-users@googlegroups.com Cc: Andreas Naumann Subject: [PATCH v2 1/3] test: Add test to check correct multiarch dependency propagation Date: Tue, 18 Nov 2025 15:35:21 +0100 Message-ID: <20251118143523.2326879-2-anaumann@emlix.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251118143523.2326879-1-anaumann@emlix.com> References: <20251118143523.2326879-1-anaumann@emlix.com> MIME-Version: 1.0 X-Virus-Scanned: ClamAV using ClamSMTP X-Original-Sender: anaumann@emlix.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; dkim=pass header.i=@emlix.com header.s=20250930 header.b=l4BK9T3z; spf=pass (google.com: domain of anaumann@emlix.com designates 178.63.209.131 as permitted sender) smtp.mailfrom=anaumann@emlix.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=emlix.com X-Original-From: Andreas Naumann Reply-To: Andreas Naumann Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: 1pAYyOVWDz6N Create two transitive dependency chains with simple dpkg-raw packages as follows: image -> all package -> any package imager -> all package as -native -> any package as -native Assert that - the all package is always build for the host architecture - the dependent any package in the cross chain is built for target arch only - the dependent any package in the native chain is built for host arch only by detecting any undesired host/target architecture combination in the override_dh_auto_configure function and exiting with an error. Signed-off-by: Andreas Naumann --- .../recipes-app/test-all-depnocross/files/rules | 11 +++++++++++ .../test-all-depnocross/test-all-depnocross.bb | 11 +++++++++++ .../recipes-app/test-all-deponlycross/files/rules | 11 +++++++++++ .../test-all-deponlycross/test-all-deponlycross.bb | 11 +++++++++++ meta-test/recipes-app/test-any-nocross/files/rules | 11 +++++++++++ .../test-any-nocross/test-any-nocross.bb | 11 +++++++++++ .../recipes-app/test-any-onlycross/files/rules | 11 +++++++++++ .../test-any-onlycross/test-any-onlycross.bb | 13 +++++++++++++ testsuite/citest.py | 11 +++++++++++ 9 files changed, 101 insertions(+) create mode 100644 meta-test/recipes-app/test-all-depnocross/files/rules create mode 100644 meta-test/recipes-app/test-all-depnocross/test-all-depnocross.bb create mode 100644 meta-test/recipes-app/test-all-deponlycross/files/rules create mode 100644 meta-test/recipes-app/test-all-deponlycross/test-all-deponlycross.bb create mode 100644 meta-test/recipes-app/test-any-nocross/files/rules create mode 100644 meta-test/recipes-app/test-any-nocross/test-any-nocross.bb create mode 100644 meta-test/recipes-app/test-any-onlycross/files/rules create mode 100644 meta-test/recipes-app/test-any-onlycross/test-any-onlycross.bb diff --git a/meta-test/recipes-app/test-all-depnocross/files/rules b/meta-test/recipes-app/test-all-depnocross/files/rules new file mode 100644 index 00000000..6640cf23 --- /dev/null +++ b/meta-test/recipes-app/test-all-depnocross/files/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f +%: + dh \$@ + +# Detect cross-compilation and fail if so +override_dh_auto_configure: + @if [ "$(DEB_BUILD_ARCH)" != "$(DEB_HOST_ARCH)" ]; then \ + echo "Cross-compilation detected! This is an \"all\" package."; \ + exit 1; \ + fi + dh_auto_configure diff --git a/meta-test/recipes-app/test-all-depnocross/test-all-depnocross.bb b/meta-test/recipes-app/test-all-depnocross/test-all-depnocross.bb new file mode 100644 index 00000000..86ae3847 --- /dev/null +++ b/meta-test/recipes-app/test-all-depnocross/test-all-depnocross.bb @@ -0,0 +1,11 @@ +# Test package using dpkg-raw + +SRC_URI = "file://rules" + +inherit dpkg-raw + +DEPENDS = "test-any-nocross" + +do_install() { + bbnote "Test \"all\" package which depends on an any package." +} diff --git a/meta-test/recipes-app/test-all-deponlycross/files/rules b/meta-test/recipes-app/test-all-deponlycross/files/rules new file mode 100644 index 00000000..6640cf23 --- /dev/null +++ b/meta-test/recipes-app/test-all-deponlycross/files/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f +%: + dh \$@ + +# Detect cross-compilation and fail if so +override_dh_auto_configure: + @if [ "$(DEB_BUILD_ARCH)" != "$(DEB_HOST_ARCH)" ]; then \ + echo "Cross-compilation detected! This is an \"all\" package."; \ + exit 1; \ + fi + dh_auto_configure diff --git a/meta-test/recipes-app/test-all-deponlycross/test-all-deponlycross.bb b/meta-test/recipes-app/test-all-deponlycross/test-all-deponlycross.bb new file mode 100644 index 00000000..6af762b9 --- /dev/null +++ b/meta-test/recipes-app/test-all-deponlycross/test-all-deponlycross.bb @@ -0,0 +1,11 @@ +# Test all package using dpkg-raw + +SRC_URI = "file://rules" + +inherit dpkg-raw + +DEPENDS = "test-any-onlycross" + +do_install() { + bbnote "Test \"all\" package which depends on an any package." +} diff --git a/meta-test/recipes-app/test-any-nocross/files/rules b/meta-test/recipes-app/test-any-nocross/files/rules new file mode 100644 index 00000000..74d905b6 --- /dev/null +++ b/meta-test/recipes-app/test-any-nocross/files/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f +%: + dh \$@ + +# Detect cross-compilation and fail if so +override_dh_auto_configure: + @if [ "$(DEB_BUILD_ARCH)" != "$(DEB_HOST_ARCH)" ]; then \ + echo "Cross-compilation detected!"; \ + exit 1; \ + fi + dh_auto_configure diff --git a/meta-test/recipes-app/test-any-nocross/test-any-nocross.bb b/meta-test/recipes-app/test-any-nocross/test-any-nocross.bb new file mode 100644 index 00000000..6d0321ae --- /dev/null +++ b/meta-test/recipes-app/test-any-nocross/test-any-nocross.bb @@ -0,0 +1,11 @@ +# Test package using dpkg-raw, which breaks when trying to cross +# compile + +SRC_URI = "file://rules" + +inherit dpkg-raw +DPKG_ARCH = "any" + +do_install() { + bbnote "Test \"any\" package which fails crosscompile." +} diff --git a/meta-test/recipes-app/test-any-onlycross/files/rules b/meta-test/recipes-app/test-any-onlycross/files/rules new file mode 100644 index 00000000..02031f1a --- /dev/null +++ b/meta-test/recipes-app/test-any-onlycross/files/rules @@ -0,0 +1,11 @@ +#!/usr/bin/make -f +%: + dh \$@ + +# Detect native compilation and fail if so +override_dh_auto_configure: + if [ "$(DEB_BUILD_ARCH)" = "$(DEB_HOST_ARCH)" ]; then \ + echo "Native compilation detected!"; \ + exit 1; \ + fi + dh_auto_configure diff --git a/meta-test/recipes-app/test-any-onlycross/test-any-onlycross.bb b/meta-test/recipes-app/test-any-onlycross/test-any-onlycross.bb new file mode 100644 index 00000000..5b2eace6 --- /dev/null +++ b/meta-test/recipes-app/test-any-onlycross/test-any-onlycross.bb @@ -0,0 +1,13 @@ +# Test package using dpkg-raw, which breaks when trying to cross +# compile + +#MAINTAINER = "Your name here " + +SRC_URI = "file://rules" + +inherit dpkg-raw +DPKG_ARCH = "any" + +do_install() { + bbnote "Test \"any\" package which fails native compile." +} diff --git a/testsuite/citest.py b/testsuite/citest.py index f944ee4a..6f8e03cf 100755 --- a/testsuite/citest.py +++ b/testsuite/citest.py @@ -255,6 +255,17 @@ class CrossTest(CIBaseTest): self.init() self.perform_build_test(targets) + def test_cross_dependencies(self): + targets = [ + 'mc:qemuarm64-bookworm:isar-image-ci', + ] + + lines = [f"IMAGER_BUILD_DEPS:append = ' test-all-depnocross-native'", + f"IMAGE_INSTALL:append = ' test-all-deponlycross'", + ] + + self.init() + self.perform_build_test(targets, lines=lines) class KernelTests(CIBaseTest): """ -- 2.43.0 -- You received this message because you are subscribed to the Google Groups "isar-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/isar-users/20251118143523.2326879-2-anaumann%40emlix.com.