summaryrefslogtreecommitdiff
path: root/gnu/packages/games.scm
diff options
context:
space:
mode:
authorgemmaro <gemmaro.dev@gmail.com>2023-06-11 20:13:33 +0900
committerLudovic Courtès <ludo@gnu.org>2023-06-14 23:19:44 +0200
commitc1ef5df61d1ef81780dcf063eab65f2463b9c762 (patch)
tree15c3cca34234abf44789280663509c8138ec059a /gnu/packages/games.scm
parent09c4dc5b398d81f6398769b628a81db9712b2e58 (diff)
gnu: gnushogi: Fix build.
* gnu/packages/games.scm (gnushogi) [source]: Fix warnings by prefixing "__FUNCTION__" with "__extension__". [arguments]: Turn off some GCC warnings in C flags. Set the linker flag to build the program. Skip the "--enable-fast-install" flag in the configure phase. Enable the "sizetest" test in the check phase. [synopsis]: Remove "The" so that the sentence doesn't start with it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/games.scm')
-rw-r--r--gnu/packages/games.scm51
1 files changed, 39 insertions, 12 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 8c00c2e66e..37c51873ab 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -78,6 +78,7 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
+;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2043,20 +2044,46 @@ scriptable with Guile.")
(package
(name "gnushogi")
(version "1.4.2")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gnushogi/gnushogi-"
- version ".tar.gz"))
- (sha256
- (base32
- "0a9bsl2nbnb138lq0h14jfc5xvz7hpb2bcsj4mjn6g1hcsl4ik0y"))))
- (arguments `(#:tests? #f)) ;; No check target.
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/gnushogi/gnushogi-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0a9bsl2nbnb138lq0h14jfc5xvz7hpb2bcsj4mjn6g1hcsl4ik0y"))
+ (modules '((guix build utils)))
+ ;; Fix "warning: ISO C90 does not support ‘__func__’ predefined
+ ;; identifier [-Wpedantic]"
+ (snippet '(begin
+ (substitute* "gnushogi/dspwrappers.c"
+ (("__FUNCTION__")
+ "__extension__ __FUNCTION__"))))))
+ (arguments
+ `(#:configure-flags (list (string-append
+ "CFLAGS="
+ (string-join '("-Wno-format"
+ "-Wno-unused-but-set-variable"
+ "-Wno-bool-compare")
+ " ")))
+ #:make-flags '("LDFLAGS=-z muldefs")
+ #:phases (modify-phases %standard-phases
+ ;; Skip --enable-fast-install flag
+ (replace 'configure
+ (lambda* (#:key outputs configure-flags #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (setenv "CONFIG_SHELL"
+ (which "sh"))
+ (setenv "SHELL"
+ (which "sh"))
+ (apply invoke "./configure"
+ (string-append "--prefix=" out) configure-flags)))))
+ #:test-target "sizetest"))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/gnushogi/")
- (synopsis "The game of Shogi (Japanese chess)")
- (description "GNU Shogi is a program that plays the game Shogi (Japanese
-Chess). It is similar to standard chess but this variant is far more complicated.")
+ (synopsis "Game of Shogi (Japanese chess)")
+ (description
+ "GNU Shogi is a program that plays the game Shogi (Japanese Chess).
+It is similar to standard chess but this variant is far more complicated.")
(license license:gpl3+)))
(define-public ltris