<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>16275</bug_id>
          
          <creation_ts>2026-05-01 08:26:08 +0000</creation_ts>
          <short_desc>Nothing PROVIDES &apos;libseccomp-native&apos;</short_desc>
          <delta_ts>2026-07-26 13:56:25 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>core</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>6.1</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>kweihmann</reporter>
          <assigned_to name="Richard Purdie">richard.purdie</assigned_to>
          <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>randy.macleod</cc>
    
    <cc>richard.purdie</cc>
    
    <cc>yoann.congal</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>No (bug/feature does not impact docs)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>105337</commentid>
    <comment_count>0</comment_count>
    <who name="">kweihmann</who>
    <bug_when>2026-05-01 08:26:08 +0000</bug_when>
    <thetext>Since 6b553a5042b9d5828a9da675ede16e10f06dae90 in master
&quot;base/bitbake.conf: Rework DISTRO_FEATURES and MACHINE_FEATURES default handling&quot;,
i get the following build error

ERROR: Nothing PROVIDES &apos;libseccomp-native&apos; (but virtual:native:/path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb DEPENDS on or otherwise requires it). Close matches:
  libcomps-native
  libsm-native
  libsoup-native
ERROR: Required build target &apos;glibc&apos; has no buildable providers.
Missing or unbuildable dependency chain was: [&apos;glibc&apos;, &apos;rpm-native&apos;, &apos;elfutils-native&apos;, &apos;libmicrohttpd-native&apos;, &apos;gnutls-native&apos;, &apos;libseccomp-native&apos;]

In before that was fine.
I guess having PACKAGE_CLASSES = &quot;package_rpm&quot; contributes to the problem.

seccomp is active in my custom distro.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105370</commentid>
    <comment_count>1</comment_count>
    <who name="Randy MacLeod">randy.macleod</who>
    <bug_when>2026-05-07 14:36:03 +0000</bug_when>
    <thetext>It&apos;s not surprising that you may have to make changes in your distro due to this commit.
The question is do you have a good reason to enable libseccomp-native and if so why?  seccomp is a distro feature and you maybe be filtering it as a native distro feature.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105371</commentid>
    <comment_count>2</comment_count>
    <who name="Randy MacLeod">randy.macleod</who>
    <bug_when>2026-05-07 14:36:55 +0000</bug_when>
    <thetext>See previous comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105374</commentid>
    <comment_count>3</comment_count>
    <who name="">kweihmann</who>
    <bug_when>2026-05-07 14:46:59 +0000</bug_when>
    <thetext>I do not set an native distro features.
The custom distro is basically

include poky.conf
DISTRO = &quot;something&quot;
DISTRO_FEATURES_DEFAULTS:remove = &quot;opengl ptest wayland vulkan pulseaudio&quot;
DISTRO_FEATURES = &quot;systemd ext2&quot;

which made it surprising to me that this error popped up.

What needs to be set to resolve this?

And no I do not need libseccomp-native for any reason</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105387</commentid>
    <comment_count>4</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2026-05-07 21:20:48 +0000</bug_when>
    <thetext>documentation.conf mentions:

DISTRO_FEATURES_DEFAULTS[doc] = &quot;The default set of distribution features, prior to any filtering. Usually you should leave this alone and modify DISTRO_FEATURES and/or DISTRO_FEATURES_OPTED_OUT.&quot;

so the :remove isn&apos;t really the preferred way to use it. Having said that, I&apos;m not sure it is the cause of the issue. I just tried your config and it worked for me:

$ bitbake-getvar -r gnutls-native PACKAGECONFIG
[...]
# pre-expansion value:
#   &quot;libidn libtasn1 ${@bb.utils.filter(&apos;DISTRO_FEATURES&apos;, &apos;seccomp&apos;, d)}&quot;
PACKAGECONFIG=&quot;libidn libtasn1 

and bitbake gnutls-native doesn&apos;t show the provides error.

There has to be something about your config which we&apos;re not seeing...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105388</commentid>
    <comment_count>5</comment_count>
    <who name="">kweihmann</who>
    <bug_when>2026-05-08 04:55:33 +0000</bug_when>
    <thetext>It&apos;s indeed something very weird and I have no idea why this is happening.

After some playing around here&apos;s the new testcase

distro.conf

include conf/distro/poky.conf

DISTRO_FEATURES_DEFAULTS:remove = &quot;opengl ptest wayland vulkan pulseaudio sysvinit&quot;
DISTRO_FEATURES:append = &quot; systemd usrmerge ${A}&quot;

results in

bitbake-getvar -r gnutls-native PACKAGECONFIG
#
# $PACKAGECONFIG [15 operations]
#   :append[pn-qemu-system-native] /mnt/ssd/build-sca-master/conf/local.conf:17
#     &quot; sdl&quot;
#   set /path/layer/openembedded-core/meta/conf/documentation.conf:311
#     [doc] &quot;This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis.&quot;
#   set /path/layer/openembedded-core/meta/conf/bitbake.conf:943
#     [vardepvalue] &quot;${PACKAGECONFIG}&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:33
#     [_defaultval] &quot;libidn libtasn1 ${@bb.utils.filter(&apos;DISTRO_FEATURES&apos;, &apos;seccomp&apos;, d)}&quot;
#   :append[class-native] /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:34
#     &quot; p11-kit&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:38
#     [seccomp] &quot;--with-libseccomp-prefix=${STAGING_DIR_HOST},ac_cv_libseccomp=no,libseccomp&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:39
#     [libidn] &quot;--with-idn,--without-idn,libidn2&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:40
#     [libtasn1] &quot;--without-included-libtasn1,--with-included-libtasn1,libtasn1&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:41
#     [p11-kit] &quot;--with-p11-kit,--without-p11-kit,p11-kit&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:42
#     [tpm] &quot;--with-tpm,--without-tpm,trousers&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:43
#     [fips] &quot;--enable-fips140-mode --with-libdl-prefix=${STAGING_DIR_HOST}&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:44
#     [dane] &quot;--enable-libdane,--disable-libdane,unbound&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:46
#     [brotli] &quot;--with-brotli,--without-brotli,brotli&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:47
#     [zlib] &quot;--with-zlib,--without-zlib,zlib&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:48
#     [zstd] &quot;--with-zstd,--without-zstd,zstd&quot;
# pre-expansion value:
#   &quot;libidn libtasn1 ${@bb.utils.filter(&apos;DISTRO_FEATURES&apos;, &apos;seccomp&apos;, d)} p11-kit&quot;
PACKAGECONFIG=&quot;libidn libtasn1 seccomp p11-kit&quot;

while 

include conf/distro/poky.conf

# Remove all audio and graphics related distro backfills
# we do not need them for our purposes
DISTRO_FEATURES_DEFAULTS:remove = &quot;opengl ptest wayland vulkan pulseaudio sysvinit&quot;
DISTRO_FEATURES:append = &quot; systemd usrmerge&quot;

bitbake-getvar -r gnutls-native PACKAGECONFI
#
# $PACKAGECONFIG [15 operations]
#   :append[pn-qemu-system-native] /mnt/ssd/build-sca-master/conf/local.conf:17
#     &quot; sdl&quot;
#   set /path/layer/openembedded-core/meta/conf/documentation.conf:311
#     [doc] &quot;This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis.&quot;
#   set /path/layer/openembedded-core/meta/conf/bitbake.conf:943
#     [vardepvalue] &quot;${PACKAGECONFIG}&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:33
#     [_defaultval] &quot;libidn libtasn1 ${@bb.utils.filter(&apos;DISTRO_FEATURES&apos;, &apos;seccomp&apos;, d)}&quot;
#   :append[class-native] /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:34
#     &quot; p11-kit&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:38
#     [seccomp] &quot;--with-libseccomp-prefix=${STAGING_DIR_HOST},ac_cv_libseccomp=no,libseccomp&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:39
#     [libidn] &quot;--with-idn,--without-idn,libidn2&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:40
#     [libtasn1] &quot;--without-included-libtasn1,--with-included-libtasn1,libtasn1&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:41
#     [p11-kit] &quot;--with-p11-kit,--without-p11-kit,p11-kit&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:42
#     [tpm] &quot;--with-tpm,--without-tpm,trousers&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:43
#     [fips] &quot;--enable-fips140-mode --with-libdl-prefix=${STAGING_DIR_HOST}&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:44
#     [dane] &quot;--enable-libdane,--disable-libdane,unbound&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:46
#     [brotli] &quot;--with-brotli,--without-brotli,brotli&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:47
#     [zlib] &quot;--with-zlib,--without-zlib,zlib&quot;
#   set /path/layer/openembedded-core/meta/recipes-support/gnutls/gnutls_3.8.12.bb:48
#     [zstd] &quot;--with-zstd,--without-zstd,zstd&quot;
# pre-expansion value:
#   &quot;libidn libtasn1 ${@bb.utils.filter(&apos;DISTRO_FEATURES&apos;, &apos;seccomp&apos;, d)} p11-kit&quot;
PACKAGECONFIG=&quot;libidn libtasn1  p11-kit&quot;

has no seccomp set.
Only difference is the undefined variable A (something similar I have in my custom distro)

Changing DISTRO_FEATURES_DEFAULTS:remove to DISTRO_FEATURES:remove yields the same results.

@Richard I&apos;m aware of the bad design choice of :remove, but it&apos;s an easy way for testing purposes to stay close to poky without the burden of some features, like graphics and ptests, if there&apos;s a better design that doesn&apos;t need to be constantly patched, I&apos;m open to hear about it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105390</commentid>
    <comment_count>6</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2026-05-08 06:47:06 +0000</bug_when>
    <thetext>I worked out what was going on, there is a patch on list, &quot;utils: Handle unexpanded variables in DISTRO_FEATURES&quot; which detects the issue and shows warnings as well as working around the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105391</commentid>
    <comment_count>7</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2026-05-08 06:47:52 +0000</bug_when>
    <thetext>Rather than use :remove with DISTRO_FEATURES you should be able to use DISTRO_FEATURES_OPTED_OUT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105393</commentid>
    <comment_count>8</comment_count>
    <who name="">kweihmann</who>
    <bug_when>2026-05-08 07:27:30 +0000</bug_when>
    <thetext>Thanks Richard</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105494</commentid>
    <comment_count>9</comment_count>
    <who name="Yoann Congal">yoann.congal</who>
    <bug_when>2026-05-19 15:57:24 +0000</bug_when>
    <thetext>Patch merged: https://git.openembedded.org/openembedded-core/commit/?id=7782a9bfc4e2ddc67185ac3f5ed14c5268f078b0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>106339</commentid>
    <comment_count>10</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2026-07-26 13:56:25 +0000</bug_when>
    <thetext>Fixed in the above commit</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>