ClangBuiltLinux / llvm-distributors-conf-2021

A day of lightning talks for folks who distribute and release builds of LLVM, with a focus on configuration, testing, and unique constraints.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[CFP] Swift on Windows

compnerd opened this issue · comments

Title

Swift on Windows

Author

Saleem Abdulrasool compnerd@compnerd.org

Distribution

A LLVM based toolchain meant to target Windows (X86, X64, ARM, ARM64), Android (X86, X64, ARM, ARM64) for C, C++, [Objective-C, Objective-C++,], Swift.

Abstract (optional)

TODO

What's unique about the environment you package LLVM for? (optional)

The distribution tries to be nearly hermetic (LLVM is not yet sufficient for this for Windows), with coverage for C/C++/Swift in a single toolchain that is meant to target multiple platforms from Windows. The distribution includes all the tools for cross-compiling C/C++/Swift on Windows to Windows and non-Windows targets, as well as components to serve an IDE experience (e.g. language server, indexing, package manager, etc).

What makes your distribution of LLVM unique? (optional)

The distribution contains significant divergence from upstream including support for an entire language ecosystem. Additionally, the distribution contains support libraries for the ecosystem. The toolchain actually must integrate with MSVC distributed components and bridge content from Microsoft vended toolchains into the custom toolchain.

What might others learn from your experience? (optional)

What could be improved in upstream LLVM to make working with it easier as a downstream packager? (optional)

Reducing build time, complexity, binary size. A current installed toolchain is ~2.5 GiB without debug info. With debug info, a distribution is ~10 GiB. This excludes the language runtime.


Reminder that this is meant to be a 15 minute lightning talk; enough to pique
interests but follow up should be done after. Slides can always include links
to more info; we will ask that you send a PR to this repo with your slides when
they are ready.

Thanks for taking the time to write up a CFP; we'd be overjoyed to have you present at LLVM Distributors Conf 2021! If you still plan on presenting, this is a reminder to get started on your slides for next week. Once they're done, we will contact you about submitting a PDF of your slides as either a pull request to this repository or via email to the organizer. We hope to have a schedule finalized by EOW; we may iterate on the schedule based on whether presenters have conflicts. Please keep this issue open for attendees to ask questions, or close this issue if you no longer plan on attending. Reminder to keep your talk concise (15 minutes); we wont be doing time for questions in order to fit as much content as possible. Attendees should ask questions here in this github issue.