From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56189) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d0bPr-0008NC-Ee for guix-patches@gnu.org; Tue, 18 Apr 2017 18:16:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d0bPo-0001dy-6J for guix-patches@gnu.org; Tue, 18 Apr 2017 18:16:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:57107) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d0bPm-0001dd-BC for guix-patches@gnu.org; Tue, 18 Apr 2017 18:16:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1d0bPl-0004MI-UN for guix-patches@gnu.org; Tue, 18 Apr 2017 18:16:01 -0400 Subject: bug#26488: [PATCH] gnu: Add crawl. Resent-Message-ID: References: <9758282d-96a4-8fe4-183b-a60a43a9eab9@cock.li> <791d5ba7.AEQAJP3OyzEAAAAAAAAAAAO02gcAAAACwQwAAAAAAAW9WABY8IM9@mailjet.com> <8ac92fe4-14dd-3933-8901-bea4ff8673ac@cock.li> From: nee Message-ID: <43dae64d-8d60-8930-ce6b-12afd44fe787@cock.li> Date: Wed, 19 Apr 2017 00:15:33 +0200 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------E5474E7F2518294641D11115" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 26488@debbugs.gnu.org This is a multi-part message in MIME format. --------------E5474E7F2518294641D11115 Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 8bit Am 17.04.2017 um 20:37 schrieb Arun Isaac: > The parallel-build? and parallel-tests? arguments are only to disable > parallel builds and tests for packages whose build procedures fail when > run parallely. crawl's build and tests work fine when run in > parallel. So, you don't have to allow for sequential builds in your > 'check phase. You can just assume the build is always going to be > parallel. No need to test for parallel-build? and parallel-test?. > Okay, removed it. >> + (setenv "HOME" (getcwd)) >> + ;; Fake a terminal for the test cases. >> + (setenv "TERM" "xterm-256color") >> + (setenv "COLUMNS" "80") >> + (setenv "LINES" "24") > > It looks like COLUMNS and LINES are not needed to fake a terminal. I was > able to build successfully without them. Please check. > I checked it and you are right. I assumed it would impact the tests, because I know that crawl won't run in too small terminals. That doesn't seem to be the case, so I removed it now. > You can combine the two make commands into one. > > Also note that only the last argument of apply needs to be a list. No > need to cons* together to construct a list like you have done. > Always nice to learn how I can make things shorter :) > bison and flex are native-inputs. The bison and flex executables are > required only at build time. > Okay, I moved them into native and it still works. > It would be nice if you could sort all inputs and native-inputs in > alphabetical order. Not all package definitions do it. But, it does look > neater. > Okay, I reordered them. Thank you very much, for your intensive help with cleaning up this package! --------------E5474E7F2518294641D11115 Content-Type: text/x-patch; name="0001-gnu-Add-crawl.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0001-gnu-Add-crawl.patch" =46rom 868d777e1856019c0037c43647cfa245f0d0fb5b Mon Sep 17 00:00:00 2001 From: nee Date: Thu, 13 Apr 2017 22:45:18 +0200 Subject: [PATCH] gnu: Add crawl. * gnu/packages/games.scm (crawl): New variable. --- gnu/packages/games.scm | 71 ++++++++++++++++++++++++++++++++++++++++++++= ++++++ 1 file changed, 71 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 710b2746c..451500a04 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -27,6 +27,7 @@ ;;; Copyright =C2=A9 2017 Adonay "adfeno" Felipe Nogueira ;;; Copyright =C2=A9 2017 Arun Isaac ;;; Copyright =C2=A9 2017 Tobias Geerinckx-Rice +;;; Copyright =C2=A9 2017 nee ;;; ;;; This file is part of GNU Guix. ;;; @@ -115,6 +116,8 @@ #:use-module (gnu packages messaging) #:use-module (gnu packages upnp) #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages bison) + #:use-module (gnu packages flex) #:use-module (guix build-system gnu) #:use-module (guix build-system haskell) #:use-module (guix build-system python) @@ -3649,3 +3652,71 @@ small robot living in the nano world, repair its m= aker.") ;; kiki-the-nano-bot/kiki-the-nano-bot_1.0.2+dfsg1-4_copyright> ;; for a statement from the author. (license license:public-domain))) + +(define-public crawl + (package + (name "crawl") + (version "0.19.5") + (source (origin + (method url-fetch) + (uri (list + ;; Older releases get moved into a versioned directo= ry + (string-append "http://crawl.develz.org/release/" + (version-major+minor version) "/stone= _soup-" + version "-nodeps.tar.xz") + ;; Only the latest release is in this directory + (string-append "http://crawl.develz.org/release/ston= e_soup-" + version "-nodeps.tar.xz"))) + (sha256 + (base32 + "00yl2lb2shglxlxzpyk99zvglfx4amjybqwnzdcasvbiggb4cj18"))= )) + (arguments + '(#:make-flags + (let* ((sqlite (assoc-ref %build-inputs "sqlite")) + (out (assoc-ref %outputs "out"))) + (list (string-append "SQLITE_INCLUDE_DIR=3D" sqlite "/include")= + (string-append "prefix=3D" out) + "SAVEDIR=3D~/.crawl" + ;; disable graphical client + "TILES=3D" + ;; don't build any bundeled dependencies + "BUILD_LUA=3D" + "BUILD_SQLITE=3D" + "BUILD_ZLIB=3D" + "-Csource")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + ;; Test cases require the source to be rebuild with the -DDEBUG= define. + ;; Do 'check before 'build to avoid a 3rd build on make install= =2E + (add-before 'build 'check + (lambda* (#:key inputs outputs make-flags + parallel-build? parallel-tests? #:allow-other-keys)= + (setenv "HOME" (getcwd)) + ;; Fake a terminal for the test cases. + (setenv "TERM" "xterm-256color") + (zero? (apply system* "make" "debug" "test" + (cons (format #f "-j~d" (parallel-job-count))= + make-flags)))))))) + (build-system gnu-build-system) + (inputs `(("lua51" ,lua-5.1) + ("ncurses" ,ncurses) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs `(("bison" ,bison) + ("flex" ,flex) + ("pkg-config" ,pkg-config) + ("perl" ,perl))) + (synopsis "Roguelike dungeon crawler game") + (description "Dungeon Crawl Stone Soup is a roguelike adventure thro= ugh +dungeons filled with dangerous monsters in a quest to find the mystifyin= gly +fabulous Orb of Zot.") + (home-page "https://crawl.develz.org") + (license (list license:gpl2+ + license:bsd-2 + license:bsd-3 + license:cc0 + license:x11 + license:zlib + license:asl2.0)))) --=20 2.12.2 --------------E5474E7F2518294641D11115--