<?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>3327</bug_id>
          
          <creation_ts>2012-10-23 15:52:53 +0000</creation_ts>
          <short_desc>[DOC] No documentation for PACKAGECONFIG</short_desc>
          <delta_ts>2013-03-14 10:35:04 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>9</classification_id>
          <classification>Documentation</classification>
          <product>Reference</product>
          <component>handbook</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://git.yoctoproject.org/cgit.cgi/yocto-docs/commit/?id=7edf3d03bc4a448516f24caea4b49423a026885f</bug_file_loc>
          <status_whiteboard>03 Dec 2012 -  Review edits applied</status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>1.4</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ross Burton">ross.burton</reporter>
          <assigned_to name="Ross Burton">ross.burton</assigned_to>
          <cc>alexandru.c.georgescu</cc>
    
    <cc>bluelightning</cc>
    
    <cc>jessica.zhang</cc>
    
    <cc>poky.doc.watcher</cc>
    
    <cc>poky.watcher</cc>
    
    <cc>richard.purdie</cc>
    
    <cc>srifenbark</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>---</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>26845</commentid>
    <comment_count>0</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2012-10-23 15:52:53 +0000</bug_when>
    <thetext>The PACKAGECONFIG variable available in recipes is complicated, non-obvious, and super useful.  It should be documented!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26903</commentid>
    <comment_count>1</comment_count>
    <who name="Jessica">jessica.zhang</who>
    <bug_when>2012-10-25 14:50:48 +0000</bug_when>
    <thetext>Ross,

It&apos;ll be great if you can provide the technical content for Scott.

Thanks,
Jessica</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26957</commentid>
    <comment_count>2</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2012-10-26 09:48:48 +0000</bug_when>
    <thetext>Sure.  For future reference I&apos;ll paste the log of how I (badly) explained to Mihai Prica yesterday:

ross@otcchat.org: i&apos;ll give you a link to an example, but you need to understand the theory
ross@otcchat.org: basically it selectively adds to EXTRA_OECONF, DEPENDS and RDEPENDS
ross@otcchat.org: you have a set of packageconfig &quot;options&quot;
ross@otcchat.org: PACKAGCONFIG[foo] = &quot;--enable-foo,--disable-foo,libfoo&quot;
ross@otcchat.org: which says when foo is on, ad --enable-foo to EXTRA_OECONF
ross@otcchat.org: if its off, pass --disable-foo
ross@otcchat.org: (for deterministic builds)
ross@otcchat.org: and libfoo is added to DEPENDS
ross@otcchat.org: (you can add another section to add runtime depends)
ross@otcchat.org: you have one of those for each option
ross@otcchat.org: then you set PACKAGECONFIG itself
ross@otcchat.org: using ??= so it&apos;s easily overridden
ross@otcchat.org: to the value of the options which you want on by default
ross@otcchat.org: mesa-common.inc is a complex example
ross@otcchat.org: the set of options changes depending on distro features and machine
ross@otcchat.org: it&apos;s split between mesa-common.inc and mesa-dri.inc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27357</commentid>
    <comment_count>3</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2012-11-12 15:29:43 +0000</bug_when>
    <thetext>Scott has added this to the variable reference already for 1.3:

http://www.yoctoproject.org/docs/current/poky-ref-manual/poky-ref-manual.html#var-PACKAGECONFIG</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27358</commentid>
    <comment_count>4</comment_count>
    <who name="Ross Burton">ross.burton</who>
    <bug_when>2012-11-12 15:32:33 +0000</bug_when>
    <thetext>There is a fourth option in the PACKAGECONFIG[foo] lines: RDEPENDS to add if the option is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27511</commentid>
    <comment_count>5</comment_count>
    <who name="Scott Rifenbark">srifenbark</who>
    <bug_when>2012-11-16 00:58:44 +0000</bug_when>
    <thetext>Ross, 

What do you mean in Comment 4?  Please look at http://www.yoctoproject.org/docs/1.4/poky-ref-manual/poky-ref-manual.html#var-PACKAGECONFIG and tell me where the description is lacking.  That would be the most helpful for me. 

Thanks, 
Scott</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27590</commentid>
    <comment_count>6</comment_count>
    <who name="Scott Rifenbark">srifenbark</who>
    <bug_when>2012-11-20 21:31:56 +0000</bug_when>
    <thetext>Ross, 

I still don&apos;t get this.  I will need some more hand-holding from you to understand how this works.  If you get a chance, maybe you can provide more explanation for me.

Thanks, 
Scott</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27740</commentid>
    <comment_count>7</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2012-11-27 15:32:20 +0000</bug_when>
    <thetext>Seems I missed the fourth parameter since it is not often used. I would modify the PACKAGECONFIG entry as follows:

...while the named flags set on the variable specify for each feature, separated by commas, in order:
 1) extra arguments that should be added to the configure script argument list (EXTRA_OECONF) if the feature is enabled
 2) extra arguments that should be added to EXTRA_OECONF if the feature is disabled
 3) additional build dependencies (DEPENDS) that should be added if the feature is enabled
 4) additional runtime dependencies (RDEPENDS) that should be added if the feature is enabled. 

Any of these values can be left blank if not needed.
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27835</commentid>
    <comment_count>8</comment_count>
    <who name="Scott Rifenbark">srifenbark</who>
    <bug_when>2012-11-29 23:43:37 +0000</bug_when>
    <thetext>This description has been re-written and reviewed by Paul Eggleton.  I am marking RESOLVED.  

You can see the new version at http://www.yoctoproject.org/docs/1.4/poky-ref-manual/poky-ref-manual.html#var-PACKAGECONFIG.

Scott</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27925</commentid>
    <comment_count>9</comment_count>
    <who name="Scott Rifenbark">srifenbark</who>
    <bug_when>2012-12-04 00:09:06 +0000</bug_when>
    <thetext>I updated the glossary description for PACKAGECONFIG based on Paul Eggletons review comments.  You can see the final at http://www.yoctoproject.org/docs/1.4/poky-ref-manual/poky-ref-manual.html#var-PACKAGECONFIG.

Scott</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30692</commentid>
    <comment_count>10</comment_count>
    <who name="Alexandru Georgescu">alexandru.c.georgescu</who>
    <bug_when>2013-03-14 10:35:04 +0000</bug_when>
    <thetext>Verified as per last comment</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>