From 2eac67986d62e8d81857a7148421ab79d327f3e1 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Fri, 5 Sep 2014 13:16:50 -0400 Subject: [PATCH 2/4] gnu: Add irrlicht. * gnu/packages/games.scm (irrlicht): New variable. --- gnu/packages/games.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 2b6475b..3172df5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -23,6 +23,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages games) + #:use-module (srfi srfi-1) #:use-module ((guix licenses) #:hide (zlib)) #:use-module (guix packages) @@ -54,6 +55,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages linux) + #:use-module (gnu packages zip) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system trivial)) @@ -567,3 +569,49 @@ through the EFX extension. It also facilitates streaming audio, multi-channel buffers, and audio capture.") (home-page "http://kcat.strangesoft.net/openal.html") (license lgpl2.0+))) + +(define-public irrlicht + (package + (name "irrlicht") + (version "1.8.1") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/irrlicht/Irrlicht%20SDK/" + (string-join (take (string-split version #\.) 2) ".") + "/" version "/irrlicht-" version ".zip")) + (sha256 + (base32 + "0yz9lvsc8aqk8wj4rnpanxrw90gqpwn9w5hxp94r8hnm2q0vjjw1")))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-cons-after + 'unpack 'fix-build-env + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "Makefile" + (("INSTALL_DIR = /usr/local/lib") + (string-append "INSTALL_DIR = " out "/lib"))) + ;; The Makefile assumes these directories exist. + (mkdir-p (string-append out "/lib")) + (mkdir-p (string-append out "/include")))) + (alist-replace + 'unpack + (lambda* (#:key source #:allow-other-keys) + (and (zero? (system* "unzip" source)) + ;; The actual source is buried a few directories deep. + (chdir "irrlicht-1.8.1/source/Irrlicht/"))) + ;; No configure script + (alist-delete 'configure %standard-phases))) + #:tests? #f ; no check target + #:make-flags '("CC=gcc" "sharedlib"))) + (native-inputs + `(("unzip" ,unzip))) + (inputs + `(("mesa" ,mesa))) + (synopsis "3D game engine") + (description + "The Irrlicht Engine is a high performance realtime 3D engine written in +C++.") + (home-page "http://irrlicht.sourceforge.net/") + (license zlib))) -- 2.1.1