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

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>249604</bug_id>
          
          <creation_ts>2022-12-19 13:15:56 -0800</creation_ts>
          <short_desc>[WPE] Add support for generating a cross toolchain, images and cross building easily for a set of curated embedded targets with Yocto</short_desc>
          <delta_ts>2023-01-27 05:06:24 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=249644</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>249031</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Carlos Alberto Lopez Perez">clopez</assigned_to>
          <cc>angelos</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>psaavedra</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1920554</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2022-12-19 13:15:56 -0800</bug_when>
    <thetext>It will be a good idea to have built-in support in the WebKit tooling scripts for building WebKit for different embedded boards with curated configurations.

This support would be used by the upcoming performance-bot  ( see bug 249031 ) for building WebKit for the target board.

This should allow to do the following:

- Build the cross-toolchain from scratch from the configuration files
- Build WebKit with this cross-toolchain
- Build an image for the target board (without WebKit)
- Generate a release.zip archive with WebKit for the board
- Detect when the configuration files change and rebuild the toolchain and WebKit

Proposed implementation:

1.
$ Tools/Scripts/build-webkit --wpe --release --cross-target=rpi3-32bits-mesa
This does:
 - If still not built, then builds cross-toolchain for embedded target: rpi3-32bits-mesa
 - Builds WebKit with the previous toolchain

2.
Tools/Scripts/cross-toolchain-helper --cross-target=rpi3-32bits-mesa --build-image 
This does:
  - Generates an image for the rpi3 that you can flash to an SDCard and boot with it.
  - Note: the image doesn&apos;t include WebKit (WPE) itself, but it includes everything needed to build WebKit or run tests.

3.
$ Tools/CISupport/built-product-archive --platform=wpe --release --cross-target=rpi3-32bits-mesa archive
This does:
 - Generates &apos;release.zip&apos; with the built-product for the embedded target: rpi3-32bits-mesa
 - You can copy this &apos;release.zip&apos; to the board running the image above and run the minibrowser or any test (like layout tests or perf tests) with this


For more details and examples, check the file: Tools/yocto/README.md on the upcoming patch.

Related: bug 249031</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1920636</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2022-12-19 16:55:13 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/7885</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928886</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-01-27 05:05:13 -0800</bug_when>
    <thetext>Committed 259479@main (80926377d6a9): &lt;https://commits.webkit.org/259479@main&gt;

Reviewed commits have been landed. Closing PR #7885 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1928887</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-01-27 05:06:24 -0800</bug_when>
    <thetext>&lt;rdar://problem/104741374&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>