<?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>5437</bug_id>
          
          <creation_ts>2013-10-31 17:01:30 +0000</creation_ts>
          <short_desc>On-target buildable SRPMs</short_desc>
          <delta_ts>2019-06-01 23:17:55 +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>deployment</component>
          <version>1.6</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="Mark Hatle">mark.hatle</reporter>
          <assigned_to name="Mark Hatle">mark.hatle</assigned_to>
          <cc>akuster</cc>
    
    <cc>gmshastri</cc>
    
    <cc>sgw</cc>
    
    <cc>wmills</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Don&apos;t know</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>38370</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hatle">mark.hatle</who>
    <bug_when>2013-10-31 17:01:30 +0000</bug_when>
    <thetext>It&apos;s desired to have a way to rebuild binary RPMs, from an SRPM on the target.

This will likely require a change to the archive code to produce SRPMs that are likely able to be rebuilt on the target.

This may also require a change to the &apos;rpmbuild&apos; configuration on the target to support any special needs for the target SRPMs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42444</commentid>
    <comment_count>1</comment_count>
    <who name="Gaurang Shastri">gmshastri</who>
    <bug_when>2014-04-09 12:25:10 +0000</bug_when>
    <thetext>Dear Mark,

Does this following 2 scenarios:

1) Can we re-build SRPM on the Host itself ?? (by setting cross enviroment)

But, in this case generated RPMs from Yocto should be re-locatable which is not as of currently.

2) Are you only targeting to re-build SRPM on &quot;target side&quot; only? 
- boot the target
- build the srpm using &quot;rpmbuild -ba abc.srpm&quot;

Please clarify. 

Regards,
Gaurang Shastri</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42451</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Hatle">mark.hatle</who>
    <bug_when>2014-04-09 15:06:00 +0000</bug_when>
    <thetext>(In reply to comment #1)
&gt; Dear Mark,
&gt; 
&gt; Does this following 2 scenarios:
&gt; 
&gt; 1) Can we re-build SRPM on the Host itself ?? (by setting cross enviroment)
&gt; 
&gt; But, in this case generated RPMs from Yocto should be re-locatable which is
&gt; not as of currently.

Possible, but this was not part of the original request.  It would require correct wrapper information and the right version of RPM and RPM macros to control the build in a way that is similar to the regular cross-development system.

&gt; 2) Are you only targeting to re-build SRPM on &quot;target side&quot; only? 
&gt; - boot the target
&gt; - build the srpm using &quot;rpmbuild -ba abc.srpm&quot;

The above was the purpose of this request.  Construct both RPM and SRPM packages in the cross development system, and be able to rebuild select packages on the target itself.

By select packages I was thinking of things that are routinely modified by users.  These would include the kernel and out of tree kernel-module packages.  Various server or networking packages like net-snmp, apache, etc.

It would be nice to be able to rebuild the whole system, but probably not required.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42495</commentid>
    <comment_count>3</comment_count>
    <who name="Gaurang Shastri">gmshastri</who>
    <bug_when>2014-04-10 05:11:16 +0000</bug_when>
    <thetext>&gt;&gt;It would be nice to be able to rebuild the whole system, but probably not &gt;&gt;required.

But in this case, how would you segregate only particular packages??
I mean, if you are writing logic for srpm(probably create correct spec file), then it should apply to all (all target packages).

Please correct me if I misunderstood.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42529</commentid>
    <comment_count>4</comment_count>
    <who name="Mark Hatle">mark.hatle</who>
    <bug_when>2014-04-10 14:03:50 +0000</bug_when>
    <thetext>Some packages have very simple build and compilation rules.  They do not rely on significant custom steps, nor on python OE classes (beyond the simply rules of configure, make, make install..)

Those are the types of packages that should be fairly easy to convert into an SRPM that can be built on the target.


For packages that use significant python code, or other specialized helpers from the OE world -- it may not be easy to &quot;adapt&quot; them to working in the SRPM environment.  Most of the &apos;complicated&apos; packages (QT for instance) are not typically things that -my- customers would recompile on a target system.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84041</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Hatle">mark.hatle</who>
    <bug_when>2019-06-01 21:37:36 +0000</bug_when>
    <thetext>At this time, it&apos;s no longer believed this makes sense to attempt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84042</commentid>
    <comment_count>6</comment_count>
    <who name="Armin Kuster">akuster</who>
    <bug_when>2019-06-01 23:17:55 +0000</bug_when>
    <thetext>aggreed</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>