diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2021-06-14 16:34:35 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2021-06-14 16:35:06 +0200 |
commit | 6ad4c7e0e2a790b3f6d2c234e5a71c0cdac2aaf3 (patch) | |
tree | 62f208bc1becf1e2c079e6cccab348f86220883b /gnu/packages | |
parent | 81e11608cbbef06f0b42d1577ec82adc0e25957c (diff) |
gnu: Add avro-cpp-1.9-for-irods.
* gnu/packages/serialization.scm (avro-cpp-1.9-for-irods): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/serialization.scm | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 366f7d56f2..7ea25b886c 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -45,6 +45,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages documentation) #:use-module (gnu packages gcc) + #:use-module (gnu packages llvm) #:use-module (gnu packages lua) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -87,6 +88,43 @@ Code generation is not required to read or write data files nor to use or implement RPC protocols.") (license license:asl2.0))) +(define-public avro-cpp-1.9-for-irods + (package + (inherit avro-cpp-1.9) + (properties `((hidden? . #true))) + (arguments + `(#:configure-flags + '("-DCMAKE_CXX_COMPILER=clang++" + "-DCMAKE_CXX_FLAGS=-stdlib=libc++" + "-DCMAKE_EXE_LINKER_FLAGS=-lc++abi -lz") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "lang/c++"))) + (add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH + (lambda* (#:key inputs #:allow-other-keys) + (let ((gcc (assoc-ref inputs "gcc"))) + (setenv "CPLUS_INCLUDE_PATH" + (string-join + (cons* (string-append (assoc-ref inputs "libcxx+libcxxabi") + "/include/c++/v1") + ;; Hide GCC's C++ headers so that they do not interfere with + ;; the Clang headers. + (delete (string-append gcc "/include/c++") + (string-split (getenv "CPLUS_INCLUDE_PATH") + #\:))) + ":")) + (format #true + "environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%" + (getenv "CPLUS_INCLUDE_PATH")))))))) + (inputs + `(("boost" ,boost-for-irods) + ("clang" ,clang-toolchain-6) + ("libcxx+libcxxabi" ,libcxx+libcxxabi-6) + ("libcxxabi" ,libcxxabi-6) + ("snappy" ,snappy-with-clang6) + ("zlib" ,zlib))))) + (define-public cereal (package (name "cereal") |