[all-commits] [llvm/llvm-project] 7226e7: [cmake] Loosen multi-distribution restrictions

Shoaib Meenai via All-commits all-commits at lists.llvm.org
Wed Apr 13 20:47:06 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7226e7fd14c4e57f8ab5729990ee04bcdb1579af
  Author: Shoaib Meenai <smeenai at fb.com>
  Date:   2022-04-13 (Wed, 13 Apr 2022)

  Changed paths:
    M llvm/cmake/modules/LLVMDistributionSupport.cmake
    M llvm/docs/BuildingADistribution.rst

  Log Message:
  [cmake] Loosen multi-distribution restrictions

We've found that there are cases where it's useful to be able to include
the same target in multiple distributions (e.g. if you want a
distribution that's a superset of another distribution, for convenience
purposes), and that there are cases where the distribution of a target
and its umbrella can legitimately differ (e.g. the LTO library would
commonly be distributed alongside your tools, but it also falls under
the llvm-libraries umbrella, which would commonly be distributed
separately). Relax the restrictions while providing an option to restore
them (which is mostly useful to ensure you aren't accidentally placing
targets in the wrong distributions).

There could be further refinements here (e.g. excluding a target from an
umbrella if it's explicitly included in some other distribution, or
having variables to control which targets are allowed to be duplicated
or placed in a separate distribution than their umbrellas), but we can
punt on those until there's an actual need.

More information about the All-commits mailing list