Skip to content

[CFP] Homebrew LLVM #21

Open
Open
@carlocab

Description

@carlocab

Title

Homebrew LLVM

Author

Carlo Cabrera, [email protected]

Distribution

Homebrew is a package manager for macOS and Linux. We package LLVM for use by other packages that rely on it, and as an alternative toolchain for our users, who would otherwise be using their system compiler, or Homebrew GCC.

Abstract (optional)

We aim to provide a complete LLVM distribution that is easy to understand for end-users, doesn't interfere with system installations (i.e. Apple LLVM), and is maintainable by our small team (~25 maintainers for a repository of ~6000 packages).

In this talk, I will present how we configure and test our LLVM build: what we do well, what we could do better, and what we struggle with.

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

The packaging constraints alluded to above.

What makes your distribution of LLVM unique? (optional)

We seem to have this in common with some of the other submissions, but our distribution is:

  • fully relocatable, and;
  • works on a wide array of Linux distributions (we require a minimum Glibc version of 2.13)

What might others learn from your experience? (optional)

How to do a full PGO bootstrap build on macOS.

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

ABI versioning for libLLVM on macOS.


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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions