mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-20 14:47:20 +01:00
gnu: Reorganize llvm.scm.
* gnu/packages/llvm.scm (libcxx, libclc, libomp, libcxx-6): Move package definitions below the various LLVM/Clang variants.
This commit is contained in:
parent
25b9992181
commit
52f9c3b88a
1 changed files with 112 additions and 112 deletions
|
@ -354,102 +354,6 @@ (define (make-clang-toolchain clang)
|
|||
("libc-debug" ,glibc "debug")
|
||||
("libc-static" ,glibc "static")))))
|
||||
|
||||
(define-public libcxx
|
||||
(package
|
||||
(name "libcxx")
|
||||
(version (package-version llvm))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (llvm-download-uri "libcxx" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qlx3wlxrnc5cwc1fcfc2vhfsl7j4294hi8y5kxj8hy8wxsjd462"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("clang" ,clang)
|
||||
("llvm" ,llvm)))
|
||||
(home-page "https://libcxx.llvm.org")
|
||||
(synopsis "C++ standard library")
|
||||
(description
|
||||
"This package provides an implementation of the C++ standard library for
|
||||
use with Clang, targeting C++11, C++14 and above.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public libclc
|
||||
(package
|
||||
(name "libclc")
|
||||
(version (package-version llvm))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/llvm/llvm-project.git")
|
||||
(commit (string-append "llvmorg-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"052h16wjcnqginzp7ki4il2xmm25v9nyk0wcz7cg03gbryhl7aqa"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "-DLLVM_CLANG="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang")
|
||||
(string-append "-DPYTHON="
|
||||
(assoc-ref %build-inputs "python")
|
||||
"/bin/python3"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _ (chdir "libclc") #t)))))
|
||||
(native-inputs
|
||||
`(("clang" ,clang)
|
||||
("llvm" ,llvm)
|
||||
("python" ,python)))
|
||||
(home-page "https://libclc.llvm.org")
|
||||
(synopsis "Libraries for the OpenCL programming language")
|
||||
(description
|
||||
"This package provides an implementation of the OpenCL library
|
||||
requirements according to version 1.1 of the OpenCL specification.")
|
||||
;; Apache license 2.0 with LLVM exception
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public libomp
|
||||
(package
|
||||
(name "libomp")
|
||||
(version (package-version llvm))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (llvm-download-uri "openmp" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mf9cpgvix34xlpv0inkgl3qmdvgvp96f7sksqizri0n5xfp1cgp"))
|
||||
(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-libomp"))
|
||||
(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
|
||||
|
@ -536,22 +440,6 @@ (define-public clang-6
|
|||
(define-public clang-toolchain-6
|
||||
(make-clang-toolchain clang-6))
|
||||
|
||||
;; Libcxx files specifically used by PySide2.
|
||||
(define-public libcxx-6
|
||||
(package
|
||||
(inherit libcxx)
|
||||
(version (package-version llvm-6))
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source libcxx))
|
||||
(uri (llvm-download-uri "libcxx" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rzw4qvxp6qx4l4h9amrq02gp7hbg8lw4m0sy3k60f50234gnm3n"))))
|
||||
(native-inputs
|
||||
`(("clang" ,clang-6)
|
||||
("llvm" ,llvm-6)))))
|
||||
|
||||
(define-public llvm-3.9.1
|
||||
(package (inherit llvm)
|
||||
(name "llvm")
|
||||
|
@ -681,6 +569,118 @@ (define-public llvm-for-extempore
|
|||
;; Extempore refuses to build on architectures other than x86_64
|
||||
(supported-systems '("x86_64-linux"))))
|
||||
|
||||
(define-public libcxx
|
||||
(package
|
||||
(name "libcxx")
|
||||
(version (package-version llvm))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (llvm-download-uri "libcxx" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qlx3wlxrnc5cwc1fcfc2vhfsl7j4294hi8y5kxj8hy8wxsjd462"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("clang" ,clang)
|
||||
("llvm" ,llvm)))
|
||||
(home-page "https://libcxx.llvm.org")
|
||||
(synopsis "C++ standard library")
|
||||
(description
|
||||
"This package provides an implementation of the C++ standard library for
|
||||
use with Clang, targeting C++11, C++14 and above.")
|
||||
(license license:expat)))
|
||||
|
||||
;; Libcxx files specifically used by PySide2.
|
||||
(define-public libcxx-6
|
||||
(package
|
||||
(inherit libcxx)
|
||||
(version (package-version llvm-6))
|
||||
(source
|
||||
(origin
|
||||
(inherit (package-source libcxx))
|
||||
(uri (llvm-download-uri "libcxx" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rzw4qvxp6qx4l4h9amrq02gp7hbg8lw4m0sy3k60f50234gnm3n"))))
|
||||
(native-inputs
|
||||
`(("clang" ,clang-6)
|
||||
("llvm" ,llvm-6)))))
|
||||
|
||||
(define-public libclc
|
||||
(package
|
||||
(name "libclc")
|
||||
(version (package-version llvm))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/llvm/llvm-project.git")
|
||||
(commit (string-append "llvmorg-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"052h16wjcnqginzp7ki4il2xmm25v9nyk0wcz7cg03gbryhl7aqa"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "-DLLVM_CLANG="
|
||||
(assoc-ref %build-inputs "clang")
|
||||
"/bin/clang")
|
||||
(string-append "-DPYTHON="
|
||||
(assoc-ref %build-inputs "python")
|
||||
"/bin/python3"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _ (chdir "libclc") #t)))))
|
||||
(native-inputs
|
||||
`(("clang" ,clang)
|
||||
("llvm" ,llvm)
|
||||
("python" ,python)))
|
||||
(home-page "https://libclc.llvm.org")
|
||||
(synopsis "Libraries for the OpenCL programming language")
|
||||
(description
|
||||
"This package provides an implementation of the OpenCL library
|
||||
requirements according to version 1.1 of the OpenCL specification.")
|
||||
;; Apache license 2.0 with LLVM exception
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public libomp
|
||||
(package
|
||||
(name "libomp")
|
||||
(version (package-version llvm))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (llvm-download-uri "openmp" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mf9cpgvix34xlpv0inkgl3qmdvgvp96f7sksqizri0n5xfp1cgp"))
|
||||
(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-libomp"))
|
||||
(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 python-llvmlite
|
||||
(package
|
||||
(name "python-llvmlite")
|
||||
|
|
Loading…
Reference in a new issue