diff options
author | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2022-10-04 23:51:00 +0200 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2022-10-16 21:15:10 +0200 |
commit | 46b0143714bea2a8d0b10cf445c2d21f82899aae (patch) | |
tree | ba2d8200c502bcd1651a154c566cd410087bd48e /gnu/packages/game-development.scm | |
parent | e0b11d9e7eac649e90254650c2e7bd45d24b1982 (diff) | |
download | guix-46b0143714bea2a8d0b10cf445c2d21f82899aae.tar guix-46b0143714bea2a8d0b10cf445c2d21f82899aae.tar.gz |
gnu: Add dds.
* gnu/packages/game-development.scm (dds): New variable.
Diffstat (limited to 'gnu/packages/game-development.scm')
-rw-r--r-- | gnu/packages/game-development.scm | 69 |
1 files changed, 68 insertions, 1 deletions
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 513ed31bc0..d40a97eef2 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -17,7 +17,7 @@ ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019, 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2019 Jethro Cao <jethrocao@gmail.com> -;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2020-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro> @@ -74,6 +74,7 @@ #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) #:use-module (gnu packages dbm) + #:use-module (gnu packages gawk) #:use-module (gnu packages gettext) #:use-module (gnu packages gl) #:use-module (gnu packages glib) @@ -85,6 +86,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages image) #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) #:use-module (gnu packages lua) #:use-module (gnu packages m4) #:use-module (gnu packages mp3) @@ -181,6 +183,71 @@ is used in some video games and movies.") (license license:zlib))) +(define-public dds + (package + (name "dds") + (version "2.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dds-bridge/dds") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1iv09qic43nvla02lm8zgnkqpjgnc95p8zh3wyifmnmlh1rz02yj")))) + (build-system gnu-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "src"))) + (replace 'configure + ;; Configuration is done by copying the appropriate + ;; make file in the working directory. There is no + ;; configure script. + (lambda _ + (copy-file "Makefiles/Makefile_linux_shared" + "Makefile"))) + (replace 'check + ;; There is no "check" traget. We must compile + ;; a "dtest" program and apply it on a data set. + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (install-file "libdds.so" "../test") + (with-directory-excursion "../test" + (copy-file "Makefiles/Makefile_linux" + "Makefile") + (substitute* "Makefile" + (("-Werror") "")) + (invoke "make") + (invoke "./dtest" "-f" "../hands/list100.txt"))))) + (replace 'install + ;; "install" target merely moves ".so" file around + ;; the source directory. We install it in the store, + ;; along with all shipped documentation (which cannot + ;; be built from source unfortunately). + (lambda _ + (install-file "libdds.so" + (string-append #$output "/lib")) + (let ((doc (string-append #$output + "/share/doc/" + #$name "-" #$version))) + (install-file "../LICENSE" doc) + (copy-recursively "../doc" doc))))))) + (native-inputs + (list gawk procps)) + (inputs + (list boost)) + (home-page "http://privat.bahnhof.se/wb758135/") + (synopsis "Double dummy solver for the bridge card game") + (description "DDS is a double-dummy solver of bridge hands. It supports +single-threading and multi-threading for improved performance. DDS +offers a wide range of functions, including par-score calculations.") + (license license:asl2.0))) + (define-public deutex (package (name "deutex") |