GNU bug report logs - #75443
[PATCH] Add Siv3D

Previous Next

Package: guix-patches;

Reported by: ROCKTAKEY <rocktakey <at> gmail.com>

Date: Wed, 8 Jan 2025 18:06:01 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 75443 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#75443; Package guix-patches. (Wed, 08 Jan 2025 18:06:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to ROCKTAKEY <rocktakey <at> gmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Wed, 08 Jan 2025 18:06:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: ROCKTAKEY <rocktakey <at> gmail.com>
To: guix-patches <at> gnu.org
Subject: [PATCH] Add Siv3D
Date: Thu, 9 Jan 2025 03:05:23 +0900




Information forwarded to rocktakey <at> gmail.com, guix-patches <at> gnu.org:
bug#75443; Package guix-patches. (Wed, 08 Jan 2025 18:13:01 GMT) Full text and rfc822 format available.

Message #8 received at 75443 <at> debbugs.gnu.org (full text, mbox):

From: ROCKTAKEY <rocktakey <at> gmail.com>
To: 75443 <at> debbugs.gnu.org
Cc: ROCKTAKEY <rocktakey <at> gmail.com>
Subject: [PATCH 1/3] gnu: Add boost-1.74.0.
Date: Thu,  9 Jan 2025 03:11:14 +0900
Change-Id: Iddd713d958b052517e1819d2abd926cd1210126c
---
 gnu/packages/boost.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index d090c52d8d..f560ca0800 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -18,6 +18,7 @@
 ;;; Copyright © 2021, 2022 Greg Hogan <code <at> greghogan.com>
 ;;; Copyright © 2021 Franck Pérignon <franck.perignon <at> univ-grenoble-alpes.fr>
 ;;; Copyright © 2021 Aleksandr Vityazev <avityazev <at> posteo.org>
+;;; Copyright © 2025 ROCKTAKEY <rocktakey <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -361,6 +362,30 @@ (define-public boost-for-mysql
        (delete "python-minimal-wrapper")))
     (properties '((hidden? . #t)))))
 
+(define-public boost-for-siv3d
+  (package
+    (inherit boost)
+    (version "1.74.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://boostorg.jfrog.io/artifactory/main/release/"
+                                  version "/source/boost_"
+                                  (version-with-underscores version) ".tar.bz2"))
+              (sha256
+               (base32
+                "1c8nw4jz17zy2y27h7p554a5jza1ymz8phkz71p9181ifx8c3gw3"))))
+    (arguments
+     (substitute-keyword-arguments (package-arguments boost)
+       ((#:phases phases)
+        #~(modify-phases #$phases
+            (add-before 'configure 'substitute-for-python-compatibility
+              (lambda _
+                ;; For compatibility to Python 3.10.
+               ;; Retrived from future commit:
+               ;; https://github.com/boostorg/python/commit/cbd2d9f033c61d29d0a1df14951f4ec91e7d05cd
+               (substitute* '("libs/python/src/exec.cpp")
+                 (("_Py_fopen") "fopen"))))))))))
+
 (define-public boost-sync
   (let ((commit "e690de2d30e2f1649ff500c9a6f3539814994b1c")
         (version "1.55")

base-commit: 5d9e839fce98c49a8db47422a050ce03d799fe02
-- 
2.47.1





Information forwarded to rocktakey <at> gmail.com, guix-patches <at> gnu.org:
bug#75443; Package guix-patches. (Wed, 08 Jan 2025 18:13:02 GMT) Full text and rfc822 format available.

Message #11 received at 75443 <at> debbugs.gnu.org (full text, mbox):

From: ROCKTAKEY <rocktakey <at> gmail.com>
To: 75443 <at> debbugs.gnu.org
Cc: ROCKTAKEY <rocktakey <at> gmail.com>
Subject: [PATCH 2/3] gnu: Add giflib-5.1.4.
Date: Thu,  9 Jan 2025 03:11:15 +0900
Change-Id: I7237db9c86f0e26cc6ceb836cbedc8bb578b072f
---
 gnu/packages/image.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 7337a27b88..8a94806f24 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -39,6 +39,7 @@
 ;;; Copyright © 2023-2024 Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
 ;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom <at> gmail.com>
 ;;; Copyright © 2024 chris <chris <at> bumblehead.com>
+;;; Copyright © 2025 ROCKTAKEY <rocktakey <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1076,6 +1077,33 @@ (define-public giflib
     (home-page "http://giflib.sourceforge.net/")
     (license license:x11)))
 
+(define-public giflib-for-siv3d
+  (package
+    (inherit giflib)
+    (version "5.1.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/giflib/giflib-"
+                                  version ".tar.bz2"))
+              (sha256
+               (base32
+                "1md83dip8rf29y40cm5r7nn19705f54iraz6545zhwa6y8zyq9yz"))))
+    (arguments
+     (append
+      ;; FIXME: Somehow test failed
+      '(#:tests? #f)
+      (substitute-keyword-arguments (package-arguments giflib)
+        ((#:phases phases)
+         #~(modify-phases #$phases
+             (add-before 'build 'configure
+               (lambda args
+                 (apply (assoc-ref %standard-phases 'configure) args)))
+             (replace 'disable-html-doc-gen
+               (lambda _
+                 (substitute* "doc/Makefile.in"
+                   (("^all: allhtml manpages") ""))
+                 #t)))))))))
+
 (define-public libuemf
   (package
     (name "libuemf")
-- 
2.47.1





Information forwarded to rocktakey <at> gmail.com, guix-patches <at> gnu.org:
bug#75443; Package guix-patches. (Wed, 08 Jan 2025 18:13:02 GMT) Full text and rfc822 format available.

Message #14 received at 75443 <at> debbugs.gnu.org (full text, mbox):

From: ROCKTAKEY <rocktakey <at> gmail.com>
To: 75443 <at> debbugs.gnu.org
Cc: ROCKTAKEY <rocktakey <at> gmail.com>
Subject: [PATCH 3/3] gnu: Add Siv3D.
Date: Thu,  9 Jan 2025 03:11:16 +0900
Change-Id: I4564e9d04e1f4a9d7d28c1e39a4acdab0d41d25b
---
 gnu/packages/graphics.scm | 79 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 79 insertions(+)

diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index c950b8a2ae..6b8c88b12e 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -38,6 +38,7 @@
 ;;; Copyright © 2023 Eric Bavier <bavier <at> posteo.net>
 ;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom <at> gmail.com>
 ;;; Copyright © 2024 Ivan Vilata-i-Balaguer <ivan <at> selidor.net>
+;;; Copyright © 2025 ROCKTAKEY <rocktakey <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -69,6 +70,7 @@ (define-module (gnu packages graphics)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cpp)
   #:use-module (gnu packages crypto)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages flex)
@@ -3154,3 +3156,80 @@ (define-public gpaint
 It features cut-and-paste for irregular regions or polygons.")
     (home-page "https://www.gnu.org/software/gpaint/")
     (license license:gpl3+)))
+
+(define-public siv3d
+  (package
+    (name "siv3d")
+    (version "0.6.15")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/Siv3D/OpenSiv3D")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1wigbpijv6f58i1dinv2mnffgcxnm0nw85q6pgc1ywhz9kd4qspv"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:phases #~(modify-phases %standard-phases
+                   (add-before 'configure 'set-cwd
+                     (lambda* (#:key inputs propagated-inputs outputs
+                               #:allow-other-keys)
+                       (chdir "Linux")
+                       (format #t "input: ~a" inputs)
+                       (format #t "propagated-input: ~a" propagated-inputs)))
+                   (delete 'check)
+                   (add-after 'install 'check
+                     (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+                       (when tests?
+                         (with-directory-excursion "../Linux/App"
+                           (let ((configure-flags (list
+                                                   "-DBUILD_TESTING:BOOL=ON"
+                                                   (string-append
+                                                    "-DSiv3D_DIR="
+                                                    (assoc-ref outputs "out")
+                                                    "/lib/cmake/Siv3D")))
+                                 (configure (assoc-ref %standard-phases
+                                                       'configure))
+                                 (build (assoc-ref %standard-phases
+                                                   'build))
+                                 (check (assoc-ref %standard-phases
+                                                   'check)))
+                             ;; #:outputs is needed for -DCMAKE_INSTALL_PREFIX
+                             (configure #:inputs inputs
+                                        #:outputs '(("out" . "/tmp"))
+                                        #:configure-flags configure-flags)
+                             (build #:inputs inputs)
+                             ;; Home directory is used to create cache.
+                             (setenv "HOME" "/tmp")
+                             (check)))))))))
+    (propagated-inputs (list alsa-lib
+                             ;; Due to incompatibility with Boost.Geometry
+                             boost-for-siv3d
+                             curl
+                             ffmpeg
+                             gtk+
+                             ;; Due to GifQuantizeBuffer
+                             giflib-for-siv3d
+                             glu
+                             harfbuzz
+                             mpg123
+                             opencv
+                             opus
+                             opusfile
+                             soundtouch
+                             libtiff
+                             libjpeg-turbo
+                             libvorbis
+                             libwebp
+                             libxft
+                             util-linux
+                             xorg-server))
+    (native-inputs (list pkg-config))
+    (home-page "https://siv3d.github.io/")
+    (synopsis "C++20 framework for creative coding")
+    (description "Siv3D (OpenSiv3D) is a C++20 framework for creative coding
+(2D/3D games, media art, visualizers, and simulators).")
+    (license license:expat)))
-- 
2.47.1





This bug report was last modified 161 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.