summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2026-03-29 21:01:12 +0800
committer宋文武 <iyzsong@member.fsf.org>2026-04-07 18:39:38 +0800
commitffe9714823e8ee35044d0abe0b42b3846268b4b2 (patch)
treedc02eb2b5e255dd546f5af9c8ca951cf130c34b7 /gnu
parent944a0839f81285dd05ee3e47cb0c8da1ce9abb96 (diff)
gnu: Add yoga.
* gnu/packages/web.scm (yoga): New variable. Change-Id: I5116d49a7ba7316f1dd52b4fa35cba1d98d7359f
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/web.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 0f76df65f4b..591b6e82aaa 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -10389,6 +10389,40 @@ libraries.")
console, a file, syslog, journald, or a callback function.")
(license license:lgpl2.1)))
+(define-public yoga
+ (package
+ (name "yoga")
+ (version "3.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/facebook/yoga")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "09g2kispng520mcaky87lkpj7k1lscsz2jyv05cjxzfrwwf4pfyb"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'use-system-googletest
+ (lambda _
+ (substitute* "tests/CMakeLists.txt"
+ (("FetchContent_MakeAvailable[(]googletest[)]")
+ "find_package(GTest REQUIRED)"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "./tests/yogatests")))))))
+ (inputs (list googletest))
+ (home-page "https://github.com/facebook/yoga/")
+ (synopsis "Flexbox layout engine")
+ (description
+ "Yoga is an embeddable and performant flexbox layout engine with bindings
+for multiple languages.")
+ (license license:expat)))
+
(define-public ulfius
(package
(name "ulfius")