[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#59237] [PATCH v2 4/5] gnu: Add libomp-15.
From: |
Maxim Cournoyer |
Subject: |
[bug#59237] [PATCH v2 4/5] gnu: Add libomp-15. |
Date: |
Wed, 16 Nov 2022 09:18:29 -0500 |
* gnu/packages/llvm.scm (libomp-15): New variable.
(libomp-14): Inherit from it.
[arguments]: Use substitute-keyword-arguments and override the
chdir-to-source-and-install-license phase. Remove redundant fields.
---
gnu/packages/llvm.scm | 75 ++++++++++++++++++++++++++-----------------
1 file changed, 46 insertions(+), 29 deletions(-)
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 2b958b060e..528c2bc359 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -755,10 +755,44 @@ (define-public clang-14
(base32
"0rhq4wkmvr369nkk059skzzw7jx6qhzqhmiwmqg4sp66avzviwvw")))))
+(define-public libomp-15
+ (package
+ (name "libomp")
+ (version (package-version llvm-15))
+ (source (llvm-monorepo version))
+ (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
+ (list
+ #:configure-flags
+ #~(list "-DLIBOMP_USE_HWLOC=ON"
+ "-DOPENMP_TEST_C_COMPILER=clang"
+ "-DOPENMP_TEST_CXX_COMPILER=clang++")
+ #:test-target "check-libomp"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir-to-source-and-install-license
+ (lambda _
+ (chdir "openmp")
+ (install-file "LICENSE.TXT"
+ (string-append #$output "/share/doc")))))))
+ (native-inputs (list clang-15 llvm-15 perl pkg-config python))
+ (inputs (list `(,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.")
+ (properties `((release-monitoring-url . ,%llvm-release-monitoring-url)
+ (upstream-name . "openmp")))
+ (license license:expat)))
(define-public libomp-14
(package
- (name "libomp")
+ (inherit libomp-15)
(version (package-version llvm-14))
(source (origin
(method url-fetch)
@@ -767,36 +801,19 @@ (define-public libomp-14
(base32
"07zby3gwy5c8jssabrhjk3nsxlwipnm6sk4dsvck1l5d0br1ywsg"))
(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
- (list
- #:configure-flags #~(list "-DLIBOMP_USE_HWLOC=ON"
- "-DOPENMP_TEST_C_COMPILER=clang"
- "-DOPENMP_TEST_CXX_COMPILER=clang++")
- #:test-target "check-libomp"
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'chdir-to-source-and-install-license
- (lambda _
- (chdir #$(string-append "../openmp-" version ".src"))
- (install-file "LICENSE.TXT"
- (string-append #$output "/share/doc")))))))
+ (substitute-keyword-arguments (package-arguments libomp-15)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'chdir-to-source-and-install-license
+ (lambda _
+ (chdir #$(string-append "../openmp-" version ".src"))
+ (install-file "LICENSE.TXT"
+ (string-append #$output "/share/doc"))))))))
(native-inputs
- (list clang-14 llvm-14 perl pkg-config python))
- (inputs
- (list `(,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.")
- (properties `((release-monitoring-url . ,%llvm-release-monitoring-url)
- (upstream-name . "openmp")))
- (license license:expat)))
+ (modify-inputs (package-native-inputs libomp-15)
+ (replace "clang" clang-14)
+ (replace "llvm" llvm-14)))))
(define-public clang-toolchain-14
(make-clang-toolchain clang-14 libomp-14))
--
2.38.1
- [bug#59237] [PATCH 1/3] gnu: Add llvm-15., (continued)
- [bug#59237] [PATCH 1/3] gnu: Add llvm-15., Maxim Cournoyer, 2022/11/13
- [bug#59237] [PATCH v2 0/5] Add LLVM/Clang 15., Maxim Cournoyer, 2022/11/16
- [bug#59237] [PATCH v2 1/5] gnu: Add llvm-15., Maxim Cournoyer, 2022/11/16
- [bug#59237] [PATCH v2 5/5] gnu: Add clang-toolchain-15., Maxim Cournoyer, 2022/11/16
- [bug#59237] [PATCH v2 3/5] gnu: Add clang-15., Maxim Cournoyer, 2022/11/16
- [bug#59237] [PATCH v2 4/5] gnu: Add libomp-15.,
Maxim Cournoyer <=
- [bug#59237] [PATCH v2 2/5] gnu: Add clang-runtime-15., Maxim Cournoyer, 2022/11/16
- [bug#59237] [PATCH 0/3] Add LLVM/Clang 15.0.4., Ludovic Courtès, 2022/11/16