all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build.
@ 2024-08-11  5:13 Adam Faiz via Guix-patches via
  2024-08-11  5:16 ` [bug#72569] [PATCH 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-11  5:13 UTC (permalink / raw)
  To: 72569

From 6059afbbe3f6a841021193775c1bf1d317dafefe Mon Sep 17 00:00:00 2001
Message-ID: <cover.1723353069.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 13:11:09 +0800
Subject: [PATCH 0/4] gnu: openclonk: Fix build.

AwesomeAdam54321 (4):
  gnu: Add backward-cpp.
  gnu: Add sort-h.
  gnu: openclonk: Fix build.
  gnu: openclonk: Use gexps and new input style.

 gnu/packages/c.scm     |  45 +++++++++++
 gnu/packages/debug.scm |  26 ++++++
 gnu/packages/games.scm | 175 +++++++++++++++++++++--------------------
 3 files changed, 162 insertions(+), 84 deletions(-)


base-commit: b20956651a53a8f23828fdeb6945e1a31e6997a8
-- 
2.41.0




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

* [bug#72569] [PATCH 1/4] gnu: Add backward-cpp.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
@ 2024-08-11  5:16 ` Adam Faiz via Guix-patches via
  2024-08-17 12:15   ` Liliana Marie Prikler
  2024-08-11  5:17 ` [bug#72569] [PATCH 2/4] gnu: Add sort-h Adam Faiz via Guix-patches via
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-11  5:16 UTC (permalink / raw)
  To: 72569

From edcd1203111fe557c22e4b9053d0dcf6cc690794 Mon Sep 17 00:00:00 2001
Message-ID: <edcd1203111fe557c22e4b9053d0dcf6cc690794.1723353069.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1723353069.git.adam.faiz@disroot.org>
References: <cover.1723353069.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 08:40:08 +0800
Subject: [PATCH 1/4] gnu: Add backward-cpp.

* gnu/packages/debug.scm (backward-cpp): New variable.
---
 gnu/packages/debug.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 2cdf87e266..4e652ba94d 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -513,6 +513,32 @@ (define-public qemu-for-american-fuzzy-lop
     ;; Several tests fail on MIPS.
     (supported-systems (delete "mips64el-linux" %supported-systems))))))
 
+(define-public backward-cpp
+  (package
+    (name "backward-cpp")
+    (version "1.6")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/bombela/backward-cpp")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1b2h03iwfhcsg8i4f125mlrjf8l1y7qsr2gsbkv0z03i067lykns"))))
+    (arguments
+     (list
+      #:configure-flags
+      #~(list "-DBACKWARD_SHARED=ON")))
+    (build-system cmake-build-system)
+    (inputs
+     (list libiberty zlib))
+    (synopsis "Stack trace pretty printer for C++")
+    (description
+     "Backward-cpp is a stack trace pretty printer for C++.")
+    (home-page "https://github.com/bombela/backward-cpp")
+    (license license:expat)))
+
 (define-public aflplusplus
   (package
     (inherit american-fuzzy-lop)
-- 
2.41.0




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

* [bug#72569] [PATCH 2/4] gnu: Add sort-h.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
  2024-08-11  5:16 ` [bug#72569] [PATCH 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
@ 2024-08-11  5:17 ` Adam Faiz via Guix-patches via
  2024-08-17 12:26   ` Liliana Marie Prikler
  2024-08-11  5:18 ` [bug#72569] [PATCH 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-11  5:17 UTC (permalink / raw)
  To: 72569

From 0af97f6bab6c523903c075b2578245fc280e6613 Mon Sep 17 00:00:00 2001
Message-ID: <0af97f6bab6c523903c075b2578245fc280e6613.1723353069.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1723353069.git.adam.faiz@disroot.org>
References: <cover.1723353069.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 08:41:05 +0800
Subject: [PATCH 2/4] gnu: Add sort-h.

* gnu/packages/c.scm (sort-h): New variable.
---
 gnu/packages/c.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index a7ac359a94..0b0ff35459 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -695,6 +695,51 @@ (define-public sfsexp
 expressions.")
     (license license:lgpl2.1+)))
 
+(define-public sort-h
+  ;; The latest commit is used as there is no release.
+  (let ((commit "24f5b8b13810ad130109c7b56daf8e99ab0fe1b8")
+        (revision "0"))
+  (package
+    (name "sort-h")
+    (version (git-version "0.0.0" revision commit))
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/swenson/sort")
+                    (commit commit)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0q3pgw51rjq7pb6gc7zx9i48pckyl930lcab4ngxrpa5a8flq850"))
+              (modules '((guix build utils)))
+              (snippet
+               #~(begin
+                   (substitute* "Makefile"
+                     (("^demo:" all)
+                      (string-append
+                       "install:\n\t"
+                       "install -d $(DESTDIR)$(PREFIX)/include\n\t"
+                       "install sort.h $(DESTDIR)$(PREFIX)/include\n\t"
+                       "install sort_extra.h $(DESTDIR)$(PREFIX)/include\n\n"
+                       all)))))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:make-flags
+      #~(list
+         (string-append "CC=" #$(cc-for-target))
+         (string-append "PREFIX=" #$output))
+      #:test-target "test"
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure)
+          (delete 'build))))
+    (home-page "https://github.com/swenson/sort")
+    (synopsis "C implementation of many sorting algorithms")
+    (description "@code{sort.h} is an implementation of a ton of sorting
+algorithms in C with a user-defined type that is provided at include time.")
+    (license license:expat))))
+
 (define-public sparse
   (package
     (name "sparse")
-- 
2.41.0




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

* [bug#72569] [PATCH 3/4] gnu: openclonk: Fix build.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
  2024-08-11  5:16 ` [bug#72569] [PATCH 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
  2024-08-11  5:17 ` [bug#72569] [PATCH 2/4] gnu: Add sort-h Adam Faiz via Guix-patches via
@ 2024-08-11  5:18 ` Adam Faiz via Guix-patches via
  2024-08-11  5:20 ` [bug#72569] [PATCH 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-11  5:18 UTC (permalink / raw)
  To: 72569

From 628f6a299da5035b5c3b3724e78aca9bdb702ba7 Mon Sep 17 00:00:00 2001
Message-ID: <628f6a299da5035b5c3b3724e78aca9bdb702ba7.1723353069.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1723353069.git.adam.faiz@disroot.org>
References: <cover.1723353069.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 09:25:30 +0800
Subject: [PATCH 3/4] gnu: openclonk: Fix build.

* gnu/packages/games.scm (openclonk): Fix build.
[source]<snippet>: Unbundle dependencies and include the <limits> header where
necessary to fix the build.
[arguments]<#:phases>: Remove workarounds for bundled backward-cpp.
[inputs]: Remove dependencies for bundled backward-cpp. Add libb2, pcg-cpp,
and sort-h.
---
 gnu/packages/games.scm | 60 ++++++++++++++++++++++--------------------
 1 file changed, 32 insertions(+), 28 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 9ad6eabad2..504dfe74de 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -123,6 +123,7 @@ (define-module (gnu packages games)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
+  #:use-module (gnu packages c)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -9622,7 +9623,32 @@ (define-public openclonk
                     "openclonk-" version "-src.tar.bz2"))
               (sha256
                (base32
-                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))))
+                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
+              (modules '((guix build utils)))
+              (snippet
+               #~(begin
+                   (delete-file-recursively "thirdparty")
+                   (substitute* "CMakeLists.txt"
+                     (("add_subdirectory\\(thirdparty/.*\\)") "")
+                     (("set_property\\(.*Third-party.*\\)") "")
+                     (("blake2") "b2")
+                     (("thirdparty/timsort/sort\\.h") "")
+                     (("thirdparty/pcg/.*\\.hpp") ""))
+                   (substitute* '("src/lib/C4Random.cpp"
+                                  "src/landscape/C4Particles.h")
+                     (("#include <pcg/pcg_random.hpp>")
+                      "#include <pcg_random.hpp>"))
+                   (substitute* "src/script/C4ScriptLibraries.cpp"
+                     (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
+                      "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
+                   (substitute* '("src/script/C4AulParse.cpp"
+                                  "src/editor/C4EditCursor.cpp"
+                                  "src/gui/C4ScriptGuiWindow.cpp")
+                     (("#include .C4Include\\.h." all)
+                      (string-append "#include <limits>\n" all)))
+                   (substitute* "src/lib/StdMesh.cpp"
+                     (("#include .timsort/sort\\.h.")
+                      "#include <sort.h>"))))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags '("-DAudio_TK=OpenAL")
@@ -9641,30 +9667,7 @@ (define-public openclonk
                (("PATH_SUFFIXES \"src\" \"gtest\"")
                 "PATH_SUFFIXES \"src\""))
              #t))
-         (add-after 'unpack 'adjust-backward-cpp-includes
-           (lambda _
-             ;; XXX: The bundled backward-cpp exports a CMake "interface"
-             ;; that includes external libraries such as libdl from glibc.
-             ;; By default, CMake interface includes are treated as "system
-             ;; headers", and GCC behaves poorly when glibc is passed as a
-             ;; system header (causing #include_next failures).
-
-             ;; Here we prevent targets that consume the Backward::Backward
-             ;; interface from treating it as "system includes".
-             (substitute* "CMakeLists.txt"
-               (("target_link_libraries\\((.+) Backward::Backward\\)" all target)
-                (string-append "set_property(TARGET " target " PROPERTY "
-                               "NO_SYSTEM_FROM_IMPORTED true)\n"
-                               all)))
-             #t))
-         (add-after 'unpack 'add-libiberty
-           ;; Build fails upon linking executables without this.
-           (lambda _
-             (substitute* "thirdparty/backward-cpp/BackwardConfig.cmake"
-               (("set\\(LIBBFD_LIBRARIES (.*?)\\)" _ libraries)
-                (string-append "set(LIBBFD_LIBRARIES " libraries " iberty)")))
-             #t))
-         (add-after 'add-libiberty 'lax-freealut-requirement
+         (add-after 'prepare-gmock 'lax-freealut-requirement
            ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
            ;; it as 1.0.1.  Force minimal version.
            (lambda _
@@ -9689,7 +9692,7 @@ (define-public openclonk
      `(("freealut" ,freealut)
        ("freetype" ,freetype)
        ("glew" ,glew)
-       ("libiberty" ,libiberty)
+       ("libb2" ,libb2)
        ("libjpeg" ,libjpeg-turbo)
        ("libogg" ,libogg)
        ("libpng" ,libpng)
@@ -9698,11 +9701,12 @@ (define-public openclonk
        ("mesa" ,mesa)
        ("miniupnpc" ,miniupnpc)
        ("openal" ,openal)
+       ("pcg-cpp" ,pcg-cpp)
        ("qtbase" ,qtbase-5)
        ("readline" ,readline)
        ("sdl" ,sdl2)
-       ("tinyxml" ,tinyxml)
-       ("zlib" ,zlib)))
+       ("sort-h" ,sort-h)
+       ("tinyxml" ,tinyxml)))
     (home-page "https://www.openclonk.org/")
     (synopsis
      "Multiplayer action game where you control small and nimble humanoids")
-- 
2.41.0




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

* [bug#72569] [PATCH 4/4] gnu: openclonk: Use gexps and new input style.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (2 preceding siblings ...)
  2024-08-11  5:18 ` [bug#72569] [PATCH 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
@ 2024-08-11  5:20 ` Adam Faiz via Guix-patches via
  2024-08-28 15:25 ` [bug#72569] [PATCH v2 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-11  5:20 UTC (permalink / raw)
  To: 72569

From 6059afbbe3f6a841021193775c1bf1d317dafefe Mon Sep 17 00:00:00 2001
Message-ID: <6059afbbe3f6a841021193775c1bf1d317dafefe.1723353069.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1723353069.git.adam.faiz@disroot.org>
References: <cover.1723353069.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 12:50:34 +0800
Subject: [PATCH 4/4] gnu: openclonk: Use gexps and new input style.

* gnu/packages/games.scm (openclonk)[arguments]: Use gexps.
[source]: Reindent.
[native-inputs]: Drop labels.
[inputs]: Drop labels.
---
 gnu/packages/games.scm | 177 +++++++++++++++++++++--------------------
 1 file changed, 90 insertions(+), 87 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 504dfe74de..d8e7dc88fa 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -9616,97 +9616,100 @@ (define-public openclonk
   (package
     (name "openclonk")
     (version "8.1")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "https://www.openclonk.org/builds/release/" version "/"
-                    "openclonk-" version "-src.tar.bz2"))
-              (sha256
-               (base32
-                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
-              (modules '((guix build utils)))
-              (snippet
-               #~(begin
-                   (delete-file-recursively "thirdparty")
-                   (substitute* "CMakeLists.txt"
-                     (("add_subdirectory\\(thirdparty/.*\\)") "")
-                     (("set_property\\(.*Third-party.*\\)") "")
-                     (("blake2") "b2")
-                     (("thirdparty/timsort/sort\\.h") "")
-                     (("thirdparty/pcg/.*\\.hpp") ""))
-                   (substitute* '("src/lib/C4Random.cpp"
-                                  "src/landscape/C4Particles.h")
-                     (("#include <pcg/pcg_random.hpp>")
-                      "#include <pcg_random.hpp>"))
-                   (substitute* "src/script/C4ScriptLibraries.cpp"
-                     (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
-                      "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
-                   (substitute* '("src/script/C4AulParse.cpp"
-                                  "src/editor/C4EditCursor.cpp"
-                                  "src/gui/C4ScriptGuiWindow.cpp")
-                     (("#include .C4Include\\.h." all)
-                      (string-append "#include <limits>\n" all)))
-                   (substitute* "src/lib/StdMesh.cpp"
-                     (("#include .timsort/sort\\.h.")
-                      "#include <sort.h>"))))))
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://www.openclonk.org/builds/release/" version "/"
+             "openclonk-" version "-src.tar.bz2"))
+       (sha256
+        (base32
+         "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            (delete-file-recursively "thirdparty")
+            (substitute* "CMakeLists.txt"
+              (("add_subdirectory\\(thirdparty/.*\\)") "")
+              (("set_property\\(.*Third-party.*\\)") "")
+              (("blake2") "b2")
+              (("thirdparty/timsort/sort\\.h") "")
+              (("thirdparty/pcg/.*\\.hpp") ""))
+            (substitute* '("src/lib/C4Random.cpp"
+                           "src/landscape/C4Particles.h")
+              (("#include <pcg/pcg_random.hpp>")
+               "#include <pcg_random.hpp>"))
+            (substitute* "src/script/C4ScriptLibraries.cpp"
+              (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
+               "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
+            (substitute* '("src/script/C4AulParse.cpp"
+                           "src/editor/C4EditCursor.cpp"
+                           "src/gui/C4ScriptGuiWindow.cpp")
+              (("#include .C4Include\\.h." all)
+               (string-append "#include <limits>\n" all)))
+            (substitute* "src/lib/StdMesh.cpp"
+              (("#include .timsort/sort\\.h.")
+               "#include <sort.h>"))))))
     (build-system cmake-build-system)
     (arguments
-     `(#:configure-flags '("-DAudio_TK=OpenAL")
-       #:test-target "tests"
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'prepare-gmock
-           (lambda* (#:key inputs #:allow-other-keys)
-             (mkdir "gmock")
-             (copy-recursively (assoc-ref inputs "googlemock") "gmock")
-             (substitute* "tests/CMakeLists.txt"
-               (("/usr/src/gmock")
-                (string-append (getcwd) "/gmock/googlemock"))
-               (("/usr/src/gtest")
-                (string-append (getcwd) "/gmock/googletest"))
-               (("PATH_SUFFIXES \"src\" \"gtest\"")
-                "PATH_SUFFIXES \"src\""))
-             #t))
-         (add-after 'prepare-gmock 'lax-freealut-requirement
-           ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
-           ;; it as 1.0.1.  Force minimal version.
-           (lambda _
-             (substitute* "cmake/FindAudio.cmake"
-               (("freealut>=1.1.0") "freealut>=1.0.1"))
-             #t))
-         (add-after 'lax-freealut-requirement 'fix-directories
-           ;; Prefer "$out/share/openclonk" over
-           ;; "$out/share/games/openclonk". Also install "openclonk"
-           ;; binary in "bin/", not "games/".
-           (lambda _
-             (substitute* "CMakeLists.txt"
-               (("share/games/openclonk") "share/openclonk")
-               (("TARGETS openclonk DESTINATION games")
-                "TARGETS openclonk DESTINATION bin"))
-             #t)))))
+     (list
+      #:configure-flags
+      #~(list "-DAudio_TK=OpenAL")
+      #:test-target "tests"
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'prepare-gmock
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let ((gmock (search-input-directory inputs "/googlemock"))
+                    (gtest (search-input-directory inputs "/googletest")))
+                (mkdir "gmock")
+                (copy-recursively gmock "gmock/googlemock")
+                (copy-recursively gtest "gmock/googletest")
+                (substitute* "tests/CMakeLists.txt"
+                  (("/usr/src/gmock")
+                   (string-append (getcwd) "/gmock/googlemock"))
+                  (("/usr/src/gtest")
+                   (string-append (getcwd) "/gmock/googletest"))
+                  (("PATH_SUFFIXES \"src\" \"gtest\"")
+                   "PATH_SUFFIXES \"src\"")))))
+          (add-after 'prepare-gmock 'lax-freealut-requirement
+            ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
+            ;; it as 1.0.1.  Force minimal version.
+            (lambda _
+              (substitute* "cmake/FindAudio.cmake"
+                (("freealut>=1.1.0") "freealut>=1.0.1"))))
+          (add-after 'lax-freealut-requirement 'fix-directories
+            ;; Prefer "$out/share/openclonk" over
+            ;; "$out/share/games/openclonk". Also install "openclonk"
+            ;; binary in "bin/", not "games/".
+            (lambda _
+              (substitute* "CMakeLists.txt"
+                (("share/games/openclonk") "share/openclonk")
+                (("TARGETS openclonk DESTINATION games")
+                 "TARGETS openclonk DESTINATION bin")))))))
     (native-inputs
-     `(("googlemock" ,(package-source googletest))
-       ("googletest" ,googletest)
-       ("pkg-config" ,pkg-config)))
+     (list (package-source googletest)
+           googletest
+           pkg-config))
     (inputs
-     `(("freealut" ,freealut)
-       ("freetype" ,freetype)
-       ("glew" ,glew)
-       ("libb2" ,libb2)
-       ("libjpeg" ,libjpeg-turbo)
-       ("libogg" ,libogg)
-       ("libpng" ,libpng)
-       ("libvorbis" ,libvorbis)
-       ("libxrandr" ,libxrandr)
-       ("mesa" ,mesa)
-       ("miniupnpc" ,miniupnpc)
-       ("openal" ,openal)
-       ("pcg-cpp" ,pcg-cpp)
-       ("qtbase" ,qtbase-5)
-       ("readline" ,readline)
-       ("sdl" ,sdl2)
-       ("sort-h" ,sort-h)
-       ("tinyxml" ,tinyxml)))
+     (list freealut
+           freetype
+           glew
+           libb2
+           libjpeg-turbo
+           libogg
+           libpng
+           libvorbis
+           libxrandr
+           mesa
+           miniupnpc
+           openal
+           pcg-cpp
+           qtbase-5
+           readline
+           sdl2
+           sort-h
+           tinyxml))
     (home-page "https://www.openclonk.org/")
     (synopsis
      "Multiplayer action game where you control small and nimble humanoids")
-- 
2.41.0




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

* [bug#72569] [PATCH 1/4] gnu: Add backward-cpp.
  2024-08-11  5:16 ` [bug#72569] [PATCH 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
@ 2024-08-17 12:15   ` Liliana Marie Prikler
  0 siblings, 0 replies; 12+ messages in thread
From: Liliana Marie Prikler @ 2024-08-17 12:15 UTC (permalink / raw)
  To: Adam Faiz, 72569

Am Sonntag, dem 11.08.2024 um 13:16 +0800 schrieb Adam Faiz:

> --- a/gnu/packages/debug.scm
> +++ b/gnu/packages/debug.scm
> @@ -513,6 +513,32 @@ (define-public qemu-for-american-fuzzy-lop
>      ;; Several tests fail on MIPS.
>      (supported-systems (delete "mips64el-linux" %supported-
> systems))))))
>  
> +(define-public backward-cpp
> +  (package
> +    (name "backward-cpp")
> +    (version "1.6")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/bombela/backward-cpp")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +               
> "1b2h03iwfhcsg8i4f125mlrjf8l1y7qsr2gsbkv0z03i067lykns"))))
> +    (arguments
> +     (list
> +      #:configure-flags
> +      #~(list "-DBACKWARD_SHARED=ON")))
> +    (build-system cmake-build-system)
> +    (inputs
> +     (list libiberty zlib))
> +    (synopsis "Stack trace pretty printer for C++")
> +    (description
> +     "Backward-cpp is a stack trace pretty printer for C++.")
We might want to give this a better description, e.g. saying that it
prints out annotated stacktraces or something.
> +    (home-page "https://github.com/bombela/backward-cpp")
> +    (license license:expat)))
> +
>  (define-public aflplusplus
>    (package
>      (inherit american-fuzzy-lop)
Note: you should pick a wiser location, (e.g. below aflplusplus), so as
to not break this sequence of packages.

Cheers




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

* [bug#72569] [PATCH 2/4] gnu: Add sort-h.
  2024-08-11  5:17 ` [bug#72569] [PATCH 2/4] gnu: Add sort-h Adam Faiz via Guix-patches via
@ 2024-08-17 12:26   ` Liliana Marie Prikler
  0 siblings, 0 replies; 12+ messages in thread
From: Liliana Marie Prikler @ 2024-08-17 12:26 UTC (permalink / raw)
  To: Adam Faiz, 72569

Am Sonntag, dem 11.08.2024 um 13:17 +0800 schrieb Adam Faiz:

> +(define-public sort-h
> +  ;; The latest commit is used as there is no release.
> +  (let ((commit "24f5b8b13810ad130109c7b56daf8e99ab0fe1b8")
> +        (revision "0"))
> +  (package
> +    (name "sort-h")
I'd call this one c-template-sort, after the "subject" on Github.
> +    (version (git-version "0.0.0" revision commit))
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/swenson/sort")
> +                    (commit commit)))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +               
> "0q3pgw51rjq7pb6gc7zx9i48pckyl930lcab4ngxrpa5a8flq850"))
> +              (modules '((guix build utils)))
> +              (snippet
> +               #~(begin
> +                   (substitute* "Makefile"
> +                     (("^demo:" all)
> +                      (string-append
> +                       "install:\n\t"
> +                       "install -d $(DESTDIR)$(PREFIX)/include\n\t"
> +                       "install sort.h
> $(DESTDIR)$(PREFIX)/include\n\t"
> +                       "install sort_extra.h
> $(DESTDIR)$(PREFIX)/include\n\n"
> +                       all)))))))
Note: this package might be a better fit for copy-build-system.  You
can still have a check phase, but I think you'll benefit from the
install plan.
> +    (build-system gnu-build-system)
> +    (arguments
> +     (list
> +      #:make-flags
> +      #~(list
> +         (string-append "CC=" #$(cc-for-target))
> +         (string-append "PREFIX=" #$output))
> +      #:test-target "test"
> +      #:phases
> +      #~(modify-phases %standard-phases
> +          (delete 'configure)
> +          (delete 'build))))
> +    (home-page "https://github.com/swenson/sort")
> +    (synopsis "C implementation of many sorting algorithms")
> +    (description "@code{sort.h} is an implementation of a ton of
> sorting
> +algorithms in C with a user-defined type that is provided at include
> time.")
I'd say something like "This package provides a header-only C library,
that implements several sorting algorithms.  It is configured using
macros and supports user-defined types."

Cheers




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

* [bug#72569] [PATCH v2 1/4] gnu: Add backward-cpp.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (3 preceding siblings ...)
  2024-08-11  5:20 ` [bug#72569] [PATCH 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
@ 2024-08-28 15:25 ` Adam Faiz via Guix-patches via
  2024-08-28 15:27 ` [bug#72569] [PATCH v2 2/4] gnu: Add c-template-sort Adam Faiz via Guix-patches via
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-28 15:25 UTC (permalink / raw)
  To: 72569; +Cc: Liliana Marie Prikler

From 91bf9bff2c3c365d006a0e88024db50f416cd436 Mon Sep 17 00:00:00 2001
Message-ID: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724856297.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 08:40:08 +0800
Subject: [PATCH v2 1/4] gnu: Add backward-cpp.

* gnu/packages/debug.scm (backward-cpp): New variable.
---
 gnu/packages/debug.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 2cdf87e266..4795ae530e 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -566,6 +566,33 @@ (define-public aflplusplus
 redqueen, AFLfast++ power schedules, MOpt mutators, unicorn_mode, etc.
 @end itemize")))
 
+(define-public backward-cpp
+  (package
+    (name "backward-cpp")
+    (version "1.6")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/bombela/backward-cpp")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1b2h03iwfhcsg8i4f125mlrjf8l1y7qsr2gsbkv0z03i067lykns"))))
+    (arguments
+     (list
+      #:configure-flags
+      #~(list "-DBACKWARD_SHARED=ON")))
+    (build-system cmake-build-system)
+    (inputs
+     (list libiberty zlib))
+    (synopsis "Stack trace pretty printer for C++")
+    (description
+     "Backward-cpp is a stack trace pretty printer for C++.
+It can print annotated stack traces using debug info in the executable.")
+    (home-page "https://github.com/bombela/backward-cpp")
+    (license license:expat)))
+
 (define-public stress-make
   (let ((commit "97815bed8060de33952475b3498767c91f59ffd9")
         (revision "2"))                 ;No official source distribution

base-commit: b20956651a53a8f23828fdeb6945e1a31e6997a8
-- 
2.41.0




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

* [bug#72569] [PATCH v2 2/4] gnu: Add c-template-sort.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (4 preceding siblings ...)
  2024-08-28 15:25 ` [bug#72569] [PATCH v2 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
@ 2024-08-28 15:27 ` Adam Faiz via Guix-patches via
  2024-08-28 15:34 ` [bug#72569] [PATCH v2 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
  2024-08-28 15:36 ` [bug#72569] [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
  7 siblings, 0 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-28 15:27 UTC (permalink / raw)
  To: 72569; +Cc: Liliana Marie Prikler

From 666ad0b1961163d67a07abe0e25d4b50fdd98f12 Mon Sep 17 00:00:00 2001
Message-ID: <666ad0b1961163d67a07abe0e25d4b50fdd98f12.1724856297.git.adam.faiz@disroot.org>
In-Reply-To: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724856297.git.adam.faiz@disroot.org>
References: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724856297.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 08:41:05 +0800
Subject: [PATCH v2 2/4] gnu: Add c-template-sort.

* gnu/packages/c.scm (c-template-sort): New variable.
---
 gnu/packages/c.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index a7ac359a94..f74c763f75 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -695,6 +695,41 @@ (define-public sfsexp
 expressions.")
     (license license:lgpl2.1+)))
 
+(define-public c-template-sort
+  ;; The latest commit is used as there is no release.
+  (let ((commit "24f5b8b13810ad130109c7b56daf8e99ab0fe1b8")
+        (revision "0"))
+  (package
+    (name "c-template-sort")
+    (version (git-version "0.0.0" revision commit))
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/swenson/sort")
+                    (commit commit)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0q3pgw51rjq7pb6gc7zx9i48pckyl930lcab4ngxrpa5a8flq850"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan
+      #~'(("sort.h" "include/sort.h")
+          ("sort_extra.h" "include/sort_extra.h"))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'install 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (invoke "make" (string-append "CC=" #$(cc-for-target)))))))))
+    (home-page "https://github.com/swenson/sort")
+    (synopsis "C implementation of many sorting algorithms")
+    (description "This package provides a header-only C library,
+that implements several sorting algorithms.  It is configured using
+macros and supports user-defined types.")
+    (license license:expat))))
+
 (define-public sparse
   (package
     (name "sparse")
-- 
2.41.0




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

* [bug#72569] [PATCH v2 3/4] gnu: openclonk: Fix build.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (5 preceding siblings ...)
  2024-08-28 15:27 ` [bug#72569] [PATCH v2 2/4] gnu: Add c-template-sort Adam Faiz via Guix-patches via
@ 2024-08-28 15:34 ` Adam Faiz via Guix-patches via
  2024-08-28 15:36 ` [bug#72569] [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
  7 siblings, 0 replies; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-28 15:34 UTC (permalink / raw)
  To: 72569; +Cc: Liliana Marie Prikler

From 499630a22aebe8921f317733143e257b09f08be3 Mon Sep 17 00:00:00 2001
Message-ID: <499630a22aebe8921f317733143e257b09f08be3.1724859175.git.adam.faiz@disroot.org>
In-Reply-To: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724859175.git.adam.faiz@disroot.org>
References: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724859175.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 09:25:30 +0800
Subject: [PATCH v2 3/4] gnu: openclonk: Fix build.

* gnu/packages/games.scm (openclonk): Fix build.
[source]<snippet>: Unbundle dependencies and include the <limits> header where
necessary to fix the build.
[arguments]<#:phases>: Remove workarounds for bundled backward-cpp.
[inputs]: Remove dependencies for bundled backward-cpp. Add libb2, pcg-cpp,
and c-template-sort.
---
 gnu/packages/games.scm | 62 ++++++++++++++++++++++--------------------
 1 file changed, 33 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 9ad6eabad2..850d40e66f 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -123,6 +123,7 @@ (define-module (gnu packages games)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
+  #:use-module (gnu packages c)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -9622,7 +9623,32 @@ (define-public openclonk
                     "openclonk-" version "-src.tar.bz2"))
               (sha256
                (base32
-                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))))
+                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
+              (modules '((guix build utils)))
+              (snippet
+               #~(begin
+                   (delete-file-recursively "thirdparty")
+                   (substitute* "CMakeLists.txt"
+                     (("add_subdirectory\\(thirdparty/.*\\)") "")
+                     (("set_property\\(.*Third-party.*\\)") "")
+                     (("blake2") "b2")
+                     (("thirdparty/timsort/sort\\.h") "")
+                     (("thirdparty/pcg/.*\\.hpp") ""))
+                   (substitute* '("src/lib/C4Random.cpp"
+                                  "src/landscape/C4Particles.h")
+                     (("#include <pcg/pcg_random.hpp>")
+                      "#include <pcg_random.hpp>"))
+                   (substitute* "src/script/C4ScriptLibraries.cpp"
+                     (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
+                      "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
+                   (substitute* '("src/script/C4AulParse.cpp"
+                                  "src/editor/C4EditCursor.cpp"
+                                  "src/gui/C4ScriptGuiWindow.cpp")
+                     (("#include .C4Include\\.h." all)
+                      (string-append "#include <limits>\n" all)))
+                   (substitute* "src/lib/StdMesh.cpp"
+                     (("#include .timsort/sort\\.h.")
+                      "#include <sort.h>"))))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags '("-DAudio_TK=OpenAL")
@@ -9641,30 +9667,7 @@ (define-public openclonk
                (("PATH_SUFFIXES \"src\" \"gtest\"")
                 "PATH_SUFFIXES \"src\""))
              #t))
-         (add-after 'unpack 'adjust-backward-cpp-includes
-           (lambda _
-             ;; XXX: The bundled backward-cpp exports a CMake "interface"
-             ;; that includes external libraries such as libdl from glibc.
-             ;; By default, CMake interface includes are treated as "system
-             ;; headers", and GCC behaves poorly when glibc is passed as a
-             ;; system header (causing #include_next failures).
-
-             ;; Here we prevent targets that consume the Backward::Backward
-             ;; interface from treating it as "system includes".
-             (substitute* "CMakeLists.txt"
-               (("target_link_libraries\\((.+) Backward::Backward\\)" all target)
-                (string-append "set_property(TARGET " target " PROPERTY "
-                               "NO_SYSTEM_FROM_IMPORTED true)\n"
-                               all)))
-             #t))
-         (add-after 'unpack 'add-libiberty
-           ;; Build fails upon linking executables without this.
-           (lambda _
-             (substitute* "thirdparty/backward-cpp/BackwardConfig.cmake"
-               (("set\\(LIBBFD_LIBRARIES (.*?)\\)" _ libraries)
-                (string-append "set(LIBBFD_LIBRARIES " libraries " iberty)")))
-             #t))
-         (add-after 'add-libiberty 'lax-freealut-requirement
+         (add-after 'prepare-gmock 'lax-freealut-requirement
            ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
            ;; it as 1.0.1.  Force minimal version.
            (lambda _
@@ -9686,10 +9689,11 @@ (define-public openclonk
        ("googletest" ,googletest)
        ("pkg-config" ,pkg-config)))
     (inputs
-     `(("freealut" ,freealut)
+     `(("c-template-sort" ,c-template-sort)
+       ("freealut" ,freealut)
        ("freetype" ,freetype)
        ("glew" ,glew)
-       ("libiberty" ,libiberty)
+       ("libb2" ,libb2)
        ("libjpeg" ,libjpeg-turbo)
        ("libogg" ,libogg)
        ("libpng" ,libpng)
@@ -9698,11 +9702,11 @@ (define-public openclonk
        ("mesa" ,mesa)
        ("miniupnpc" ,miniupnpc)
        ("openal" ,openal)
+       ("pcg-cpp" ,pcg-cpp)
        ("qtbase" ,qtbase-5)
        ("readline" ,readline)
        ("sdl" ,sdl2)
-       ("tinyxml" ,tinyxml)
-       ("zlib" ,zlib)))
+       ("tinyxml" ,tinyxml)))
     (home-page "https://www.openclonk.org/")
     (synopsis
      "Multiplayer action game where you control small and nimble humanoids")
-- 
2.41.0




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

* [bug#72569] [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style.
  2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
                   ` (6 preceding siblings ...)
  2024-08-28 15:34 ` [bug#72569] [PATCH v2 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
@ 2024-08-28 15:36 ` Adam Faiz via Guix-patches via
  2024-08-31 16:32   ` bug#72569: " Liliana Marie Prikler
  7 siblings, 1 reply; 12+ messages in thread
From: Adam Faiz via Guix-patches via @ 2024-08-28 15:36 UTC (permalink / raw)
  To: 72569; +Cc: Liliana Marie Prikler

From 1b08445834336938d9448a452a38c5c67742ed10 Mon Sep 17 00:00:00 2001
Message-ID: <1b08445834336938d9448a452a38c5c67742ed10.1724859175.git.adam.faiz@disroot.org>
In-Reply-To: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724859175.git.adam.faiz@disroot.org>
References: <91bf9bff2c3c365d006a0e88024db50f416cd436.1724859175.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 11 Aug 2024 12:50:34 +0800
Subject: [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style.

* gnu/packages/games.scm (openclonk)[arguments]: Use gexps.
[source]: Reindent.
[native-inputs]: Drop labels.
[inputs]: Drop labels.
---
 gnu/packages/games.scm | 177 +++++++++++++++++++++--------------------
 1 file changed, 90 insertions(+), 87 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 850d40e66f..f05be5bea2 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -9616,97 +9616,100 @@ (define-public openclonk
   (package
     (name "openclonk")
     (version "8.1")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "https://www.openclonk.org/builds/release/" version "/"
-                    "openclonk-" version "-src.tar.bz2"))
-              (sha256
-               (base32
-                "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
-              (modules '((guix build utils)))
-              (snippet
-               #~(begin
-                   (delete-file-recursively "thirdparty")
-                   (substitute* "CMakeLists.txt"
-                     (("add_subdirectory\\(thirdparty/.*\\)") "")
-                     (("set_property\\(.*Third-party.*\\)") "")
-                     (("blake2") "b2")
-                     (("thirdparty/timsort/sort\\.h") "")
-                     (("thirdparty/pcg/.*\\.hpp") ""))
-                   (substitute* '("src/lib/C4Random.cpp"
-                                  "src/landscape/C4Particles.h")
-                     (("#include <pcg/pcg_random.hpp>")
-                      "#include <pcg_random.hpp>"))
-                   (substitute* "src/script/C4ScriptLibraries.cpp"
-                     (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
-                      "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
-                   (substitute* '("src/script/C4AulParse.cpp"
-                                  "src/editor/C4EditCursor.cpp"
-                                  "src/gui/C4ScriptGuiWindow.cpp")
-                     (("#include .C4Include\\.h." all)
-                      (string-append "#include <limits>\n" all)))
-                   (substitute* "src/lib/StdMesh.cpp"
-                     (("#include .timsort/sort\\.h.")
-                      "#include <sort.h>"))))))
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://www.openclonk.org/builds/release/" version "/"
+             "openclonk-" version "-src.tar.bz2"))
+       (sha256
+        (base32
+         "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            (delete-file-recursively "thirdparty")
+            (substitute* "CMakeLists.txt"
+              (("add_subdirectory\\(thirdparty/.*\\)") "")
+              (("set_property\\(.*Third-party.*\\)") "")
+              (("blake2") "b2")
+              (("thirdparty/timsort/sort\\.h") "")
+              (("thirdparty/pcg/.*\\.hpp") ""))
+            (substitute* '("src/lib/C4Random.cpp"
+                           "src/landscape/C4Particles.h")
+              (("#include <pcg/pcg_random.hpp>")
+               "#include <pcg_random.hpp>"))
+            (substitute* "src/script/C4ScriptLibraries.cpp"
+              (("blake2b.hash_output.get.., raw_output_length, data, data_length, nullptr, 0.")
+               "blake2b(hash_output.get(), (const void*)raw_output_length, data, data_length, (size_t)(0), 0)"))
+            (substitute* '("src/script/C4AulParse.cpp"
+                           "src/editor/C4EditCursor.cpp"
+                           "src/gui/C4ScriptGuiWindow.cpp")
+              (("#include .C4Include\\.h." all)
+               (string-append "#include <limits>\n" all)))
+            (substitute* "src/lib/StdMesh.cpp"
+              (("#include .timsort/sort\\.h.")
+               "#include <sort.h>"))))))
     (build-system cmake-build-system)
     (arguments
-     `(#:configure-flags '("-DAudio_TK=OpenAL")
-       #:test-target "tests"
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'prepare-gmock
-           (lambda* (#:key inputs #:allow-other-keys)
-             (mkdir "gmock")
-             (copy-recursively (assoc-ref inputs "googlemock") "gmock")
-             (substitute* "tests/CMakeLists.txt"
-               (("/usr/src/gmock")
-                (string-append (getcwd) "/gmock/googlemock"))
-               (("/usr/src/gtest")
-                (string-append (getcwd) "/gmock/googletest"))
-               (("PATH_SUFFIXES \"src\" \"gtest\"")
-                "PATH_SUFFIXES \"src\""))
-             #t))
-         (add-after 'prepare-gmock 'lax-freealut-requirement
-           ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
-           ;; it as 1.0.1.  Force minimal version.
-           (lambda _
-             (substitute* "cmake/FindAudio.cmake"
-               (("freealut>=1.1.0") "freealut>=1.0.1"))
-             #t))
-         (add-after 'lax-freealut-requirement 'fix-directories
-           ;; Prefer "$out/share/openclonk" over
-           ;; "$out/share/games/openclonk". Also install "openclonk"
-           ;; binary in "bin/", not "games/".
-           (lambda _
-             (substitute* "CMakeLists.txt"
-               (("share/games/openclonk") "share/openclonk")
-               (("TARGETS openclonk DESTINATION games")
-                "TARGETS openclonk DESTINATION bin"))
-             #t)))))
+     (list
+      #:configure-flags
+      #~(list "-DAudio_TK=OpenAL")
+      #:test-target "tests"
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'prepare-gmock
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let ((gmock (search-input-directory inputs "/googlemock"))
+                    (gtest (search-input-directory inputs "/googletest")))
+                (mkdir "gmock")
+                (copy-recursively gmock "gmock/googlemock")
+                (copy-recursively gtest "gmock/googletest")
+                (substitute* "tests/CMakeLists.txt"
+                  (("/usr/src/gmock")
+                   (string-append (getcwd) "/gmock/googlemock"))
+                  (("/usr/src/gtest")
+                   (string-append (getcwd) "/gmock/googletest"))
+                  (("PATH_SUFFIXES \"src\" \"gtest\"")
+                   "PATH_SUFFIXES \"src\"")))))
+          (add-after 'prepare-gmock 'lax-freealut-requirement
+            ;; TODO: We provide freealut 1.1.0, but pkg-config somehow detects
+            ;; it as 1.0.1.  Force minimal version.
+            (lambda _
+              (substitute* "cmake/FindAudio.cmake"
+                (("freealut>=1.1.0") "freealut>=1.0.1"))))
+          (add-after 'lax-freealut-requirement 'fix-directories
+            ;; Prefer "$out/share/openclonk" over
+            ;; "$out/share/games/openclonk". Also install "openclonk"
+            ;; binary in "bin/", not "games/".
+            (lambda _
+              (substitute* "CMakeLists.txt"
+                (("share/games/openclonk") "share/openclonk")
+                (("TARGETS openclonk DESTINATION games")
+                 "TARGETS openclonk DESTINATION bin")))))))
     (native-inputs
-     `(("googlemock" ,(package-source googletest))
-       ("googletest" ,googletest)
-       ("pkg-config" ,pkg-config)))
+     (list (package-source googletest)
+           googletest
+           pkg-config))
     (inputs
-     `(("c-template-sort" ,c-template-sort)
-       ("freealut" ,freealut)
-       ("freetype" ,freetype)
-       ("glew" ,glew)
-       ("libb2" ,libb2)
-       ("libjpeg" ,libjpeg-turbo)
-       ("libogg" ,libogg)
-       ("libpng" ,libpng)
-       ("libvorbis" ,libvorbis)
-       ("libxrandr" ,libxrandr)
-       ("mesa" ,mesa)
-       ("miniupnpc" ,miniupnpc)
-       ("openal" ,openal)
-       ("pcg-cpp" ,pcg-cpp)
-       ("qtbase" ,qtbase-5)
-       ("readline" ,readline)
-       ("sdl" ,sdl2)
-       ("tinyxml" ,tinyxml)))
+     (list c-template-sort
+           freealut
+           freetype
+           glew
+           libb2
+           libjpeg-turbo
+           libogg
+           libpng
+           libvorbis
+           libxrandr
+           mesa
+           miniupnpc
+           openal
+           pcg-cpp
+           qtbase-5
+           readline
+           sdl2
+           tinyxml))
     (home-page "https://www.openclonk.org/")
     (synopsis
      "Multiplayer action game where you control small and nimble humanoids")
-- 
2.41.0




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

* bug#72569: [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style.
  2024-08-28 15:36 ` [bug#72569] [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
@ 2024-08-31 16:32   ` Liliana Marie Prikler
  0 siblings, 0 replies; 12+ messages in thread
From: Liliana Marie Prikler @ 2024-08-31 16:32 UTC (permalink / raw)
  To: Adam Faiz, 72569-done

Am Mittwoch, dem 28.08.2024 um 23:36 +0800 schrieb Adam Faiz:
> * gnu/packages/games.scm (openclonk)[arguments]: Use gexps.
> [source]: Reindent.
> [native-inputs]: Drop labels.
> [inputs]: Drop labels.
> ---
Pushed as 16ba3aceecb456c71051d3bdf12af8c001d63025, just after the big
core-updates merge.  Grab your openclonk today :3

Cheers




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

end of thread, other threads:[~2024-08-31 16:34 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-11  5:13 [bug#72569] [PATCH 0/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
2024-08-11  5:16 ` [bug#72569] [PATCH 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
2024-08-17 12:15   ` Liliana Marie Prikler
2024-08-11  5:17 ` [bug#72569] [PATCH 2/4] gnu: Add sort-h Adam Faiz via Guix-patches via
2024-08-17 12:26   ` Liliana Marie Prikler
2024-08-11  5:18 ` [bug#72569] [PATCH 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
2024-08-11  5:20 ` [bug#72569] [PATCH 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
2024-08-28 15:25 ` [bug#72569] [PATCH v2 1/4] gnu: Add backward-cpp Adam Faiz via Guix-patches via
2024-08-28 15:27 ` [bug#72569] [PATCH v2 2/4] gnu: Add c-template-sort Adam Faiz via Guix-patches via
2024-08-28 15:34 ` [bug#72569] [PATCH v2 3/4] gnu: openclonk: Fix build Adam Faiz via Guix-patches via
2024-08-28 15:36 ` [bug#72569] [PATCH v2 4/4] gnu: openclonk: Use gexps and new input style Adam Faiz via Guix-patches via
2024-08-31 16:32   ` bug#72569: " Liliana Marie Prikler

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.