[commit: ghc] wip/circleci-ben: CircleCI: Try validating LLVM as well (30fd528)

git at git.haskell.org git at git.haskell.org
Thu Nov 16 20:36:13 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/circleci-ben
Link       : http://ghc.haskell.org/trac/ghc/changeset/30fd528ed47ebc6d51defd16cabb0f3956816a41/ghc

>---------------------------------------------------------------

commit 30fd528ed47ebc6d51defd16cabb0f3956816a41
Author: Ben Gamari <ben at smart-cactus.org>
Date:   Sat Nov 11 19:04:42 2017 -0500

    CircleCI: Try validating LLVM as well


>---------------------------------------------------------------

30fd528ed47ebc6d51defd16cabb0f3956816a41
 .circleci/config.yml | 47 +++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 45 insertions(+), 2 deletions(-)

diff --git a/.circleci/config.yml b/.circleci/config.yml
index cf660c0..9dfe525 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -29,6 +29,15 @@ aliases:
     run:
       name: Boot
       command: ./boot
+    run:
+      name: Populate mk/build.mk
+      command: |
+        cat <<EOF >> mk/build.mk
+        BuildFlavour=$BUILD_FLAVOUR
+        ifneq "\$(BuildFlavour)" ""
+        include mk/flavours/$(BuildFlavour).mk
+        endif
+        EOF
   - &configure_unix
     run:
       name: Configure
@@ -49,6 +58,10 @@ aliases:
     run:
       name: Test
       command: make test
+  - &slowtest
+    run:
+      name: Full Test
+      command: make slowtest
   - &bindist
     run:
       name: Create bindist
@@ -143,14 +156,43 @@ jobs:
       - *make
       - *test
 
+  "validate-x86_64-linux-llvm":
+    resource_class: xlarge
+    docker:
+      - image: haskell:8.2
+    environment:
+      <<: *buildenv
+      BUILD_FLAVOUR: perf-llvm
+    steps:
+      - run:
+          name: Install LLVM
+          command: |
+            apt-get update
+            apt-get install -y curl xz-utils
+            curl http://releases.llvm.org/5.0.0/clang+llvm-5.0.0-x86_64-linux-gnu-debian8.tar.xz | tar -xJC ..
+            # See https://discuss.circleci.com/t/how-to-add-a-path-to-path-in-circle-2-0/11554/3
+            echo "export PATH=`pwd`/../clang+llvm-5.0.0-x86_64-linux-gnu-debian8/bin:\$PATH" >> $BASH_ENV
+      - run:
+          name: Verify that llc works
+          command: llc
+      - *precheckout
+      - checkout
+      - *prepare
+      - *submodules
+      - *boot
+      - *configure_unix
+      - *make
+      - *slowtest
+
 workflows:
   version: 2
   validate:
     jobs:
-    - validate-x86_64-linux
+    #- validate-x86_64-linux
     # FreeBSD disabled: https://github.com/haskell/unix/issues/102
     # - validate-x86_64-freebsd
-    - validate-x86_64-darwin
+    #- validate-x86_64-darwin
+    - validate-x86_64-linux-llvm
 
   nightly:
     triggers:
@@ -162,3 +204,4 @@ workflows:
                 - master
     jobs:
     - validate-x86_64-linux-unreg
+    - validate-x86_64-linux-llvm



More information about the ghc-commits mailing list