Subject: Re: Chances for llvm / clang update?
From: Brian Inglis <[email-masked]>
To: [email-masked]
Date: Thu, 22 Apr 2021 09:08:56 -0600
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>

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 using each recently built and installed llvm.

-- 
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