1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- (use-modules (guix)
- (guix build-system cmake)
- (guix build-system gnu)
- (guix gexp)
- (guix git)
- (guix git-download)
- ((guix licenses) #:prefix license:)
- (guix packages)
- (gnu packages autotools)
- (gnu packages base)
- (gnu packages bash)
- (gnu packages gawk)
- (gnu packages glib)
- (gnu packages guile)
- (gnu packages guile-xyz)
- (gnu packages icu4c)
- (gnu packages llvm)
- (gnu packages ninja)
- (gnu packages pkg-config)
- (gnu packages perl)
- (gnu packages python)
- (gnu packages texinfo)
- (gnu packages version-control))
- (define guile-next-next
- (let ((commit "3b76a30e3ca1f0b7ee7944836c2fc5660596b3bd")
- (revision "1"))
- (package
- (inherit guile-next)
- (version (git-version "3.0.9" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.savannah.gnu.org/git/guile.git")
- (commit commit)))
- (file-name (git-file-name "guile" version))
- (sha256
- (base32 "1cgyjz1x8zpfhsw8gsqkak1lnmi780gps6874ks0bi8dwk0lwx6f")))))))
- (define node
- (package
- (name "node")
- (version "22.3.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://nodejs.org/dist/v" version
- "/node-v" version ".tar.xz"))
- (sha256
- (base32 "0k0h4s9s2y0ms3g6xhynsqsrkl9hz001dmj6j0gpc5x5vk8mpf5z"))))
- (build-system gnu-build-system)
- (arguments
- `(#:tests? #f
- #:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key outputs inputs native-inputs #:allow-other-keys)
- (let ((prefix (assoc-ref outputs "out")))
- (setenv "CC_host" "gcc")
- (setenv "CXX_host" "g++")
- (setenv "CC" ,(cc-for-target))
- (setenv "CXX" ,(cxx-for-target))
- (invoke (search-input-file (or native-inputs inputs)
- "/bin/python3")
- "configure"
- (string-append "--prefix=" prefix))))))))
- (native-inputs (list ninja python))
- (native-search-paths
- (list (search-path-specification
- (variable "NODE_PATH")
- (files '("lib/node_modules")))))
- (synopsis "Evented I/O for V8 JavaScript")
- (description
- "Node.js is a platform built on Chrome's JavaScript runtime
- for easily building fast, scalable network applications. Node.js uses an
- event-driven, non-blocking I/O model that makes it lightweight and efficient,
- perfect for data-intensive real-time applications that run across distributed
- devices.")
- (home-page "https://nodejs.org/")
- (license license:expat)))
- (package
- (name "guile-hoot")
- (version "0.5.0-git")
- (source (git-checkout (url (dirname (current-filename)))))
- (build-system gnu-build-system)
- (arguments
- '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
- (native-inputs
- (list autoconf automake guile-syntax-highlight pkg-config texinfo))
- (inputs
- (list guile-next-next node))
- (synopsis "WebAssembly compiler for Guile Scheme")
- (description "Guile-hoot is an ahead-of-time, whole-program WebAssembly compiler for
- GNU Guile.")
- (home-page "https://spritely.institute/hoot")
- (license (list license:asl2.0 license:lgpl3+)))
|