[cfe-dev] Renaming the install-clang-headers target

Shoaib Meenai via cfe-dev cfe-dev at lists.llvm.org
Thu Feb 21 15:56:08 PST 2019


Thanks. What sort of transition plan would be appropriate here? Again, if this happened, we'd be changing the existing install-clang-headers target to install clang's library headers instead of its resource directory headers, and adding a new install-clang-resource-headers to install the resource directory headers, so users of the existing install-clang-headers target would have to change their builds to use install-clang-resource-headers. Some ideas I can think of:


  *   Just note the target name change in a PSA to cfe-dev and/or the release notes and let users take it from there.
  *   Have the install-clang-headers target give a warning (which might be lost in build noise) or an error (which would be much more noticeable) informing them of the change. Users who want the new behavior for the install-clang-headers target could pass a CMake flag to enable it (this is similar to how the soft errors for old toolchains are handled). We could drop the error and make the new behavior the default after a release (when it's reasonable to expect everyone to have updated their builds already).

From: Tom Stellard <tstellar at redhat.com>
Organization: Red Hat
Reply-To: "tstellar at redhat.com" <tstellar at redhat.com>
Date: Wednesday, February 20, 2019 at 9:16 PM
To: Shoaib Meenai <smeenai at fb.com>, cfe-dev <cfe-dev at lists.llvm.org>
Subject: Re: [cfe-dev] Renaming the install-clang-headers target

On 02/20/2019 04:05 PM, Shoaib Meenai via cfe-dev wrote:
The install-clang-headers target in Clang today installs Clang's resource directory headers (the contents of lib/clang/$VERSION/include). This is inconsistent with LLVM's install-llvm-headers target, which installs the headers corresponding to LLVM's libraries.

Clang does install its library headers when you perform a full install, but there's currently no target to specifically just install these headers (e.g. as part of a distribution). I'm attempting to add one in https://urldefense.proofpoint.com/v2/url?u=https-3A__reviews.llvm.org_D58317&d=DwICaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=Brxgljyu0xgopMlSXbiYMgVCT6hoTV0ru8lr_4-NAM8&s=XaaLki9rChsMaE5d_RspnZgONckDF-kKJaZOZyykeqk&e=, and it would be natural to name this target install-clang-headers to mirror the corresponding LLVM target, but of course that name is already taken by the resource headers install target.

One option would be to rename the existing install-clang-headers target to something like install-clang-resource-headers, and then switch install-clang-headers to installing the library headers. This would require end users to update their build scripts, and anyone who didn't update their build scripts would just silently install the wrong thing (though that would presumably lead to errors later on when actually trying to use the installed toolchain). I'm posting here to ask if such a switch would be acceptable to users of this target, and what I can do to announce and ease the transition (besides just a PSA to the mailing lists).

I think it's better to have consistent naming between clang and llvm, so
I am in favor of renaming the existing install-clang-headers target
to something else.

-Tom


Another option would be to accept the inconsistency between LLVM and Clang's target names, leave the existing install-clang-headers target alone, and come up with a new name for the clang target to install its library headers. I'm not completely happy with any of the names I've been able to come up with, though install-clang-library-headers seems like an okay option.
_______________________________________________
cfe-dev mailing list
cfe-dev at lists.llvm.org<mailto:cfe-dev at lists.llvm.org>
https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.llvm.org_cgi-2Dbin_mailman_listinfo_cfe-2Ddev&d=DwICaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=Brxgljyu0xgopMlSXbiYMgVCT6hoTV0ru8lr_4-NAM8&s=VaNV_kILboBqr7-0YyFRVfnSMjnPQUzAMMpN6HFyYR4&e=


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20190221/f2deaeca/attachment.html>


More information about the cfe-dev mailing list