Bug 254784

Summary: [JavaScriptCore] Build with InstallAPI
Product: WebKit Reporter: Elliott Williams <emw>
Component: JavaScriptCoreAssignee: Elliott Williams <emw>
Status: RESOLVED FIXED    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 254612, 254614, 254783    
Bug Blocks:    

Description Elliott Williams 2023-03-30 16:54:04 PDT
InstallAPI is a build phase in Xcode that uses tapi(1) to create .tbds for framework targets by scanning their headers. This TBD can then be linked against by clients of the framework, such that they are able to build and link before the framework itself has finished building.

Apple uses InstallAPI to parallelize production builds, and TAPI is part of LLVM. The llvm-dev mail introducing TAPI is a good high level overview of the tool: https://lists.llvm.org/pipermail/llvm-dev/2017-September/117264.html

We already use InstallAPI in embedded WebKit/WebKitLegacy. This bug tracks supporting it in JavaScriptCore.
Comment 1 Elliott Williams 2023-03-30 16:54:52 PDT
rdar://37562251
Comment 2 Elliott Williams 2023-04-05 12:19:57 PDT
Pull request: https://github.com/WebKit/WebKit/pull/12384
Comment 3 Elliott Williams 2023-04-05 12:27:03 PDT
The above URL is wrong. https://github.com/WebKit/WebKit/pull/12416 is the correct pull request.
Comment 4 Elliott Williams 2023-05-03 09:15:09 PDT
rdar://108843961
Comment 5 EWS 2023-05-08 19:33:53 PDT
Committed 263845@main (a9c99ebb0bfd): <https://commits.webkit.org/263845@main>

Reviewed commits have been landed. Closing PR #12416 and removing active labels.
Comment 6 Elliott Williams 2023-05-08 21:36:09 PDT
Re-opening for pull request https://github.com/WebKit/WebKit/pull/13625
Comment 7 EWS 2023-05-08 21:50:13 PDT
Committed 263847@main (1bc021cb1eba): <https://commits.webkit.org/263847@main>

Reviewed commits have been landed. Closing PR #13625 and removing active labels.