diff options
-rw-r--r-- | packages/komodo/komodo.scm | 5 | ||||
-rw-r--r-- | packages/komodo/refl-cpp.scm | 65 |
2 files changed, 68 insertions, 2 deletions
diff --git a/packages/komodo/komodo.scm b/packages/komodo/komodo.scm index 3de56a9..eadb608 100644 --- a/packages/komodo/komodo.scm +++ b/packages/komodo/komodo.scm @@ -21,7 +21,8 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) - #:use-module (libsodium-komodo)) + #:use-module (libsodium-komodo) + #:use-module (refl-cpp)) ;;; BOTTOM LAYER @@ -75,7 +76,7 @@ (define komodo-wallet-native-inputs (list boost cpprestsdk date doctest doom-meta entt fmt git libsodium-komodo nlohmann-json openssl qtcharts qtdeclarative-5 qttools-5 qtsvg-5 - qtwebengine-5 range-v3 spdlog zlib)) + qtwebengine-5 range-v3 refl-cpp spdlog zlib)) (define komodo-wallet-version "0.7.0-beta") diff --git a/packages/komodo/refl-cpp.scm b/packages/komodo/refl-cpp.scm new file mode 100644 index 0000000..66c92c2 --- /dev/null +++ b/packages/komodo/refl-cpp.scm @@ -0,0 +1,65 @@ +(define-module (refl-cpp) + #:use-module (guix build-system cmake) + #:use-module (guix git-download) + #:use-module ((guix licenses) + :prefix license:) + #:use-module (guix packages)) + +;; DATA LAYER + +(define refl-cpp-description-lines + (list "refl-cpp is a header-only library which provides compile-time " + "reflection and introspection capabilities to C++. By encoding type " + "metadata in the type system, refl-cpp allows you to process types and " + "their fields and functions via constexpr and template " + "metaprogramming.")) + +(define refl-cpp-git-reference-url "https://github.com/veselink1/refl-cpp.git") + +(define refl-cpp-hash "021aggcrh92ircxrk8g375czz5njn62h502arn265d672kn05nrq") + +(define refl-cpp-home-page + "https://veselink1.github.io/refl-cpp/md__introduction.html") + +(define refl-cpp-name "refl-cpp") + +(define refl-cpp-synopsis "Static reflection for C++17") + +(define refl-cpp-tests #f) + +(define refl-cpp-version "v0.12.4") + +;; ABSTRACTION LAYER -1 + +(define refl-cpp-content-hash + (content-hash (base32 refl-cpp-hash))) + +(define refl-cpp-git-reference + (git-reference (url refl-cpp-git-reference-url) + (commit refl-cpp-version))) + +;; ABSTRACTION LAYER 0 + +(define refl-cpp-arguments + (list #:tests? refl-cpp-tests)) + +(define refl-cpp-description + (string-concatenate refl-cpp-description-lines)) + +(define refl-cpp-origin + (origin (uri refl-cpp-git-reference) + (method git-fetch) + (hash refl-cpp-content-hash))) + +;; SURFACE LAYER + +(define-public refl-cpp + (package (name refl-cpp-name) + (version refl-cpp-version) + (source refl-cpp-origin) + (build-system cmake-build-system) + (arguments refl-cpp-arguments) + (synopsis refl-cpp-synopsis) + (description refl-cpp-description) + (license license:expat) + (home-page refl-cpp-home-page))) |