<?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>12160</bug_id>
          
          <creation_ts>2017-10-03 08:45:14 +0000</creation_ts>
          <short_desc>Exclude packages from recipes</short_desc>
          <delta_ts>2019-11-21 19:39:56 +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>configuration</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>Future</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ola Nilsson">ola.x.nilsson</reporter>
          <assigned_to name="Unassigned">unassigned</assigned_to>
          <cc>bluelightning</cc>
    
    <cc>richard.purdie</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Yes (doc changes required)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>77296</commentid>
    <comment_count>0</comment_count>
    <who name="Ola Nilsson">ola.x.nilsson</who>
    <bug_when>2017-10-03 08:45:14 +0000</bug_when>
    <thetext>It would be useful to have a way to exclude packages from a recipe, like LICENSE_EXCLUSION except configurable per recipe based on DISTRO_FEATURES and similar.

Even better would be if the RDEPENDS of excluded packages could be dropped to avoid unnecessary building of unused packages. 

Excluding packages like this would prevent them from being installed by mistake while still not seeing files as unpackaged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>77377</commentid>
    <comment_count>1</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2017-10-05 03:16:55 +0000</bug_when>
    <thetext>The issue with this is you&apos;d have to be completely bypassing any dependencies, which would potentially lead to issues at runtime. With that caveat though it would be fairly easy to implement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>77379</commentid>
    <comment_count>2</comment_count>
    <who name="Ola Nilsson">ola.x.nilsson</who>
    <bug_when>2017-10-05 10:06:39 +0000</bug_when>
    <thetext>Which dependencies are you talking about?

Runtime dependencies from other packages to the excluded packages should fail at filesystem generation, unless we can make it fail even sooner by not RPROVIDING them.

Runtime dependencies from the excluded package to any other package should be handled.

I guess buildtime dependencies could be an issue if populate_sysroot includes files for features that are later not packaged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>78415</commentid>
    <comment_count>3</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2017-11-29 22:18:43 +0000</bug_when>
    <thetext>The thing is we have no visibility into how files within a package should be properly &quot;disabled&quot; - that&apos;s under the control of the build scripts for each individual recipe. Without that control I&apos;m not sure that this feature is going to be particularly useful - users will see a package they want to exclude, attempt to exclude it and then they&apos;ll either see a failure at build time (if we&apos;re enforcing dependencies) or possibly a more subtle failure at runtime (if we don&apos;t). For case #1 at the image level at least we actually already have PACKAGE_EXCLUDE.

However I may be missing something about how you see this being implemented - let me know if that is the case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85595</commentid>
    <comment_count>4</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2019-11-21 19:39:56 +0000</bug_when>
    <thetext>Due to the way FILES works, excluding specific packages from recipes would be extremely error prone as the files it normally picked up would then be available to other packages and their content would change. I see no workable way to make this work and remain tested so closing this as something we don&apos;t plan to do.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>