From 52f9c3b88ac9890db666d3de0e82063281db97f7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 23 Feb 2020 23:45:32 +0100 Subject: gnu: Reorganize llvm.scm. * gnu/packages/llvm.scm (libcxx, libclc, libomp, libcxx-6): Move package definitions below the various LLVM/Clang variants. --- gnu/packages/llvm.scm | 224 +++++++++++++++++++++++++------------------------- 1 file changed, 112 insertions(+), 112 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 665e20600f..effd2793d3 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -354,102 +354,6 @@ output), and Binutils.") ("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 , 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 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.") (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 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.") ;; 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 , 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") -- cgit v1.2.3