[2/2] DONOTMERGE: testcase for transient native dependency

Message ID 20251103154223.985951-3-anaumann@emlix.com
State Under Review
Headers show
Series Prevent adding unneeded package variants to recursive dependency chain | expand

Commit Message

Andreas Naumann Nov. 3, 2025, 3:42 p.m. UTC
Create a dependency chain as follows:
image -> native all package (adduser) -> native any package (gss)
Since gss is broken for crosscompile atm, this will trigger a build failure
if the -native variant is not handed down the dependency chain properly and
somehow ends up building gss for the target.

Signed-off-by: Andreas Naumann <anaumann@emlix.com>
---
 meta-isar/recipes-app/adduser/adduser.bb         | 6 ++++++
 meta-isar/recipes-app/gss/gss.bb                 | 5 +++++
 meta-isar/recipes-core/images/isar-image-base.bb | 2 ++
 3 files changed, 13 insertions(+)
 create mode 100644 meta-isar/recipes-app/adduser/adduser.bb
 create mode 100644 meta-isar/recipes-app/gss/gss.bb

Comments

MOESSBAUER, Felix Nov. 3, 2025, 3:52 p.m. UTC | #1
On Mon, 2025-11-03 at 16:42 +0100, 'Andreas Naumann' via isar-users
wrote:
> Create a dependency chain as follows:
> image -> native all package (adduser) -> native any package (gss)
> Since gss is broken for crosscompile atm, this will trigger a build failure
> if the -native variant is not handed down the dependency chain properly and
> somehow ends up building gss for the target.

Many thanks for this testcase. With that, I was able to cross-check if
my fixes of "handle DPKG_ARCH=all case for transitive deps" properly
work (I will send them soon). Feel free to add this test to the meta-
test layer so we can use it in the CI as well.

PS: This patch depends on "This sets proxy environment variables to be
passed to schroot."

Best regards,
Felix

> 
> Signed-off-by: Andreas Naumann <anaumann@emlix.com>
> ---
>  meta-isar/recipes-app/adduser/adduser.bb         | 6 ++++++
>  meta-isar/recipes-app/gss/gss.bb                 | 5 +++++
>  meta-isar/recipes-core/images/isar-image-base.bb | 2 ++
>  3 files changed, 13 insertions(+)
>  create mode 100644 meta-isar/recipes-app/adduser/adduser.bb
>  create mode 100644 meta-isar/recipes-app/gss/gss.bb
> 
> diff --git a/meta-isar/recipes-app/adduser/adduser.bb b/meta-isar/recipes-app/adduser/adduser.bb
> new file mode 100644
> index 0000000000..d513274710
> --- /dev/null
> +++ b/meta-isar/recipes-app/adduser/adduser.bb
> @@ -0,0 +1,6 @@
> +inherit dpkg
> +
> +DPKG_ARCH = "all"
> +SRC_URI = "apt://${PN}"
> +
> +DEPENDS:append = "gss"
> diff --git a/meta-isar/recipes-app/gss/gss.bb b/meta-isar/recipes-app/gss/gss.bb
> new file mode 100644
> index 0000000000..8de670406c
> --- /dev/null
> +++ b/meta-isar/recipes-app/gss/gss.bb
> @@ -0,0 +1,5 @@
> +inherit dpkg
> +
> +SRC_URI = "apt://${PN}"
> +
> +DEB_BUILD_OPTIONS += "${@ 'nocheck' if bb.utils.to_boolean(d.getVar('ISAR_CROSS_COMPILE')) else '' }"
> diff --git a/meta-isar/recipes-core/images/isar-image-base.bb b/meta-isar/recipes-core/images/isar-image-base.bb
> index b381d85931..d3d78e6d58 100644
> --- a/meta-isar/recipes-core/images/isar-image-base.bb
> +++ b/meta-isar/recipes-core/images/isar-image-base.bb
> @@ -11,3 +11,5 @@ LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260
>  PV = "1.0"
>  
>  inherit image
> +
> +DEPENDS += "adduser-native"
> -- 
> 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/20251103154223.985951-3-anaumann%40emlix.com.
Andreas Naumann Nov. 3, 2025, 5 p.m. UTC | #2
Am 03.11.25 um 16:52 schrieb MOESSBAUER, Felix:
> On Mon, 2025-11-03 at 16:42 +0100, 'Andreas Naumann' via isar-users
> wrote:
>> Create a dependency chain as follows:
>> image -> native all package (adduser) -> native any package (gss)
>> Since gss is broken for crosscompile atm, this will trigger a build failure
>> if the -native variant is not handed down the dependency chain properly and
>> somehow ends up building gss for the target.
> Many thanks for this testcase. With that, I was able to cross-check if
> my fixes of "handle DPKG_ARCH=all case for transitive deps" properly
> work (I will send them soon). Feel free to add this test to the meta-
> test layer so we can use it in the CI as well.

Thanks, but once gss crosscompile gets fixed, the test is broken. Might be
better to supply a stable broken package all by ourselves.

>
> PS: This patch depends on "This sets proxy environment variables to be
> passed to schroot."

I didnt have that applied.

regards,
Andreas

>
> Best regards,
> Felix
>
>> Signed-off-by: Andreas Naumann <anaumann@emlix.com>
>> ---
>>   meta-isar/recipes-app/adduser/adduser.bb         | 6 ++++++
>>   meta-isar/recipes-app/gss/gss.bb                 | 5 +++++
>>   meta-isar/recipes-core/images/isar-image-base.bb | 2 ++
>>   3 files changed, 13 insertions(+)
>>   create mode 100644 meta-isar/recipes-app/adduser/adduser.bb
>>   create mode 100644 meta-isar/recipes-app/gss/gss.bb
>>
>> diff --git a/meta-isar/recipes-app/adduser/adduser.bb b/meta-isar/recipes-app/adduser/adduser.bb
>> new file mode 100644
>> index 0000000000..d513274710
>> --- /dev/null
>> +++ b/meta-isar/recipes-app/adduser/adduser.bb
>> @@ -0,0 +1,6 @@
>> +inherit dpkg
>> +
>> +DPKG_ARCH = "all"
>> +SRC_URI = "apt://${PN}"
>> +
>> +DEPENDS:append = "gss"
>> diff --git a/meta-isar/recipes-app/gss/gss.bb b/meta-isar/recipes-app/gss/gss.bb
>> new file mode 100644
>> index 0000000000..8de670406c
>> --- /dev/null
>> +++ b/meta-isar/recipes-app/gss/gss.bb
>> @@ -0,0 +1,5 @@
>> +inherit dpkg
>> +
>> +SRC_URI = "apt://${PN}"
>> +
>> +DEB_BUILD_OPTIONS += "${@ 'nocheck' if bb.utils.to_boolean(d.getVar('ISAR_CROSS_COMPILE')) else '' }"
>> diff --git a/meta-isar/recipes-core/images/isar-image-base.bb b/meta-isar/recipes-core/images/isar-image-base.bb
>> index b381d85931..d3d78e6d58 100644
>> --- a/meta-isar/recipes-core/images/isar-image-base.bb
>> +++ b/meta-isar/recipes-core/images/isar-image-base.bb
>> @@ -11,3 +11,5 @@ LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260
>>   PV = "1.0"
>>   
>>   inherit image
>> +
>> +DEPENDS += "adduser-native"
>> -- 
>> 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/20251103154223.985951-3-anaumann%40emlix.com.

Patch

diff --git a/meta-isar/recipes-app/adduser/adduser.bb b/meta-isar/recipes-app/adduser/adduser.bb
new file mode 100644
index 0000000000..d513274710
--- /dev/null
+++ b/meta-isar/recipes-app/adduser/adduser.bb
@@ -0,0 +1,6 @@ 
+inherit dpkg
+
+DPKG_ARCH = "all"
+SRC_URI = "apt://${PN}"
+
+DEPENDS:append = "gss"
diff --git a/meta-isar/recipes-app/gss/gss.bb b/meta-isar/recipes-app/gss/gss.bb
new file mode 100644
index 0000000000..8de670406c
--- /dev/null
+++ b/meta-isar/recipes-app/gss/gss.bb
@@ -0,0 +1,5 @@ 
+inherit dpkg
+
+SRC_URI = "apt://${PN}"
+
+DEB_BUILD_OPTIONS += "${@ 'nocheck' if bb.utils.to_boolean(d.getVar('ISAR_CROSS_COMPILE')) else '' }"
diff --git a/meta-isar/recipes-core/images/isar-image-base.bb b/meta-isar/recipes-core/images/isar-image-base.bb
index b381d85931..d3d78e6d58 100644
--- a/meta-isar/recipes-core/images/isar-image-base.bb
+++ b/meta-isar/recipes-core/images/isar-image-base.bb
@@ -11,3 +11,5 @@  LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260
 PV = "1.0"
 
 inherit image
+
+DEPENDS += "adduser-native"