diff options
Diffstat (limited to 'gnu/packages/squirrel.scm')
-rw-r--r-- | gnu/packages/squirrel.scm | 76 |
1 files changed, 52 insertions, 24 deletions
diff --git a/gnu/packages/squirrel.scm b/gnu/packages/squirrel.scm index 1da0ad9fe3..2c3ed6e570 100644 --- a/gnu/packages/squirrel.scm +++ b/gnu/packages/squirrel.scm @@ -19,37 +19,65 @@ (define-module (gnu packages squirrel) #:use-module (gnu packages) #:use-module (gnu packages cmake) + #:use-module (gnu packages sphinx) #:use-module (guix build-system cmake) - #:use-module (guix git-download) + #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build utils) #:use-module (guix packages) #:use-module (guix utils)) (define-public squirrel - (let ((commit "51137b84e66c4d526809fd8a59f4ba1d38138c76")) - (package - (name "squirrel") - (version "3.1") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/albertodemichelis/squirrel.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "0vbiv1q3qcy2vj8y0b9a2ckswl9ld398n3jnxijvwddrjgya5zav")))) - (build-system cmake-build-system) - (arguments - '(#:tests? #f)) ; no tests - (native-inputs - `(("cmake" ,cmake))) - (home-page "https://squirrel-lang.org/") - (synopsis "High level imperative, object-oriented programming language") - (description - "Squirrel is a high level imperative, object-oriented programming + (package + (name "squirrel") + (version "3.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/squirrel/squirrel3/" + "squirrel " version " stable/squirrel_" + (string-join (string-split version #\.) "_") + "_stable.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jyh1523zrrnh9swanfrda0s14mvwc9431dh07g0nx74hbxsfia8")))) + (build-system cmake-build-system) + (arguments + '(#:configure-flags '("-DDISABLE_STATIC=ON") + #:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-documentation + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc-dir (string-append out "/share/doc/squirrel"))) + (for-each + (lambda (file) + (install-file (string-append "../squirrel3/" file) doc-dir)) + '("COPYRIGHT" "HISTORY" "README" + "doc/sqstdlib3.pdf" "doc/squirrel3.pdf"))) + #t)) + (add-after 'install 'install-headers + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (include-dir (string-append out "/include/squirrel"))) + (mkdir-p include-dir) + (for-each + (lambda (header-file) + (copy-recursively header-file + (string-append include-dir + "/" + (basename header-file)))) + (find-files "../squirrel3/include"))) + #t))))) + (native-inputs + `(("cmake" ,cmake) + ("python-sphinx" ,python-sphinx))) + (home-page "https://squirrel-lang.org/") + (synopsis "High level imperative, object-oriented programming language") + (description + "Squirrel is a high level imperative, object-oriented programming language, designed to be a light-weight scripting language that fits in the size, memory bandwidth, and real-time requirements of applications like video games.") - (license license:expat)))) + (license license:expat))) |