Hprc banner tamu.png

Difference between revisions of "SW:EasyBuild:Building Your Own Software:Another Example - LLVM"

From TAMU HPRC
Jump to: navigation, search
(Motivation)
Line 6: Line 6:
 
# adds support for CLang
 
# adds support for CLang
 
LLVM is a rather long build (several hours using a single-processor).  Additionally, the currently installed versions do not include CLang support.  They are also rather dated (v9.01 released December 20, 2019).  Newer releases include v10.0.1, released August 6, 2020. An even newer release candidate includes v11.0.0-rc5 released September 30, 2020 but as of this writing on October 3, 2020, there are already 7681 commits to master since this release.  So, for this example we will use a recent (10/3/2020) .zip file of the master repo. Notes for using a bleeding edge (as of this moment) clone of the master repo are included below and are left as an exercise to the reader.
 
LLVM is a rather long build (several hours using a single-processor).  Additionally, the currently installed versions do not include CLang support.  They are also rather dated (v9.01 released December 20, 2019).  Newer releases include v10.0.1, released August 6, 2020. An even newer release candidate includes v11.0.0-rc5 released September 30, 2020 but as of this writing on October 3, 2020, there are already 7681 commits to master since this release.  So, for this example we will use a recent (10/3/2020) .zip file of the master repo. Notes for using a bleeding edge (as of this moment) clone of the master repo are included below and are left as an exercise to the reader.
 +
 +
= Converting an existing LLVM EasyBuild "easyconfig" using GCC to a much newer LLVM built using the CLang =
 +
== Selecting an existing LLVM easyconfig ==
 +
== Making the desired changes to the easyconfig ==
 +
== The resulting easyconfig ==
 +
= Building the new easyconfig =
 +
= Notes =

Revision as of 15:19, 3 October 2020

This example will cover building a very recent version of LLVM using the CLang compiler.

Motivation

A user wants to build a modified version of the LLVM module that includes:

  1. a recent source from the LLVM Github repository
  2. adds support for CLang

LLVM is a rather long build (several hours using a single-processor). Additionally, the currently installed versions do not include CLang support. They are also rather dated (v9.01 released December 20, 2019). Newer releases include v10.0.1, released August 6, 2020. An even newer release candidate includes v11.0.0-rc5 released September 30, 2020 but as of this writing on October 3, 2020, there are already 7681 commits to master since this release. So, for this example we will use a recent (10/3/2020) .zip file of the master repo. Notes for using a bleeding edge (as of this moment) clone of the master repo are included below and are left as an exercise to the reader.

Converting an existing LLVM EasyBuild "easyconfig" using GCC to a much newer LLVM built using the CLang

Selecting an existing LLVM easyconfig

Making the desired changes to the easyconfig

The resulting easyconfig

Building the new easyconfig

Notes