summary refs log tree commit diff
path: root/gnu/packages/llvm.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-04-17 00:08:34 +0200
committerMarius Bakke <mbakke@fastmail.com>2019-04-17 00:08:34 +0200
commitf5961dd5854cec1ed9a41365836d63aa15256642 (patch)
tree9e6168827adf5e4e90128d55fad6f0ab6448c86a /gnu/packages/llvm.scm
parent05bb85fda06dc361b8d3d1eef0759606784b3130 (diff)
parente28ff04108ae7506a21d451cc23d63937076e2a3 (diff)
downloadguix-f5961dd5854cec1ed9a41365836d63aa15256642.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/llvm.scm')
-rw-r--r--gnu/packages/llvm.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 3d46b02338..53884daf9b 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -40,7 +40,9 @@
   #:use-module (gnu packages bootstrap)           ;glibc-dynamic-linker
   #:use-module (gnu packages compression)
   #:use-module (gnu packages libffi)
+  #:use-module (gnu packages mpi)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages xml))
 
@@ -282,6 +284,43 @@ code analysis tools.")
 use with Clang, targeting C++11, C++14 and above.")
     (license license:expat)))
 
+(define-public libomp
+  (package
+    (name "libomp")
+    (version (package-version llvm))
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://releases.llvm.org/"
+                                  version  "/openmp-" version
+                                  ".src.tar.xz"))
+              (sha256
+               (base32
+                "030dkg5cypd7j9hq0mcqb5gs31lxwmzfq52j81l7v9ldcy5bf5mz"))
+              (file-name (string-append "libomp-" version ".tar.xz"))))
+    (build-system cmake-build-system)
+    ;; XXX: Note this gets built with GCC because building with Clang itself
+    ;; fails (missing <atomic>, even when libcxx is added as an input.)
+    (arguments
+     '(#:configure-flags '("-DLIBOMP_USE_HWLOC=ON"
+                           "-DOPENMP_TEST_C_COMPILER=clang"
+                           "-DOPENMP_TEST_CXX_COMPILER=clang++")
+       #:test-target "check-libomptarget"))
+    (native-inputs
+     `(("clang" ,clang)
+       ("llvm" ,llvm)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("hwloc" ,hwloc "lib")))
+    (home-page "https://openmp.llvm.org")
+    (synopsis "OpenMP run-time support library")
+    (description
+     "This package provides the run-time support library developed by the LLVM
+project for the OpenMP multi-theaded programming extension.  This package
+notably provides @file{libgomp.so}, which is has a binary interface compatible
+with that of libgomp, the GNU Offloading and Multi Processing Library.")
+    (license license:expat)))
+
 (define-public clang-runtime
   (clang-runtime-from-llvm
    llvm