diff options
author | Maxim Cournoyer <[email protected]> | 2022-01-25 22:07:13 -0500 |
---|---|---|
committer | Maxim Cournoyer <[email protected]> | 2022-01-25 22:07:13 -0500 |
commit | 1a5302435ff0d2822b823f5a6fe01faa7a85c629 (patch) | |
tree | ac7810c88b560532f22d2bab2e59609cd7305c21 /gnu/packages/lua.scm | |
parent | 3ff2ac4980dacf10087e4b42bd9fbc490591900c (diff) | |
parent | 070b8a893febd6e7d8b2b7c8c4dcebacf7845aa9 (diff) |
Merge branch 'master' into staging.
With "conflicts" solved (all in favor of master except git) in:
gnu/local.mk
gnu/packages/databases.scm
gnu/packages/glib.scm
gnu/packages/gnome.scm
gnu/packages/gnupg.scm
gnu/packages/gnuzilla.scm
gnu/packages/graphics.scm
gnu/packages/gstreamer.scm
gnu/packages/gtk.scm
gnu/packages/linux.scm
gnu/packages/machine-learning.scm
gnu/packages/networking.scm
gnu/packages/polkit.scm
gnu/packages/pulseaudio.scm
gnu/packages/rpc.scm
gnu/packages/rust.scm
gnu/packages/version-control.scm
gnu/packages/w3m.scm
Diffstat (limited to 'gnu/packages/lua.scm')
-rw-r--r-- | gnu/packages/lua.scm | 129 |
1 files changed, 59 insertions, 70 deletions
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index 0ecc91294f..c828ded1a5 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2020 Simon South <[email protected]> ;;; Copyright © 2020 Paul A. Patience <[email protected]> ;;; Copyright © 2021 Vinícius dos Santos Oliveira <[email protected]> +;;; Copyright © 2021 Greg Hogan <[email protected]> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,7 +44,6 @@ #:use-module (gnu packages) #:use-module (gnu packages boost) #:use-module (gnu packages build-tools) - #:use-module (gnu packages gcc) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages libevent) @@ -72,7 +72,7 @@ (patches (search-patches "lua-pkgconfig.patch" "lua-liblua-so.patch")))) (build-system gnu-build-system) - (inputs `(("readline" ,readline))) + (inputs (list readline)) (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) @@ -105,6 +105,18 @@ automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.") (license license:x11))) +(define-public lua-5.4 + (package (inherit lua) + (version "5.4.3") + (source (origin + (method url-fetch) + (uri (string-append "https://www.lua.org/ftp/lua-" + version ".tar.gz")) + (sha256 + (base32 "1yxvjvnbg4nyrdv10bq42gz6dr66pyan28lgzfygqfwy2rv24qgq")) + (patches (search-patches "lua-5.4-pkgconfig.patch" + "lua-5.4-liblua-so.patch")))))) + (define-public lua-5.2 (package (inherit lua) (version "5.2.4") @@ -159,6 +171,9 @@ for configuration, scripting, and rapid prototyping.") #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (home-page "https://www.luajit.org/") (synopsis "Just in time compiler for Lua programming language version 5.1") + ;; On powerpc64le-linux, the build fails with an error: "No support for + ;; PowerPC 64 bit mode (yet)". See: https://issues.guix.gnu.org/49220 + (supported-systems (delete "powerpc64le-linux" %supported-systems)) (description "LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language. Lua is a powerful, dynamic and light-weight programming @@ -228,8 +243,7 @@ some projects."))) (invoke "lua" "tests/test.lua") (invoke "lua" "tests/test-lom.lua")))))) (inputs - `(("lua" ,lua) - ("expat" ,expat))) + (list lua expat)) (home-page "https://matthewwild.co.uk/projects/luaexpat/") (synopsis "SAX XML parser based on the Expat library") (description "LuaExpat is a SAX XML parser based on the Expat library.") @@ -272,7 +286,7 @@ some projects."))) (invoke "lua" "test/testsrvr.lua")) (invoke "lua" "test/testclnt.lua")))))) (inputs - `(("lua" ,lua))) + (list lua)) (home-page "http://www.tecgraf.puc-rio.br/~diego/professional/luasocket/") (synopsis "Socket library for Lua") (description "LuaSocket is a Lua extension library that is composed by two @@ -322,7 +336,7 @@ handy.") (modify-phases %standard-phases (delete 'configure)))) (inputs - `(("lua" ,lua))) + (list lua)) (home-page "https://keplerproject.github.io/luafilesystem/index.html") (synopsis "File system library for Lua") (description "LuaFileSystem is a Lua library developed to complement the @@ -378,8 +392,7 @@ directory structure and file attributes.") (find-files "." "^[0-9].*\\.lua$")))) #t))))) (inputs - `(("lua" ,lua) - ("openssl" ,openssl))) + (list lua openssl)) (home-page "https://25thandclement.com/~william/projects/luaossl.html") (synopsis "OpenSSL bindings for Lua") (description "The luaossl extension module for Lua provides comprehensive, @@ -426,8 +439,7 @@ binds OpenSSL's bignum, message digest, HMAC, cipher, and CSPRNG interfaces.") (modify-phases %standard-phases (delete 'configure)))) (inputs - `(("lua" ,lua) - ("openssl" ,openssl))) + (list lua openssl)) (propagated-inputs `(("lua-socket" ,(make-lua-socket @@ -530,12 +542,11 @@ secure session between the peers.") (apply invoke "make" "check" make-flags))))))) (native-inputs - `(("m4" ,m4))) + (list m4)) (inputs - `(("lua" ,lua) - ("openssl" ,openssl))) + (list lua openssl)) (propagated-inputs - `(("lua-ossl" ,lua-ossl))) + (list lua-ossl)) (home-page "https://25thandclement.com/~william/projects/cqueues.html") (synopsis "Event loop for Lua using continuation queues") (description "The cqueues extension module for Lua implements an event loop @@ -567,9 +578,9 @@ to be non-intrusive, composable, and embeddable within existing applications.") (base32 "0qc2d1riyr4b5a0gnsmdw2lz5pw65s4ac60hc34w3mmk9l6yg6nl")))) (build-system trivial-build-system) (inputs - `(("lua" ,lua))) + (list lua)) (propagated-inputs - `(("lua-filesystem" ,lua-filesystem))) + (list lua-filesystem)) (arguments `(#:modules ((guix build utils)) #:builder @@ -607,9 +618,9 @@ standard libraries.") (base32 "1h0cf7bp4am54r0j8lhjs2l1c7q5vz74ba0jvw9qdbaqimls46g8")))) (build-system gnu-build-system) (inputs - `(("lua" ,lua))) + (list lua)) (propagated-inputs - `(("lua-penlight" ,lua-penlight))) + (list lua-penlight)) (arguments `(#:tests? #f ;tests must run after installation. #:phases @@ -697,8 +708,8 @@ describing the commented declarations and functions.") (setenv "DISPLAY" ":1") #t))))) (native-inputs - `(("dbus" ,dbus) ;tests use 'dbus-run-session' - ("pkg-config" ,pkg-config))) + (list dbus ;tests use 'dbus-run-session' + pkg-config)) (inputs `(("cairo" ,cairo) ("glib" ,glib) @@ -751,7 +762,7 @@ Notable examples are GTK+, GStreamer and Webkit.") (string-append out "/share/lua/" lua-version)) #t)))) #:test-target "test")) - (inputs `(("lua" ,lua))) + (inputs (list lua)) (synopsis "Pattern-matching library for Lua") (description "LPeg is a pattern-matching library for Lua, based on Parsing Expression @@ -803,8 +814,7 @@ Grammars (PEGs).") (or (getenv "CPATH") ""))) #t))))) (inputs - `(("lua" ,lua) - ("libuv" ,libuv))) + (list lua libuv)) (native-inputs `(("lua-compat" ,(origin @@ -856,7 +866,7 @@ Grammars (PEGs).") #:phases (modify-phases %standard-phases (delete 'configure)))) - (inputs `(("lua" ,lua))) + (inputs (list lua)) (home-page "https://bitop.luajit.org/index.html") (synopsis "Bitwise operations on numbers for Lua") (description @@ -917,8 +927,7 @@ on numbers.") (chdir "./runner") (invoke "./test_runner"))))))) (native-inputs - `(("lua" ,lua) - ("pkg-config" ,pkg-config))) + (list lua pkg-config)) (home-page "https://github.com/jeremyong/Selene") (synopsis "Lua C++11 bindings") (description @@ -1124,8 +1133,7 @@ shell command executions.") "1999bgrh52124a5g4qizav3x257ff2brjr855srpm1jv1nxzbygv")))) (build-system meson-build-system) (arguments - `(#:meson ,meson-0.55 - ;; Tests are disabled for now due to an issue that affecs guix: + `(;; Tests are disabled for now due to an issue that affecs guix: ;; <https://gitlab.com/emilua/emilua/-/issues/22> #:configure-flags (list "-Denable_http=true" @@ -1133,26 +1141,25 @@ shell command executions.") "-Denable_manpages=false" "-Dversion_suffix=-guix1"))) (native-inputs - `(("gcc" ,gcc-10) ; gcc-7 is too old for our C++17 needs - ("luajit-lua52-openresty" ,luajit-lua52-openresty) - ("pkg-config" ,pkg-config) - ("re2c" ,re2c) - ("xxd" ,xxd))) + (list luajit-lua52-openresty + pkg-config + re2c + xxd)) (inputs - `(("boost" ,boost) - ("boost-static" ,boost-static) - ("fmt" ,fmt) - ;; LuaJIT has a 2GiB addressing limit[1] that has been fixed on OpenResty - ;; fork. Emilua is severely affected by this limit, so the upstream package - ;; is avoided. Emilua also depends on the -DLUAJIT_ENABLE_LUA52COMPAT - ;; configure flag[2] for some features to work (e.g. __pairs on HTTP - ;; headers). - ;; - ;; [1] <http://hacksoflife.blogspot.com/2012/12/integrating-luajit-with-x-plane-64-bit.html> - ;; [2] <http://luajit.org/extensions.html#lua52> - ("luajit-lua52-openresty" ,luajit-lua52-openresty) - ("ncurses" ,ncurses) - ("openssl" ,openssl))) + (list boost + boost-static + fmt-7 + ;; LuaJIT has a 2GiB addressing limit[1] that has been fixed on OpenResty + ;; fork. Emilua is severely affected by this limit, so the upstream package + ;; is avoided. Emilua also depends on the -DLUAJIT_ENABLE_LUA52COMPAT + ;; configure flag[2] for some features to work (e.g. __pairs on HTTP + ;; headers). + ;; + ;; [1] <http://hacksoflife.blogspot.com/2012/12/integrating-luajit-with-x-plane-64-bit.html> + ;; [2] <http://luajit.org/extensions.html#lua52> + luajit-lua52-openresty + ncurses + openssl)) (native-search-paths (list (search-path-specification @@ -1170,7 +1177,7 @@ enabled.") (define-public fennel (package (name "fennel") - (version "0.9.1") + (version "1.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -1179,11 +1186,7 @@ enabled.") (file-name (git-file-name name version)) (sha256 (base32 - "07qgycf5cxm9zcc4fgpgvplg95ndavh3ynpdjpvzkikzbnyj7xia")) - (modules '((guix build utils))) - (snippet - '(begin - (delete-file "fennelview.lua") #t)))) + "0d4rpf0f2aqxlca3kxrbhjjhf1knhiz8ccwlx8xid05mc16la70y")))) (build-system gnu-build-system) (arguments '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) @@ -1192,29 +1195,15 @@ enabled.") #:phases (modify-phases %standard-phases (delete 'configure) - (add-before 'build 'patch-lua-calls - (lambda* (#:key inputs #:allow-other-keys) - (let ((lua (string-append (assoc-ref inputs "lua") "/bin/lua"))) - (setenv "LUA" lua) - (substitute* "old/launcher.lua" - (("/usr/bin/env lua") lua)) - #t))) (add-after 'build 'patch-fennel (lambda* (#:key inputs #:allow-other-keys) (substitute* "fennel" (("/usr/bin/env .*lua") - (string-append (assoc-ref inputs "lua") "/bin/lua"))) - #t)) + (search-input-file inputs "/bin/lua"))))) (delete 'check) (add-after 'install 'check - (assoc-ref %standard-phases 'check)) - (add-after 'install 'install-manpage - (lambda* (#:key outputs #:allow-other-keys) - (install-file "fennel.1" - (string-append (assoc-ref outputs "out") - "/share/man/man1")) - #t))))) - (inputs `(("lua" ,lua))) + (assoc-ref %standard-phases 'check))))) + (inputs (list lua)) (home-page "https://fennel-lang.org/") (synopsis "Lisp that compiles to Lua") (description |