unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#60153] [PATCH] gnu: python-pygame: Update to 2.1.2.
@ 2022-12-17 10:01 Adam Faiz via Guix-patches via
       [not found] ` <93aa8b09-cc29-4030-3c76-458158ea0c0f@disroot.org>
                   ` (5 more replies)
  0 siblings, 6 replies; 18+ messages in thread
From: Adam Faiz via Guix-patches via @ 2022-12-17 10:01 UTC (permalink / raw)
  To: 60153

 From 2641ac309552016f5095b8f50259cd92b760ebad Mon Sep 17 00:00:00 2001
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 17 Dec 2022 17:37:21 +0800
Subject: [PATCH] gnu: python-pygame: Update to 2.1.2.

* gnu/packages/game-development.scm (python-pygame): Update to 2.1.2.
[inputs]: Use the new style.
[description]: Re-indent.
---
  gnu/packages/game-development.scm | 119 +++++++++++++-----------------
  1 file changed, 51 insertions(+), 68 deletions(-)

diff --git a/gnu/packages/game-development.scm 
b/gnu/packages/game-development.scm
index 4a0435045b..c3d8d9a8a9 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1194,92 +1194,75 @@ (define-public quesoglc
  (define-public python-pygame
    (package
      (name "python-pygame")
-    (version "1.9.4")
+    (version "2.1.2")
      (source (origin
                (method url-fetch)
                (uri (pypi-uri "pygame" version))
                (sha256
                 (base32
-                "1dn0nb86jl7yr8709cncxdr0yrmviqakw7zx3g8jbbwrr60if3bh"))))
+                "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n"))
+              (modules '((guix build utils)))
+              ;; Fix the configure script to allow passing the 
dependencies as
+              ;; environment variables.
+              (snippet
+               #~(begin
+                   (substitute* "buildconfig/config_unix.py"
+                     (("localbase.d") "d")
+                     (("origincdirs = .*/include.*")
+                      "origincdirs = 
os.environ['ORIGINCDIRS'].split(\":\")\n"))))))
      (build-system python-build-system)
      (arguments
       `(#:tests? #f                ; tests require pygame to be 
installed first
         #:phases
         (modify-phases %standard-phases
-         ;; Set the paths to the dependencies manually because
-         ;; the configure script does not allow passing them as
-         ;; parameters.  This also means we can skip the configure
-         ;; phase.
+         ;; Pass the dependencies to the configure script
+         ;; through environment variables.
           (add-before 'build 'set-library-paths
             (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let ((sdl-ref   (assoc-ref inputs "sdl"))
-                   (font-ref  (assoc-ref inputs "sdl-ttf"))
-                   (image-ref (assoc-ref inputs "sdl-image"))
-                   (mixer-ref (assoc-ref inputs "sdl-mixer"))
+             (let ((font-ref  (assoc-ref inputs "sdl2-ttf"))
+                   (image-ref (assoc-ref inputs "sdl2-image"))
+                   (mixer-ref (assoc-ref inputs "sdl2-mixer"))
                     (smpeg-ref (assoc-ref inputs "libsmpeg"))
                     (png-ref   (assoc-ref inputs "libpng"))
-                   (jpeg-ref  (assoc-ref inputs "libjpeg"))
-                   (freetype-ref (assoc-ref inputs "freetype"))
-                   (v4l-ref   (assoc-ref inputs "v4l-utils"))
-                   (out-ref   (assoc-ref outputs "out")))
-               (substitute* "Setup.in"
-                 (("SDL = -I/usr/include/SDL")
-                  (string-append "SDL = -I" sdl-ref "/include/SDL -I.")))
-               (substitute* "Setup.in"
-                 (("FONT = -lSDL_ttf")
-                  (string-append "FONT = -I" font-ref "/include/SDL -L"
-                                 font-ref "/lib -lSDL_ttf")))
-               (substitute* "Setup.in"
-                 (("IMAGE = -lSDL_image")
-                  (string-append "IMAGE = -I" image-ref "/include/SDL -L"
-                                 image-ref "/lib -lSDL_image")))
-               (substitute* "Setup.in"
-                 (("MIXER = -lSDL_mixer")
-                  (string-append "MIXER = -I" mixer-ref "/include/SDL -L"
-                                 mixer-ref "/lib -lSDL_mixer")))
-               (substitute* "Setup.in"
-                 (("SMPEG = -lsmpeg")
-                  (string-append "SMPEG = -I" smpeg-ref "/include/smpeg -L"
-                                 smpeg-ref "/lib -lsmpeg")))
-               (substitute* "Setup.in"
-                 (("PNG = -lpng")
-                  (string-append "PNG = -I" png-ref "/include -L"
-                                 png-ref "/lib -lpng")))
-               (substitute* "Setup.in"
-                 (("JPEG = -ljpeg")
-                  (string-append "JPEG = -I" jpeg-ref "/include -L"
-                                 jpeg-ref "/lib -ljpeg")))
-
-               (substitute* "Setup.in"
-                 (("FREETYPE = -lfreetype")
-                  (string-append "FREETYPE = -I" freetype-ref 
"/include/freetype2 -L"
-                                 freetype-ref "/lib -lfreetype")))
-
-               (substitute* "Setup.in"
-                 (("^pypm") "#pypm"))
-               ;; Create a path to a header file provided by v4l-utils.
-               (system* "mkdir" "linux")
-               (system* "ln" "--symbolic"
-                        (string-append v4l-ref 
"/include/libv4l1-videodev.h")
-                        "linux/videodev.h")
-               (system* "ln" "--symbolic" "Setup.in" "Setup")))))))
+                   (jpeg-ref  (assoc-ref inputs "libjpeg-turbo"))
+                   (libx11-ref (assoc-ref inputs "libx11"))
+                   (portmidi-ref (assoc-ref inputs "portmidi")))
+               (setenv "LOCALBASE" " ")
+               (setenv "ORIGLIBDIRS"
+                       (string-append
+                        font-ref "/lib:" image-ref "/lib:" image-ref 
"/lib:"
+                        mixer-ref "/lib:" smpeg-ref "/lib:" png-ref "/lib:"
+                        jpeg-ref "/lib:" libx11-ref "/lib:" 
portmidi-ref "/lib"))
+               (setenv "ORIGINCDIRS"
+                       (string-append
+                        font-ref "/include/SDL2:"
+                        image-ref "/include/SDL2:"
+                        image-ref "/include/SDL:"
+                        mixer-ref "/include/SDL2:"
+                        smpeg-ref "/include/smpeg:"
+                        png-ref "/include:"
+                        jpeg-ref "/include:"
+                        libx11-ref "/include/X11:"
+                        portmidi-ref "/include"))))))))
+    (native-inputs
+     (list pkg-config))
      (inputs
-     `(("freetype" ,freetype)
-       ("sdl" ,sdl)
-       ("sdl-image" ,sdl-image)
-       ("sdl-mixer" ,sdl-mixer)
-       ("sdl-ttf" ,sdl-ttf)
-       ("sdl-gfx" ,sdl-gfx)
-       ("libjpeg" ,libjpeg-turbo)
-       ("libpng" ,libpng)
-       ("libX11" ,libx11)
-       ("libsmpeg" ,libsmpeg)
-       ("portmidi" ,portmidi)
-       ("v4l-utils" ,v4l-utils)))
+     (list freetype
+           sdl2
+           sdl2-image
+           sdl2-mixer
+           sdl2-ttf
+           sdl2-gfx
+           libjpeg-turbo
+           libpng
+           libx11
+           libsmpeg
+           portmidi
+           v4l-utils))
      (home-page "https://www.pygame.org")
      (synopsis "SDL wrapper for Python")
      (description "Pygame is a set of Python modules designed for 
writing games.
-Pygame adds functionality on top of the excellent SDL library. This 
allows you
+  Pygame adds functionality on top of the excellent SDL library.  This 
allows you
  to create fully featured games and multimedia programs in the python 
language.")
      (license (list license:bsd-2
                     ;; python numeric license as listed by Debian looks 
like
-- 
2.38.1




^ permalink raw reply related	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2022-12-31  7:35 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-17 10:01 [bug#60153] [PATCH] gnu: python-pygame: Update to 2.1.2 Adam Faiz via Guix-patches via
     [not found] ` <93aa8b09-cc29-4030-3c76-458158ea0c0f@disroot.org>
2022-12-17 10:52   ` [bug#60153] Fwd: " Liliana Marie Prikler
2022-12-18 14:15     ` Adam Faiz via Guix-patches via
2022-12-18 15:02       ` Liliana Marie Prikler
2022-12-18 15:51 ` [bug#60153] [PATCH v2 1/3] " Adam Faiz
2022-12-23 23:20   ` Adam Faiz via Guix-patches via
2022-12-23 23:43     ` Adam Faiz via Guix-patches via
2022-12-23 23:54       ` Adam Faiz via Guix-patches via
2022-12-24  5:51       ` Liliana Marie Prikler
2022-12-24 13:19         ` Adam Faiz via Guix-patches via
2022-12-24  5:39     ` Liliana Marie Prikler
2022-12-18 15:51 ` [bug#60153] [PATCH v1 " Adam Faiz via Guix-patches via
2022-12-18 15:54   ` [bug#60153] [PATCH v1 2/3] gnu: python-pygame: Use gexps and new style inputs Adam Faiz via Guix-patches via
2022-12-18 15:57     ` [bug#60153] [PATCH v1 3/3] gnu: python-pygame: Fix description Adam Faiz via Guix-patches via
2022-12-18 15:54 ` [bug#60153] [PATCH v2 2/3] gnu: python-pygame: Use G-Expressions and new-style inputs Adam Faiz
2022-12-22 20:45 ` [bug#60153] [PATCH v2 3/3] gnu: python-pygame: Reword description Liliana Marie Prikler
2022-12-22 21:09 ` [bug#60153] [PATCH v2 0/3] Update python-pygame to 2.1.2 Liliana Marie Prikler
2022-12-31  7:34   ` bug#60153: " Liliana Marie Prikler

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).