[llvm] JOCA-349 Create the multibranch job in Jenkins (PR #169388)

Rodrigo Camargo via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 25 10:34:02 PST 2025


https://github.com/galdinocamargo updated https://github.com/llvm/llvm-project/pull/169388

>From ac28ece34deea292f4c88b16abd876a6d88b3bec Mon Sep 17 00:00:00 2001
From: Rodrigo Luiz Galdino Camargo <galdinocamargo at gmail.com>
Date: Mon, 24 Nov 2025 18:36:05 +0000
Subject: [PATCH 1/4] updated

---
 Jenkinsfile | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)
 create mode 100644 Jenkinsfile

diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000000000..df35e1230be7a
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,56 @@
+pipeline {
+  agent { label 'cpp-ec2-al2-candidate' }
+
+  options {
+    timestamps()
+    disableConcurrentBuilds()
+  }
+
+  environment {
+    BUILD_TYPE    = 'Release'
+    LLVM_PROJECTS = 'clang;lld'   // adjust if you want more/less
+    BUILD_DIR     = 'build'
+  }
+
+  stages {
+    stage('Checkout') {
+      steps {
+        // Uses the same repo/branch that triggered the multibranch job
+        checkout scm
+      }
+    }
+
+    stage('Configure') {
+      steps {
+        sh '''
+          set -eux
+
+          mkdir -p "${BUILD_DIR}"
+
+          cmake -S llvm -B "${BUILD_DIR}" -G Ninja \
+            -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" \
+            -DLLVM_ENABLE_PROJECTS="${LLVM_PROJECTS}"
+        '''
+      }
+    }
+
+    stage('Build') {
+      steps {
+        sh '''
+          set -eux
+          cmake --build "${BUILD_DIR}" -j"$(nproc)"
+        '''
+      }
+    }
+
+    // Optional, wire later once build works and you decide what to run
+    // stage('Smoke tests') {
+    //   steps {
+    //     sh '''
+    //       set -eux
+    //       ctest --test-dir "${BUILD_DIR}" -R clang -j"$(nproc)" || true
+    //     '''
+    //   }
+    // }
+  }
+}

>From 1577954fdee28e41756f4dedd1bde4152984cae9 Mon Sep 17 00:00:00 2001
From: Rodrigo Luiz Galdino Camargo <galdinocamargo at gmail.com>
Date: Mon, 24 Nov 2025 20:25:41 +0000
Subject: [PATCH 2/4] make to make3

---
 Jenkinsfile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index df35e1230be7a..7b781faf75b3e 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -27,7 +27,7 @@ pipeline {
 
           mkdir -p "${BUILD_DIR}"
 
-          cmake -S llvm -B "${BUILD_DIR}" -G Ninja \
+          cmake3 -S llvm -B "${BUILD_DIR}" -G Ninja \
             -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" \
             -DLLVM_ENABLE_PROJECTS="${LLVM_PROJECTS}"
         '''
@@ -38,7 +38,7 @@ pipeline {
       steps {
         sh '''
           set -eux
-          cmake --build "${BUILD_DIR}" -j"$(nproc)"
+          cmake3 --build "${BUILD_DIR}" -j"$(nproc)"
         '''
       }
     }

>From 698244ed3c267f38d08cffd500ea46a43568b277 Mon Sep 17 00:00:00 2001
From: Rodrigo Luiz Galdino Camargo <galdinocamargo at gmail.com>
Date: Mon, 24 Nov 2025 21:51:07 +0000
Subject: [PATCH 3/4] updated

---
 Jenkinsfile | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index 7b781faf75b3e..f0db469e0af9a 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -8,14 +8,14 @@ pipeline {
 
   environment {
     BUILD_TYPE    = 'Release'
-    LLVM_PROJECTS = 'clang;lld'   // adjust if you want more/less
+    LLVM_PROJECTS = 'clang;lld'   // adjust if you want more or less
     BUILD_DIR     = 'build'
   }
 
   stages {
     stage('Checkout') {
       steps {
-        // Uses the same repo/branch that triggered the multibranch job
+        // Uses the same repo and branch that triggered the multibranch job
         checkout scm
       }
     }
@@ -29,7 +29,9 @@ pipeline {
 
           cmake3 -S llvm -B "${BUILD_DIR}" -G Ninja \
             -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" \
-            -DLLVM_ENABLE_PROJECTS="${LLVM_PROJECTS}"
+            -DLLVM_ENABLE_PROJECTS="${LLVM_PROJECTS}" \
+            -DCMAKE_C_COMPILER=/usr/bin/gcc10 \
+            -DCMAKE_CXX_COMPILER=/usr/bin/g++10
         '''
       }
     }

>From 7deeab63845b2a9ec46787b3dfb9ad80dbe67c33 Mon Sep 17 00:00:00 2001
From: Rodrigo Luiz Galdino Camargo <galdinocamargo at gmail.com>
Date: Tue, 25 Nov 2025 18:33:49 +0000
Subject: [PATCH 4/4] updated

---
 Jenkinsfile | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/Jenkinsfile b/Jenkinsfile
index f0db469e0af9a..baa13aff079c9 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -8,14 +8,18 @@ pipeline {
 
   environment {
     BUILD_TYPE    = 'Release'
-    LLVM_PROJECTS = 'clang;lld'   // adjust if you want more or less
+    LLVM_PROJECTS = 'clang;lld'   // adjust if you want more/less
     BUILD_DIR     = 'build'
+
+    // Use GCC 10 toolchain installed on the AMI
+    CC  = 'gcc10-gcc'
+    CXX = 'gcc10-g++'
   }
 
   stages {
     stage('Checkout') {
       steps {
-        // Uses the same repo and branch that triggered the multibranch job
+        // Uses the same repo/branch that triggered the multibranch job
         checkout scm
       }
     }
@@ -30,8 +34,8 @@ pipeline {
           cmake3 -S llvm -B "${BUILD_DIR}" -G Ninja \
             -DCMAKE_BUILD_TYPE="${BUILD_TYPE}" \
             -DLLVM_ENABLE_PROJECTS="${LLVM_PROJECTS}" \
-            -DCMAKE_C_COMPILER=/usr/bin/gcc10 \
-            -DCMAKE_CXX_COMPILER=/usr/bin/g++10
+            -DCMAKE_C_COMPILER="${CC}" \
+            -DCMAKE_CXX_COMPILER="${CXX}"
         '''
       }
     }
@@ -45,7 +49,7 @@ pipeline {
       }
     }
 
-    // Optional, wire later once build works and you decide what to run
+    // Optional tests, keep commented until you decide what to run
     // stage('Smoke tests') {
     //   steps {
     //     sh '''



More information about the llvm-commits mailing list