[PATCH] D115105: [test-release.sh] Add an option to build lib projects as a part of default runtimes.

Amy Kwan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 4 13:37:03 PST 2021


amyk created this revision.
amyk added reviewers: ldionne, tstellar.
amyk added a project: LLVM.
amyk requested review of this revision.

This patch adds an option to the `test-release.sh` script to build some of the LLVM projects
(particularly compiler-rt/libcxx/libcxxabi/libunwind) as the default runtimes (with the `-LLVM_ENABLE_PROJECTS`) 
CMake invocation.

The intention behind this patch is not only that we plan to build some of these projects in this way
on AIX, but also is in correspondence to the thread that @ldionne previously posted regarding the changes
in how we build these projects at https://lists.llvm.org/pipermail/llvm-dev/2021-October/153238.html.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D115105

Files:
  llvm/utils/release/test-release.sh


Index: llvm/utils/release/test-release.sh
===================================================================
--- llvm/utils/release/test-release.sh
+++ llvm/utils/release/test-release.sh
@@ -22,6 +22,7 @@
 Release=""
 Release_no_dot=""
 RC=""
+Runtimes=""
 Triple=""
 use_gzip="no"
 do_checkout="yes"
@@ -49,6 +50,7 @@
     echo ""
     echo " -release X.Y.Z       The release version to test."
     echo " -rc NUM              The pre-release candidate number."
+    echo " -runtimes PROJECTS   Projects to be built as apart of runtimes (semicolon separated list)."
     echo " -final               The final release candidate."
     echo " -triple TRIPLE       The target triple for this machine."
     echo " -j NUM               Number of compile jobs to run. [default: 3]"
@@ -86,6 +88,10 @@
             shift
             RC="rc$1"
             ;;
+        -runtimes | --runtimes )
+            shift
+            Runtimes="$1"
+            ;;
         -final | --final )
             RC=final
             ;;
@@ -236,15 +242,15 @@
 
 # Projects list
 projects="llvm clang clang-tools-extra"
-if [ $do_rt = "yes" ]; then
+if [ $do_rt = "yes" ] && [[ $Runtimes != *"compiler-rt"* ]]; then
   projects="$projects compiler-rt"
 fi
-if [ $do_libs = "yes" ]; then
+if [ $do_libs = "yes" ] && [[ $Runtimes != *"libcxx"* ]]; then
   projects="$projects libcxx"
-  if [ $do_libcxxabi = "yes" ]; then
+  if [ $do_libcxxabi = "yes" ] && [[ $Runtimes != *"libcxxabi"* ]]; then
     projects="$projects libcxxabi"
   fi
-  if [ $do_libunwind = "yes" ]; then
+  if [ $do_libunwind = "yes" ] && [[ $Runtimes != *"libunwind"* ]]; then
     projects="$projects libunwind"
   fi
 fi
@@ -387,12 +393,14 @@
         cmake -G "$generator" \
         -DCMAKE_BUILD_TYPE=$BuildType -DLLVM_ENABLE_ASSERTIONS=$Assertions \
         -DLLVM_ENABLE_PROJECTS="$project_list" \
+        -DLLVM_ENABLE_RUNTIMES="$Runtimes" \
         $ExtraConfigureFlags $BuildDir/llvm-project/llvm \
         2>&1 | tee $LogDir/llvm.configure-Phase$Phase-$Flavor.log
     env CC="$c_compiler" CXX="$cxx_compiler" \
         cmake -G "$generator" \
         -DCMAKE_BUILD_TYPE=$BuildType -DLLVM_ENABLE_ASSERTIONS=$Assertions \
         -DLLVM_ENABLE_PROJECTS="$project_list" \
+        -DLLVM_ENABLE_RUNTIMES="$Runtimes" \
         $ExtraConfigureFlags $BuildDir/llvm-project/llvm \
         2>&1 | tee $LogDir/llvm.configure-Phase$Phase-$Flavor.log
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D115105.391876.patch
Type: text/x-patch
Size: 2414 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211204/a027140c/attachment.bin>


More information about the llvm-commits mailing list