gnu: Add jsonnet.

* gnu/packages/cpp.scm (jsonnet): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Vivien Kraus 2021-08-02 16:07:08 +02:00 committed by Ludovic Courtès
parent 9f544c631f
commit 0dc9e58929
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -45,6 +45,7 @@ (define-module (gnu packages cpp)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix modules)
#:use-module (guix gexp)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
@ -1211,3 +1212,40 @@ (define-public xsd
;; incompatible with the GPL v2. Refer to the file named FLOSSE for the
;; details.
(license license:gpl2+)))
(define-public jsonnet
(package
(name "jsonnet")
(version "0.17.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/jsonnet")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ddz14699v5lqx3dh0mb7hfffr6fk5zhmzn3z8yxkqqvriqnciim"))
(modules '((guix build utils)))
(snippet
#~(begin
(rename-file "third_party/md5" ".md5")
(delete-file-recursively "third_party")
(delete-file-recursively "doc/third_party")
(substitute* '("core/vm.cpp")
(("#include \"json.hpp\"") "#include <nlohmann/json.hpp>"))
(mkdir "third_party")
(rename-file ".md5" "third_party/md5")))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DUSE_SYSTEM_GTEST=ON" "-DUSE_SYSTEM_JSON=ON")))
(native-inputs
`(("googletest" ,googletest)
("pkg-config" ,pkg-config)))
(inputs
`(("json-modern-cxx" ,json-modern-cxx)))
(home-page "https://jsonnet.org/")
(synopsis "Data templating language")
(description "Jsonnet is a templating language extending JSON
syntax with variables, conditions, functions and more.")
(license license:asl2.0)))