Re: [ITA] llvm

Jeremy Drake via Cygwin-apps <[email protected]>
Newsgroups gmane.os.cygwin.applications
Message-ID <[email protected]>
On Wed, 16 Jul 2025, ASSI via Cygwin-apps wrote:

> Jeremy Drake via Cygwin-apps writes:
> > There is another PR in progress that adds more symlinks for DLLs on
> > Cygwin.  This is a little bit confusing from a packaging standpoint
> > because these are un-versioned dll names cygLLVM.dll -> cygLLVM-20.dll, or
> > cygclang.dll -> cygclang-20.1.dll.  These are added for code that uses
> > dlopen and friends to call the C API (apparently the python bindings to
> > libclang do this).
>
> Shoot it down.  These symlinks are idiocy since they will not work in
> general, depending on the type of symlink used and the loader that tries
> to process them.  ATWIL and all that, but there is no ldconfig or
> similar here.
>
> > How do packages handle this situation?
>
> Not at all.  Such nonsense must not be packaged.

How should the libclang python binding work then (it uses ctypes)?

https://github.com/llvm/llvm-project/blob/6d0f573535e27171e4ef927baeab3edc928beebb/clang/bindings/python/clang/cindex.py#L4348-L4379

No other platform includes a version number there.  It's pretty clear that
the intent of the PR is to then add
    elif if name.startswith("CYGWIN"):
        file = "cygclang.dll"

I don't think they really want "cygclang-20.1.dll" and have to bump that
with every release.

You might say, only bump the soversion on an ABI-breaking change, but
changing the release processes of llvm-project is pretty far outside the
scope of adding Cygwin platform support ;)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.