summaryrefslogtreecommitdiff
path: root/guix.scm
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2015-12-22 14:35:44 -0500
committerDavid Thompson <dthompson2@worcester.edu>2015-12-22 16:28:18 -0500
commit8b9b5d371d1dc1c780e227ce9a555cf6c88a85c8 (patch)
treef1b6524f92aaa329667f08f4a010a7b5e6925ae8 /guix.scm
parent60d601cbb5eb142d01f880b5902329ada93fc91a (diff)
Upgrade to SDL2!
This commit is massive and crazy and I'm not going to do the usual GNU ChangeLog thing because it's just too much. Let's just be happy that the port is completed!
Diffstat (limited to 'guix.scm')
-rw-r--r--guix.scm55
1 files changed, 50 insertions, 5 deletions
diff --git a/guix.scm b/guix.scm
index c425dd3..0effc5d 100644
--- a/guix.scm
+++ b/guix.scm
@@ -36,7 +36,9 @@
;;
;;; Code:
-(use-modules (guix packages)
+(use-modules (ice-9 match)
+ (srfi srfi-1)
+ (guix packages)
(guix licenses)
(guix git-download)
(guix build-system gnu)
@@ -50,6 +52,50 @@
(gnu packages maths)
(gnu packages image))
+(define guile-sdl2
+ (package
+ (name "guile-sdl2")
+ (version "0.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://dthompson.us/guile-sdl2.git")
+ (commit "6f1b62d")))
+ (sha256
+ (base32
+ "0l2fxbdbw0hggqrs6ai862zdi9x6jibaqb79qfinf6d1rvnyavw3"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags
+ (list (string-append "--with-libsdl2-prefix="
+ (assoc-ref %build-inputs "sdl2"))
+ (string-append "--with-libsdl2-image-prefix="
+ (assoc-ref %build-inputs "sdl2-image"))
+ (string-append "--with-libsdl2-ttf-prefix="
+ (assoc-ref %build-inputs "sdl2-ttf"))
+ (string-append "--with-libsdl2-mixer-prefix="
+ (assoc-ref %build-inputs "sdl2-mixer")))
+ #:make-flags '("GUILE_AUTO_COMPILE=0")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _ (zero? (system* "sh" "bootstrap")))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("guile" ,guile-2.0)
+ ("sdl2" ,sdl2)
+ ("sdl2-image" ,sdl2-image)
+ ("sdl2-mixer" ,sdl2-mixer)
+ ("sdl2-ttf" ,sdl2-ttf)))
+ (synopsis "Guile bindings for SDL2")
+ (description "Guile-sdl2 provides pure Guile Scheme bindings to the
+SDL2 C shared library via the foreign function interface.")
+ (home-page "https://git.dthompson.us/guile-sdl2.git")
+ (license lgpl3+)))
+
(package
(name "sly")
(version "0.1")
@@ -78,12 +124,11 @@
("automake" ,automake)
("texinfo" ,texinfo)))
(propagated-inputs
- `(("guile" ,guile-2.0)
- ("guile-sdl" ,guile-sdl)
+ `(("guile-sdl2" ,guile-sdl2)
("guile-opengl" ,guile-opengl)))
(inputs
- `(("gsl" ,gsl)
- ("freeimage" ,freeimage)
+ `(("guile" ,guile-2.0)
+ ("gsl" ,gsl)
("mesa" ,mesa)))
(synopsis "2D/3D game engine for GNU Guile")
(description "Sly is a 2D/3D game engine written in Guile Scheme.