diff mbox series

[bug#63206,v3] gnu: gnushogi: Fix build.

Message ID 765feb5a519d82294ac2032b18c4ad22d9fd7c29.1686481609.git.gemmaro.dev@gmail.com
State New
Headers show
Series [bug#63206,v3] gnu: gnushogi: Fix build. | expand

Commit Message

gemmaro June 11, 2023, 11:13 a.m. UTC
* 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.
---
Hello,

Thank you for the review.  I tried to use #:make-flags in the revision
2, and additionally dealt with warnings and enable check phase in this
revision.

Best,
gemmaro.

 gnu/packages/games.scm | 51 ++++++++++++++++++++++++++++++++----------
 1 file changed, 39 insertions(+), 12 deletions(-)


base-commit: 73fa2889895f35bcf0c41f1174413381fdd7ec2c

Comments

Ludovic Courtès June 14, 2023, 9:20 p.m. UTC | #1
gemmaro <gemmaro.dev@gmail.com> skribis:

> * 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.

Applied, thanks!

Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 8c00c2e66ed..37c51873ab8 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 @@  (define-public gnushogi
   (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