On 2021-04-22 09:08, Brian Inglis wrote:
On 2021-04-22 02:31, Andreas Heckel via Cygwin wrote:
Is there a chance for an "official" update of clang / llvm. Currently I
see v8 here on Cygwin while llvm is now at v12.

I had tried to build v12 in Cygwin by simply running along the instructions on the llvm page. But I failed at a number of options / packages in the past and only got clang and a few tools like clang-format to run under Cygwin. I apologise, but I really have no clue about building anything properly for Cygwin (yet).

Install the latest llvm and clang *source* packages; and

binary packages: cygport, which pulls in all the usual tools, but also add cmake, gnupg2, ninja, cygwin-devel, libc++-devel, libc++abi-devel, libedit-devel, libffi-devel, libllvm-devel, libncurses-devel, libpolly-devel, libunwind-devel, libxml2-devel, zlib-devel, python3-devel, python3-recommonmark, python3-setuptools, and python3-sphinx;

change to the llvm source directory containing the llvm.cygport file;

edit llvm.cygport, and bump the major version 1 at a time, e.g. 9.0.1, 10.0.1 11.1.0, 12.0.0, including libllvm{9,10,11,12}, libpolly{9,10,11,12}, and save;

then run:

     $ cygport llvm.cygport download all check

Pay attention to:

any warning or error messages about required packages missing, some of which may be lib...-devel, which you have to install before retrying the build; and

build errors, which you have to resolve.

After a successful build, you will have binary and source tar and hint files under llvm-#-1.*86*/dist/llvm/ which you may install on your system using:

     $ tar -xv -C / -f llvm-#-1.*86*/dist/llvm/llvm-#-1.tar.xz

similarly for prerequisite dependencies and corequisite package tars under:

     $ ls llvm-#-1.*86*/dist/llvm/{,*/}*-#-1.tar.xz

as packages are built under a virtual root directory, which you can see under llvm-#-1.*86*/inst/...

Then repeat the process for clang source updates using each recently built and 
installed llvm.

You can also browse the cygport and patch files required at:

        https://cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/llvm.git
        https://cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/clang.git

and you can git clone those projects from the listed URLs as a basis for building and upgrading: llvm cygport has already been updated there for 9.0.1.

Once you have installed cygport you can browse the local docs using:

        $ cygstart /usr/share/doc/cygport/html/manual/index.html

for more information on what's going on.

--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]

--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to