unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#47615] [PATCH 0/9] Add 32-bit powerpc support
@ 2021-04-06 12:24 Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux Efraim Flashner
                   ` (8 more replies)
  0 siblings, 9 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:24 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-ppc

The wip-ppc branch on Savannah is currently in a good state. With the
recent rapid churn on core-updates I haven't been very quick about
rebasing on core-updates but I can confirm that building out to mesa
works. Building is slow, it took 6 days to build from guile-final to
mesa without stopping.

The patches start with adding the bootstrap binaries for powerpc.

The next patch fixes guile-3.0.2+ on powerpc (and probably other 32-bit
big-endian systems) and is the result of almost 3 weeks of bisecting.

Next is a patch for binutils to disable one of the tests. The test is
new to core-updates, and fails on powerpc-linux but not the other
architectures we support.

The mesa patch works, but I have to see about enabling the tests. I have
also tested updating mesa and enabling the llvm backend on aarch64 and
the tests no longer fail there, so I'll do another couple (3 hour) mesa
builds to see if the comment needs adjusting or if the tests can be
enabled on powerpc-linux.

mac-fdisk I didn't have a solid reason to put in the wip-ppc branch but
there it is. I need to change CC=gcc to use cc-for-target.

The patch for american-fuzzy-lop I snuck into master

the qemu-command in gnu/build/vm shouldn't overlap with ppc64le.

the last two patches, disabling the tests for mercurial and nss, can
probably be dropped. The comments are accurate though, and we have done
similar in the past on mips64le and armhf.

Efraim Flashner (9):
  gnu: bootstrap: Add support for powerpc-linux.
  gnu: guile-3.0: Fix building on powerpc-linux.
  gnu: binutils: Adjust test suite on powerpc-linux.
  gnu: mesa: Add support for powerpc-linux.
  gnu: Add mac-fdisk.
  gnu: american-fuzzy-lop: Add support for powerpc-linux.
  build: qemu-command: Add support for powerpc.
  gnu: mercurial: Skip tests on powerpc-linux.
  gnu: nss: Skip tests on powerpc-linux.

 gnu/build/vm.scm                              |    1 +
 gnu/local.mk                                  |    2 +
 gnu/packages/base.scm                         |   11 +-
 gnu/packages/bootstrap.scm                    |   37 +-
 gnu/packages/commencement.scm                 |   21 +-
 gnu/packages/debug.scm                        |    2 +
 gnu/packages/disk.scm                         |   44 +
 gnu/packages/gl.scm                           |   18 +-
 gnu/packages/guile.scm                        |   21 +-
 gnu/packages/nss.scm                          |    7 +-
 .../patches/mac-fdisk-gentoo-patchset.patch   |  866 +++++++
 gnu/packages/patches/mac-fdisk-p18.patch      | 2070 +++++++++++++++++
 gnu/packages/version-control.scm              |    6 +-
 guix/packages.scm                             |    4 +-
 m4/guix.m4                                    |    4 +-
 15 files changed, 3096 insertions(+), 18 deletions(-)
 create mode 100644 gnu/packages/patches/mac-fdisk-gentoo-patchset.patch
 create mode 100644 gnu/packages/patches/mac-fdisk-p18.patch


base-commit: f08b070019a3c1697bb0b4a783dcd4f31243715a
-- 
2.31.1





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

* [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
       [not found]   ` <87pmyx1q36.fsf@gmail.com>
  2021-04-06 12:32 ` [bug#47615] [PATCH 2/9] gnu: guile-3.0: Fix building on powerpc-linux Efraim Flashner
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

On 923bb70a1bff657125c3008f119a477e5cb57c2b
   gnu:glibc-for-bootstrap: Fix patch.

Run
    ./pre-inst-env guix build --target=powerpc-linux-gnu bootstrap-tarballs

Producing

    /gnu/store/dyj1wvayyp1ihaknkxniz1xamcf4yrhl-bootstrap-tarballs-0

With guix hash -rx /gnu/store/dyj1wvayyp1ihaknkxniz1xamcf4yrhl-bootstrap-tarballs-0

    02xx2ydj28pwv3vflqffinpq1icj09gzi9icm8j4bwc4lca9irxn

* gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for
powerpc-linux.
(%bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils,
%bootstrap-glibc, %bootstrap-gcc): Add entry for powerpc-linux.
* gnu/packages.scm (%supported-systems): Add powerpc-linux.
(%hydra-supported-systems): Remove powerpc-linux.
* m4/guix.m4: Add powerpc-linux as a supported system.
---
 gnu/packages/bootstrap.scm | 37 ++++++++++++++++++++++++++++++++++++-
 guix/packages.scm          |  4 ++--
 m4/guix.m4                 |  4 ++--
 3 files changed, 40 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index c50e94e891..049735013a 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@@ -89,6 +89,15 @@
       ,(base32 "1j51gv08sfg277yxj73xd564wjq3f8xwd6s9rbcg8v9gms47m4cx"))
      ("xz"
       ,(base32 "1d779rwsrasphg5g3r37qppcqy3p7ay1jb1y83w7x4i3qsc7zjy2")))
+    ("powerpc-linux"
+     ("bash"
+      ,(base32 "0hwlw5lcyjzadprf5fm0cv4zb6jw667g9amnmhq0lbixasy7j72j"))
+     ("mkdir"
+      ,(base32 "12lfwh5p8pp06250wgi9mdvjv1jdfpd5xpmvfc0616aj0xqh09hp"))
+     ("tar"
+      ,(base32 "00sbmwl8qh6alxv9mw4hvj1j4yipwmw5mrw6qad8bi2pr7ya5386"))
+     ("xz"
+      ,(base32 "0hi47y6zh5zz137i59l5ibw92x6g54zn7ris1b1ym9rvavsasg7b")))
     ("armhf-linux"
      ("bash"
       ,(base32 "0s6f1s26g4dsrrkl39zblvwpxmbzi6n9mgqf6vxsqz42gik6bgyn"))
@@ -139,6 +148,7 @@
   ;; This is where the bootstrap executables come from.
   '("https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/"
     "https://alpha.gnu.org/gnu/guix/bootstrap/"
+    "http://flashner.co.il/guix/bootstrap/"
     "http://lilypond.org/janneke/guix/"))
 
 (define (bootstrap-executable-file-name system program)
@@ -146,6 +156,7 @@
   (match system
     ("powerpc64le-linux" (string-append system "/20210106/" program))
     ("i586-gnu" (string-append system "/20200326/" program))
+    ("powerpc-linux" (string-append system "/20200923/bin/" program))
     (_ (string-append system "/" program
                       "?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e"))))
 
@@ -341,6 +352,8 @@ or false to signal an error."
                  (match system
                    ("aarch64-linux"
                     "/20170217/guile-2.0.14.tar.xz")
+                   ("powerpc-linux"
+                    "/20200923/guile-2.0.14.tar.xz")
                    ("armhf-linux"
                     "/20150101/guile-2.0.11.tar.xz")
                    ("i586-gnu"
@@ -366,7 +379,9 @@ or false to signal an error."
     ("aarch64-linux"
      (base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r"))
     ("i586-gnu"
-     (base32 "0wgqpsmvg25rnqn49ap7kwd2qxccd8dr4lllzp7i3rjvgav27vac"))))
+     (base32 "0wgqpsmvg25rnqn49ap7kwd2qxccd8dr4lllzp7i3rjvgav27vac"))
+    ("powerpc-linux"
+     (base32 "1by2p7s27fbyjzfkcw8h65h4kkqh7d23kv4sgg5jppjn2qx7swq4"))))
 
 (define (bootstrap-guile-origin system)
   "Return an <origin> object for the Guile tarball of SYSTEM."
@@ -500,6 +515,8 @@ $out/bin/guile --version~%"
                                              "/20210106/static-binaries-0-powerpc64le-linux-gnu.tar.xz")
                                             ("i586-gnu"
                                              "/20200326/static-binaries-0-i586-pc-gnu.tar.xz")
+                                            ("powerpc-linux"
+                                             "/20200923/static-binaries.tar.xz")
                                             (_
                                              "/20131110/static-binaries.tar.xz")))
                                      %bootstrap-base-urls))
@@ -523,6 +540,9 @@ $out/bin/guile --version~%"
                               ("i586-gnu"
                                (base32
                                 "17kllqnf3fg79gzy9ansgi801c46yh9c23h4d923plvb0nfm1cfn"))
+                              ("powerpc-linux"
+                               (base32
+                                "0kspxy0yczan2vlih6aa9hailr2inz000fqa0gn5x9d1fxxa5y8m"))
                               ("mips64el-linux"
                                (base32
                                 "072y4wyfsj1bs80r6vbybbafy8ya4vfy7qj25dklwk97m6g71753"))))))
@@ -573,6 +593,8 @@ $out/bin/guile --version~%"
                                              "/20210106/binutils-static-stripped-2.34-powerpc64le-linux-gnu.tar.xz")
                                             ("i586-gnu"
                                              "/20200326/binutils-static-stripped-2.34-i586-pc-gnu.tar.xz")
+                                            ("powerpc-linux"
+                                             "/20200923/binutils-2.35.1.tar.xz")
                                             (_
                                              "/20131110/binutils-2.23.2.tar.xz")))
                                      %bootstrap-base-urls))
@@ -596,6 +618,9 @@ $out/bin/guile --version~%"
                               ("i586-gnu"
                                (base32
                                 "11kykv1kmqc5wln57rs4klaqa13hm952smkc57qcsyss21kfjprs"))
+                              ("powerpc-linux"
+                               (base32
+                                "0asbg1c4avkrvh057mx0942xwddd136jni382zqsxzn79ls42yq8"))
                               ("mips64el-linux"
                                (base32
                                 "1x8kkhcxmfyzg1ddpz2pxs6fbdl6412r7x0nzbmi5n7mj8zw2gy7"))))))
@@ -653,6 +678,8 @@ $out/bin/guile --version~%"
                                        "/20210106/glibc-stripped-2.31-powerpc64le-linux-gnu.tar.xz")
                                       ("i586-gnu"
                                        "/20200326/glibc-stripped-2.31-i586-pc-gnu.tar.xz")
+                                      ("powerpc-linux"
+                                       "/20200923/glibc-2.32.tar.xz")
                                       (_
                                        "/20131110/glibc-2.18.tar.xz")))
                                %bootstrap-base-urls))
@@ -676,6 +703,9 @@ $out/bin/guile --version~%"
                         ("i586-gnu"
                          (base32
                           "14ddm10lpbas8bankmn5bcrlqvz1v5dnn1qjzxb19r57vd2w5952"))
+                        ("powerpc-linux"
+                         (base32
+                          "0smmssyjrlk5cvx49586smmk81gkwff0i6r91n4rir4jm6ba25sb"))
                         ("mips64el-linux"
                          (base32
                           "0k97a3whzx3apsi9n2cbsrr79ad6lh00klxph9hw4fqyp1abkdsg")))))))))
@@ -749,6 +779,8 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
                                         "/20210106/gcc-stripped-5.5.0-powerpc64le-linux-gnu.tar.xz")
                                        ("i586-gnu"
                                         "/20200326/gcc-stripped-5.5.0-i586-pc-gnu.tar.xz")
+                                       ("powerpc-linux"
+                                        "/20200923/gcc-5.5.0.tar.xz")
                                        (_
                                         "/20131110/gcc-4.8.2.tar.xz")))
                                 %bootstrap-base-urls))
@@ -772,6 +804,9 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
                          ("i586-gnu"
                           (base32
                            "1j2zc58wzil71a34h7c70sd68dmqvcscrw3rmn2whq79vd70zvv5"))
+                         ("powerpc-linux"
+                          (base32
+                           "1p7df3yixhm87dw5sccc6yn1i9db1r9hnmsg87wq5xi4rfmirq7w"))
                          ("mips64el-linux"
                           (base32
                            "1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks")))))))))
diff --git a/guix/packages.scm b/guix/packages.scm
index 56173e1204..e60201d8fc 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -350,7 +350,7 @@ name of its URI."
   ;; This is the list of system types that are supported.  By default, we
   ;; expect all packages to build successfully here.
   '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "mips64el-linux" "i586-gnu"
-    "powerpc64le-linux"))
+    "powerpc64le-linux" "powerpc-linux"))
 
 (define %hurd-systems
   ;; The GNU/Hurd systems for which support is being developed.
@@ -361,7 +361,7 @@ name of its URI."
   ;;
   ;; XXX: MIPS is unavailable in CI:
   ;; <https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00790.html>.
-  (fold delete %supported-systems '("mips64el-linux")))
+  (fold delete %supported-systems '("mips64el-linux" "powerpc-linux")))
 
 
 ;; A package.
diff --git a/m4/guix.m4 b/m4/guix.m4
index 05d409a674..e778a56004 100644
--- a/m4/guix.m4
+++ b/m4/guix.m4
@@ -1,7 +1,7 @@
 dnl GNU Guix --- Functional package management for GNU
 dnl Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 dnl Copyright © 2014 Mark H Weaver <mhw@netris.org>
-dnl Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+dnl Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
 dnl Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
 dnl
 dnl This file is part of GNU Guix.
@@ -89,7 +89,7 @@ courageous and port the GNU System distribution to it (see
   # Currently only Linux-based systems are supported, and only on some
   # platforms.
   case "$guix_system" in
-    x86_64-linux|i686-linux|armhf-linux|aarch64-linux|powerpc64le-linux)
+    x86_64-linux|i686-linux|armhf-linux|aarch64-linux|powerpc64le-linux|powerpc-linux)
       ;;
     *)
       if test "x$guix_courageous" = "xyes"; then
-- 
2.31.1





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

* [bug#47615] [PATCH 2/9] gnu: guile-3.0: Fix building on powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 3/9] gnu: binutils: Adjust test suite " Efraim Flashner
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/guile.scm (guile-3.0)[arguments]: On powerpc add two
phases to adjust for 32-bit big-endian systems.
---
 gnu/packages/guile.scm | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index f63322794d..dca1b1c16f 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -305,7 +305,26 @@ without requiring the source code to be rewritten.")
          (substitute-keyword-arguments (package-arguments guile-2.2)
            ((#:configure-flags flags ''())
             `(cons "--disable-jit" ,flags)))
-         (package-arguments guile-2.2)))
+         (if (string-prefix? "powerpc-" (%current-system))
+           (substitute-keyword-arguments (package-arguments guile-2.2)
+             ((#:phases phases)
+              `(modify-phases ,phases
+                 (add-after 'unpack 'adjust-bootstrap-flags
+                   (lambda _
+                     ;; Upstream not yet notified about suggested solution.
+                     ;; See existing bug reports:
+                     ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=45214
+                     ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=977223
+                     (substitute* "bootstrap/Makefile.in"
+                       (("^GUILE_OPTIMIZATIONS.*")
+                        "GUILE_OPTIMIZATIONS = -O1 -Oresolve-primitives -Ocps\n"))
+                     #t))
+                 (add-after 'unpack 'remove-failing-tests
+                   (lambda _
+                     ;; TODO: Discover why this test fails on powerpc-linux
+                     (delete-file "test-suite/standalone/test-out-of-memory")
+                     #t)))))
+           (package-arguments guile-2.2))))
     (native-search-paths
      (list (search-path-specification
             (variable "GUILE_LOAD_PATH")
-- 
2.31.1





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

* [bug#47615] [PATCH 3/9] gnu: binutils: Adjust test suite on powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 2/9] gnu: guile-3.0: Fix building on powerpc-linux Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
       [not found]   ` <8735vo1yhm.fsf_-_@gmail.com>
  2021-04-06 12:32 ` [bug#47615] [PATCH 4/9] gnu: mesa: Add support for powerpc-linux Efraim Flashner
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/base.scm (binutils)[arguments]: Add phase on
powerpc-linux to adjust the test suite.
* gnu/packages/commencement.scm (binutils-boot0)[arguments]: Move custom
phases after inherited arguments. Add phase on powerpc-linux to adjust
the test suite.
---
 gnu/packages/base.scm         | 11 ++++++++++-
 gnu/packages/commencement.scm | 21 ++++++++++++++++-----
 2 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index dbb7c619fe..b9fc0a6e29 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -531,7 +531,16 @@ change.  GNU make offers many powerful extensions over the standard utility.")
 
                           ;; Make sure 'ar' and 'ranlib' produce archives in a
                           ;; deterministic fashion.
-                          "--enable-deterministic-archives")))
+                          "--enable-deterministic-archives")
+      ,@(if (string=? (%current-system) "powerpc-linux")
+          `(#:phases
+            (modify-phases %standard-phases
+              (add-after 'unpack 'disable-rust-libiberty-test
+                (lambda _
+                  (substitute* "libiberty/testsuite/Makefile.in"
+                    ((" check-rust-demangle ") ""))
+                  #t))))
+          '())))
 
    (synopsis "Binary utilities: bfd gas gprof ld")
    (description
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 7c39a84008..f707a01d30 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2653,7 +2653,22 @@ exec " gcc "/bin/" program
        #:modules ((guix build gnu-build-system)
                   (guix build utils)
                   (ice-9 ftw))                    ; for 'scandir'
+
+       ;; #:phases gets modified for powerpc-linux in binutils,
+       ;; so #:phases here needs to be after the inherited one.
+       ,@(substitute-keyword-arguments (package-arguments binutils)
+           ((#:configure-flags cf)
+            `(cons ,(string-append "--target=" (boot-triplet))
+                   ,cf)))
+
        #:phases (modify-phases %standard-phases
+                  ,@(if (string=? (%current-system) "powerpc-linux")
+                      '((add-after 'unpack 'disable-rust-libiberty-test
+                          (lambda _
+                            (substitute* "libiberty/testsuite/Makefile.in"
+                              ((" check-rust-demangle ") ""))
+                            #t)))
+                      '())
                   (add-after 'install 'add-symlinks
                     (lambda* (#:key outputs #:allow-other-keys)
                       ;; The cross-gcc invokes 'as', 'ld', etc, without the
@@ -2667,12 +2682,8 @@ exec " gcc "/bin/" program
                         (with-directory-excursion (string-append out "/bin")
                           (for-each (lambda (name)
                                       (symlink name (remove-triplet-prefix name)))
-                                    (scandir "." has-triplet-prefix?)))))))
+                                    (scandir "." has-triplet-prefix?)))))))))
 
-       ,@(substitute-keyword-arguments (package-arguments binutils)
-           ((#:configure-flags cf)
-            `(cons ,(string-append "--target=" (boot-triplet))
-                   ,cf)))))
     (inputs (%boot0-inputs))))
 
 (define libstdc++-boot0
-- 
2.31.1





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

* [bug#47615] [PATCH 4/9] gnu: mesa: Add support for powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (2 preceding siblings ...)
  2021-04-06 12:32 ` [bug#47615] [PATCH 3/9] gnu: binutils: Adjust test suite " Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 6/9] gnu: american-fuzzy-lop: " Efraim Flashner
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/gl.scm (mesa)[inputs]: Add llvm, glslang for powerpc.
[arguments]: Customize the configure flags for powerpc. Skip tests on
powerpc.
---
 gnu/packages/gl.scm | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index ee29a79366..3b6a829031 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -271,7 +271,7 @@ also known as DXTn or DXTC) for Mesa.")
         ("libxrandr" ,libxrandr)
         ("libxvmc" ,libxvmc)
         ,@(match (%current-system)
-            ((or "x86_64-linux" "i686-linux")
+            ((or "x86_64-linux" "i686-linux" "powerpc-linux")
              ;; Note: update the 'clang' input of mesa-opencl when bumping this.
              `(("llvm" ,llvm-11)))
             (_
@@ -283,7 +283,7 @@ also known as DXTn or DXTC) for Mesa.")
         ("flex" ,flex)
         ("gettext" ,gettext-minimal)
         ,@(match (%current-system)
-            ((or "x86_64-linux" "i686-linux")
+            ((or "x86_64-linux" "i686-linux" "powerpc-linux")
              `(("glslang" ,glslang)))
             (_
              `()))
@@ -298,6 +298,8 @@ also known as DXTn or DXTC) for Mesa.")
              ((or "armhf-linux" "aarch64-linux")
               ;; TODO: Fix svga driver for aarch64 and armhf.
               '("-Dgallium-drivers=etnaviv,freedreno,kmsro,lima,nouveau,panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
+             ("powerpc-linux"
+              '("-Dgallium-drivers=nouveau,r300,r600,radeonsi,swrast,virgl"))
              (_
               '("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
          ;; Enable various optional features.  TODO: opencl requires libclc,
@@ -318,12 +320,14 @@ also known as DXTn or DXTC) for Mesa.")
          ,@(match (%current-system)
              ((or "i686-linux" "x86_64-linux")
               '("-Dvulkan-drivers=intel,amd"))
+             ("powerpc-linux"   ; No default on this platform.
+              '("-Dvulkan-drivers=amd"))
              (_
               '("-Dvulkan-drivers=auto")))
 
          ;; Enable the Vulkan overlay layer on i686-linux and x86-64-linux.
          ,@(match (%current-system)
-             ((or "x86_64-linux" "i686-linux")
+             ((or "x86_64-linux" "i686-linux" "powerpc-linux")
               '("-Dvulkan-overlay-layer=true"))
              (_
               '()))
@@ -337,6 +341,9 @@ also known as DXTn or DXTC) for Mesa.")
              ((or "x86_64-linux" "i686-linux")
               '("-Ddri-drivers=i915,i965,nouveau,r200,r100"
                 "-Dllvm=enabled"))      ; default is x86/x86_64 only
+             ("powerpc-linux"
+              '("-Ddri-drivers=nouveau,r200,r100"
+                "-Dllvm=enabled"))
              (_
               '("-Ddri-drivers=nouveau,r200,r100"))))
 
@@ -344,6 +351,11 @@ also known as DXTn or DXTC) for Mesa.")
        ;; documentation recommends using 'release' for performance anyway.
        #:build-type "release"
 
+       ;; The llvm-based tests are flakey on non-Intel hardware.
+       #:tests? ,(if (string=? "powerpc-linux" (or (%current-system)
+                                                   (%current-target-system)))
+                   '#f '#t)
+
        #:modules ((ice-9 match)
                   (srfi srfi-1)
                   (guix build utils)
-- 
2.31.1





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

* [bug#47615] [PATCH 6/9] gnu: american-fuzzy-lop: Add support for powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (3 preceding siblings ...)
  2021-04-06 12:32 ` [bug#47615] [PATCH 4/9] gnu: mesa: Add support for powerpc-linux Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 7/9] build: qemu-command: Add support for powerpc Efraim Flashner
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/debug.scm (american-fuzzy-lop): Add case for
powerpc-linux.
(qemu-for-american-fuzzy-lop): Same.
---
 gnu/packages/debug.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 2913c348f3..1326ce6e16 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -179,6 +179,7 @@ tools that process C/C++ code.")
                    ("aarch64-linux"  "aarch64")
                    ("armhf-linux"    "arm")
                    ("mips64el-linux" "mips64el")
+                   ("powerpc-linux"  "ppc")
                    ;; Prevent errors when querying this package on unsupported
                    ;; platforms, e.g. when running "guix package --search="
                    (_                "UNSUPPORTED"))))
@@ -254,6 +255,7 @@ down the road.")
                    ("aarch64-linux"  "aarch64")
                    ("armhf-linux"    "arm")
                    ("mips64el-linux" "mips64el")
+                   ("powerpc-linux"  "ppc")
                    ;; Prevent errors when querying this package on unsupported
                    ;; platforms, e.g. when running "guix package --search="
                    (_                "UNSUPPORTED"))))
-- 
2.31.1





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

* [bug#47615] [PATCH 7/9] build: qemu-command: Add support for powerpc.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (4 preceding siblings ...)
  2021-04-06 12:32 ` [bug#47615] [PATCH 6/9] gnu: american-fuzzy-lop: " Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
  2021-04-06 12:32 ` [bug#47615] [PATCH 9/9] gnu: nss: Skip tests on powerpc-linux Efraim Flashner
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/build/vm.scm (qemu-command): Add missing case for powerpc.
---
 gnu/build/vm.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm
index 253d9bcd31..a2c2d79bb9 100644
--- a/gnu/build/vm.scm
+++ b/gnu/build/vm.scm
@@ -75,6 +75,7 @@
                    (cond
                     ((string-match "^i[3456]86$" cpu) "i386")
                     ((string-match "armhf" cpu) "arm")
+                    ((string-match "powerpc" cpu) "ppc")
                     (else cpu)))))
 
 (define* (load-in-linux-vm builder
-- 
2.31.1





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

* [bug#47615] [PATCH 9/9] gnu: nss: Skip tests on powerpc-linux.
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (5 preceding siblings ...)
  2021-04-06 12:32 ` [bug#47615] [PATCH 7/9] build: qemu-command: Add support for powerpc Efraim Flashner
@ 2021-04-06 12:32 ` Efraim Flashner
  2021-04-22  7:59 ` [bug#47615] [PATCH v2 00/12] Add 32-bit powerpc support Efraim Flashner
  2021-05-24  9:54 ` bug#47615: " Efraim Flashner
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-06 12:32 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/nss.scm (nss)[arguments]: Skip tests on powerpc-linux.
---
 gnu/packages/nss.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm
index e054363e9f..954a1d3b80 100644
--- a/gnu/packages/nss.scm
+++ b/gnu/packages/nss.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@@ -109,7 +109,10 @@ in the Mozilla clients.")
        ;; Parallel builds are not supported (see:
        ;; https://bugzilla.mozilla.org/show_bug.cgi?id=1640328).
        `(#:parallel-build? #f
-         #:tests? #t                   ;requires at least one hour to run
+         ;; Tests on powerpc-linux take forever and fail sporatically.
+         #:tests? ,(if (string=? "powerpc-linux" (or (%current-system)
+                                                     (%current-target-system)))
+                     '#f '#t)
          #:make-flags
          (let* ((out (assoc-ref %outputs "out"))
                 (nspr (string-append (assoc-ref %build-inputs "nspr")))
-- 
2.31.1





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

* [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux.
       [not found]     ` <CAEwRq=oDfHMMhMijVUb6LF_UXeG_9Pmi_jZU7nzqAz8eYD_NxA@mail.gmail.com>
@ 2021-04-14 13:56       ` Efraim Flashner
  0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-14 13:56 UTC (permalink / raw)
  To: Vincent Legoll; +Cc: guix-devel, Chris Marusich, 47615

[-- Attachment #1: Type: text/plain, Size: 1103 bytes --]

On Wed, Apr 14, 2021 at 09:36:24AM +0200, Vincent Legoll wrote:
> Hello,
> 
> On Wed, Apr 14, 2021 at 5:51 AM Chris Marusich <cmmarusich@gmail.com> wrote:
> > Generally speaking, this patch looks fine to me.  Just curious, what
> > sort of machines does one use for 32-bit powerpc?
> 
> Old apple hardware based on powerpc G4 (powermacs, mini, imac, etc.),
> maybe even G3.

There are a couple families of 32-bit powerpc machines out there with
(IIRC) macppc being the most prevalent for desktops.

> 
> > Any ideas for how we can get a machine for powerpc CI?  Maybe VMs, I
> > guess?  Can a POWER9 machine be a powerpc-linux machine...?
> 
> A VM on power9 may be able to run BE ppc32.
> 

Can it do it "directly" or does it need to be inside of a VM/chroot? I
never looked too much into it, never quite seemed like something that
I'd be able to take advantage of.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* [bug#47615] [PATCH v2 00/12] Add 32-bit powerpc support
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (6 preceding siblings ...)
  2021-04-06 12:32 ` [bug#47615] [PATCH 9/9] gnu: nss: Skip tests on powerpc-linux Efraim Flashner
@ 2021-04-22  7:59 ` Efraim Flashner
  2021-04-22  7:59   ` [bug#47615] [PATCH v2 12/12] gnu: glib: Disable failing test Efraim Flashner
       [not found]   ` <297ae28469f64eef14d8a1e8fd0e9375d8f8b1ae.1619076704.git.efraim@flashner.co.il>
  2021-05-24  9:54 ` bug#47615: " Efraim Flashner
  8 siblings, 2 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-22  7:59 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

This looks to be about 2 weeks worth of time since the last email, with
about 10 days of continuous building and is based on commit
76fc36d0a7215979bb74c05840f5a4de4ab5ea93 which changes the default gcc
to 8. I'll inline my comments in the top of each of the patches.

Some of the patches are going straight to core-updates but I've included
them anyway since the patchset is available in the official repo in the
wip-ppc branch and that's where I developed them.

Efraim Flashner (12):
  gnu: bootstrap: Add support for powerpc-linux.
  gnu: guile-3.0: Fix building on powerpc-linux.
  gnu: gcc-boot0: Use 128-bit long-double on powerpc-linux.
  gnu: binutils: Fix bug in test suite in libiberty.
  gnu: mesa: Add support for powerpc-linux.
  gnu: Add mac-fdisk.
  gnu: american-fuzzy-lop: Add support for powerpc-linux.
  build: qemu-command: Add support for powerpc.
  gnu: mercurial: Skip tests on powerpc-linux.
  gnu: nss: Skip tests on powerpc-linux.
  gnu: zstd: Adjust test suite for 32-bit architectures.
  gnu: glib: Disable failing test.

 gnu/build/vm.scm                              |    1 +
 gnu/local.mk                                  |    4 +
 gnu/packages/base.scm                         |    3 +-
 gnu/packages/bootstrap.scm                    |   37 +-
 gnu/packages/commencement.scm                 |   12 +-
 gnu/packages/compression.scm                  |    4 +-
 gnu/packages/debug.scm                        |    2 +
 gnu/packages/disk.scm                         |   43 +
 gnu/packages/gl.scm                           |   33 +-
 gnu/packages/glib.scm                         |   16 +-
 gnu/packages/guile.scm                        |   17 +-
 gnu/packages/nss.scm                          |    7 +-
 .../binutils-libiberty-endianness-bug.patch   |   36 +
 .../patches/glib-skip-failing-test.patch      |   27 +
 .../patches/mac-fdisk-gentoo-patchset.patch   |  866 +++++++
 gnu/packages/patches/mac-fdisk-p18.patch      | 2070 +++++++++++++++++
 gnu/packages/version-control.scm              |    6 +-
 guix/packages.scm                             |    4 +-
 m4/guix.m4                                    |    4 +-
 19 files changed, 3157 insertions(+), 35 deletions(-)
 create mode 100644 gnu/packages/patches/binutils-libiberty-endianness-bug.patch
 create mode 100644 gnu/packages/patches/glib-skip-failing-test.patch
 create mode 100644 gnu/packages/patches/mac-fdisk-gentoo-patchset.patch
 create mode 100644 gnu/packages/patches/mac-fdisk-p18.patch


base-commit: f08b070019a3c1697bb0b4a783dcd4f31243715a
prerequisite-patch-id: b98fc3a62ea8cceddca93361a4621026cebdb8e9
prerequisite-patch-id: 349889c70ebae8711909e6dfc0329235fee1a319
prerequisite-patch-id: dd3b6fe2e61b8588333468e597efec90314e482e
prerequisite-patch-id: 9ffff5964df281b3feb46795c5875c1091136fb9
prerequisite-patch-id: c150ac2fb2988685f28d788f4924b74a6264dce7
prerequisite-patch-id: a08c6f0dd727f598ef1258bb4233cfcec78913ee
prerequisite-patch-id: e36e1a27ce5055e53d5638f7139b4cf8c1ee68bf
prerequisite-patch-id: e59cdf3bd91cdba9e39d79d32c650eefea1749fd
prerequisite-patch-id: 2a1b37ff2e9b6f6787f4f3262d71cc26a005ccab
prerequisite-patch-id: 5cf027408739a4b2661cdf2709abdb8f1f06ce81
prerequisite-patch-id: 6deb5fd40689a243b1cce2c2fa5cca298bce253b
prerequisite-patch-id: 4c113e2088ef2674d35d985024c2a41daa8c679c
prerequisite-patch-id: edd89720757f9d3cedab3f3832abb4a8ec8bd83f
prerequisite-patch-id: 01258be2f32995622720bbc2eac1874282033604
prerequisite-patch-id: ed2fbb545f52e3ae813dc1b27e91e7ce2c84bce7
prerequisite-patch-id: 3523cc33853e2ff01d7b2916f5c481b052a674b5
prerequisite-patch-id: 92482c9dff576aa675e96a15bd02bd7471be517b
prerequisite-patch-id: f51d60f4622d9badefacdbb419d26c92a9387286
prerequisite-patch-id: dd2f7be90323949247ee684840ceea90ab2aed30
prerequisite-patch-id: f5f2f3cad462eb3c42df531f4b7fb0b2dc11959d
prerequisite-patch-id: ca605868541fdc9d2521c9bad0135a7a6e0b25b0
prerequisite-patch-id: 5ea5961816f5e60b38dbbacc6986860585d5b5c4
prerequisite-patch-id: 6d1cf903247a8ba700eb7b160b58d9b30b012a85
prerequisite-patch-id: 9d2c5115e7e6d19a06019cce74b58d036bc8f0d8
prerequisite-patch-id: b3699959ce306c85c4ed4756746e5273044f175a
prerequisite-patch-id: c587c3ca1d6bc31b1ff7f242066a8dd1603d3268
prerequisite-patch-id: 8fb15f1844dfe713c745b8095750912e03449d64
prerequisite-patch-id: fa64eb7a3a6312c0351e3452ad0300014a1cb2a0
prerequisite-patch-id: 84d9c39b89b986e096677904a5328b34e0072d30
prerequisite-patch-id: 0a0b1370f74ade7fcb989bd7e35520e9adac625e
prerequisite-patch-id: db9f94813d400e6734a1c80e40ad90aa7c1dd195
prerequisite-patch-id: db6b99cbc6e931613643690b3f72b41d73acf1b7
prerequisite-patch-id: 8441973a4f8c0f1713939fcd489274b7d30f44e4
prerequisite-patch-id: 9dd81d9a919ec6ca7f4bf07affdb7606f216cf44
prerequisite-patch-id: 88e793b3c2f41f4736b0867aaa5359a1a2f5df8f
prerequisite-patch-id: 7182f001b5ebaa7aafccf5d4c7e02e086ac6d25a
prerequisite-patch-id: fc8ca96ac1c7eb95a9326b2c2489f767c3f3184d
prerequisite-patch-id: 317a9f00e31e3a5a85542139bb70bfdadb9d7839
prerequisite-patch-id: 99da8e1149653fa8c9ebd12195940648a47ca239
prerequisite-patch-id: 9b7227eb2f7dea6df29ed65052b5ae5f1c27d3d6
prerequisite-patch-id: f6c62975dd823d0197d0448b321d9c86ffc84b34
prerequisite-patch-id: d4b83cb1b38074aa3d2387e11da261903e2cf367
prerequisite-patch-id: ccd7ad8358c6ad36f674fe0e428e39685c78273a
prerequisite-patch-id: 1a75e1a0ecb0704ee733d5a0c101439ffb2cf2f8
prerequisite-patch-id: c92f71717b9ac1f3cc0d3e3ef98cc3b215053fa0
prerequisite-patch-id: 96ef523637cc7c065baf5934ea97c3f9d9cc4fbd
prerequisite-patch-id: 4afe0a36b064e1cf3f2186aa82dd830ec0c4075d
prerequisite-patch-id: 04bb17b224108c967be9bf425e444166d60ae0d1
prerequisite-patch-id: 5989f8f80ebf89425e30335706fae8e6571d7704
prerequisite-patch-id: 287cec50edcb5977b5f089d261745aaaf25b4e23
prerequisite-patch-id: 74f085d5031248badc83d12703eb8840d6fe8c75
prerequisite-patch-id: 3a6fcb618b2aa5d0548d98c4694446f4c1f9c45e
prerequisite-patch-id: 60bcfce7e808bef835d33c2b03a57b97a8c4f5e4
prerequisite-patch-id: 5cab60c438ece58b487aabbb0020bed2f0aa9837
prerequisite-patch-id: 5ba37e25c99ee90f827559545a5de7b14b740fdb
prerequisite-patch-id: 08781a4ce6406ff3e6e77314a7f38cda224e53fd
prerequisite-patch-id: 97811dc54e939ad5f05e2674efa27b3d9e13ebe4
prerequisite-patch-id: 5767c6bcff0882bdb91173876267ad1e02e075c2
prerequisite-patch-id: 34eead0bbcfe35ab963dbca72fcf12d487bb10ed
prerequisite-patch-id: bdf335e34ad2f7bd0632948a80fc444d0ab87f95
prerequisite-patch-id: 122ea8bf2231509cd21b00b76e6ed29e81f60d05
prerequisite-patch-id: 39a9eb29306335aa9b21c91e1f1b949befc195bc
prerequisite-patch-id: 2a68b5c031515eb80c79ab164afcfcad4e4db686
prerequisite-patch-id: e2480a38e8ae1141e0c5ee6a6cbfcdb60869ebfd
prerequisite-patch-id: 670ea22337ed7b3e1dc0dbb9d558c3fbeee5c393
prerequisite-patch-id: 5bc422641d1fa42ae961c18759b98e42d0e87411
prerequisite-patch-id: 5f9d23b2160e9c4730b97eac9d83585d137a6340
prerequisite-patch-id: 32ac81500f66e943b897aacc38c9b694193e0cbd
prerequisite-patch-id: c01a7ebb021d3d5339dae34c53334469b4eb0ea8
prerequisite-patch-id: 979bf86e2b60977f775d1de3d5b348e41c14c9f8
prerequisite-patch-id: 207abe4eb96b2f9cebbd2a4ebb3911b77a13ca74
prerequisite-patch-id: 07949fcfa28749a8b73f9033511cc42698e36c47
prerequisite-patch-id: 6e115911af90f407f17a94bde1d3265cfd8b0767
prerequisite-patch-id: 3c9f7b47f6bb95233325276b6ff77a9beaa72903
prerequisite-patch-id: 754b43b96c795e89a2da0fd89b5d28d84d044244
prerequisite-patch-id: c9a4a6e8fe9844ec392a995aa34aae60c71062d7
prerequisite-patch-id: 9c625e3f1ec42a564d5b3a8bb51b9b75205305d1
prerequisite-patch-id: 5ce446eedeb1238a0a685a58a4474261d519668b
prerequisite-patch-id: 09823d52c7eef498be46c4a599ba94f3d31831de
prerequisite-patch-id: 702437fe76379b414be5b77ba9859b197cab0ecb
prerequisite-patch-id: 4b6518a6b25710d148b5bed0cb931007d6e704dc
prerequisite-patch-id: 1300550f8e26d5416f84746b8cce3ea0220d2221
prerequisite-patch-id: fafdf724b78452dd891bc67131c7f3c16617215c
prerequisite-patch-id: 320e5c513ba2e06cee78a41cced5c45a3cb9e888
prerequisite-patch-id: b5d9198ff528164c3d2567cd9b85eb57daad6892
prerequisite-patch-id: 6e49ae2ca0f012d6ff9f8cb61034fc16f4eb2933
prerequisite-patch-id: 29da52f6598e814c4f4ef232f84c9893ef564164
prerequisite-patch-id: cbb895a8131195e7da3022e96bd8aab2d95a24b4
prerequisite-patch-id: c58b9927e1f99256fbb200bba682cc31067c3ead
prerequisite-patch-id: b73af976df008d3787c11690c3745f37f00a8c8f
prerequisite-patch-id: 4452dd5bedc65bd8c4d473856bb2d3cdd6776b4e
prerequisite-patch-id: cf282c8a789324b29db1645ae5b245edd617fe94
prerequisite-patch-id: 5c7f5118a348c01d77e58c0a59a5ba30d827e53f
prerequisite-patch-id: 2bd603257c52572635e3e829d7901608ce8acb5c
prerequisite-patch-id: 4e3c07341eba2c84f9cb8d2e33623b8541046e70
prerequisite-patch-id: efdfe2c2e632c4bcd78f271343027c9d4b112480
prerequisite-patch-id: b2c8771587903b70e23436e5fa7ce015c13fd70c
prerequisite-patch-id: 15865b3b51be96caa18b557e3de15470961ebc27
prerequisite-patch-id: 3b52098277d9dd6ed04cc7baf7d1089de2de6e9c
prerequisite-patch-id: 51d806708cc8466c641b24a530f3e7ceaea2e927
prerequisite-patch-id: 31ad01ee26a4dd175ebb7e064314a73bfadb382f
prerequisite-patch-id: f698bb634c291314a7c3db1c0d9b2210573931f1
prerequisite-patch-id: ed709433df1d77faa1f9edd025b389eaa2a5dee8
prerequisite-patch-id: c5b73bb4adf652d4b580449ff636c336e8bc1862
prerequisite-patch-id: 7c06d72c9f66556536d01761cd29326cf3edee0f
prerequisite-patch-id: c8e0302276a04975a2ebf6ea150464361c570c8b
prerequisite-patch-id: 546afe29c7bfba304dddf7bf6b094b25022ac4b1
prerequisite-patch-id: 08956d855b447a63392241943e1d29770607f6b1
prerequisite-patch-id: 15d22d6f99d331cc637067d4957057cc6c30a693
prerequisite-patch-id: 8c5bd9499822e81fe3a066ca0a7992881a4d7978
prerequisite-patch-id: eefc1514601ea7b3c3bfeaf1347a0d05f4a12069
prerequisite-patch-id: d47ca0800f62044ad605e2879206b8870278d0b8
prerequisite-patch-id: aa2c489dab9d8e76273c9c98000325d1f0e90b07
prerequisite-patch-id: f8c1392070d1660d542d61fa9e79c5fed4dfa10c
prerequisite-patch-id: b8f87e738f1573ed0311b3620a0bec4940e09774
prerequisite-patch-id: d5c432d1de511ab2039006c69803e1ddafd767e6
prerequisite-patch-id: 449bcf88e0ae6452a70f1191d586b31c17a0e1eb
prerequisite-patch-id: 11df912cbf3ac10b67b8f0cecbceca22ac9acf92
prerequisite-patch-id: 3871ffac0263cfb3135fd27f5cf996a981bece38
prerequisite-patch-id: 3f39044038be4c5e621a912678dc931eabc4b4a5
prerequisite-patch-id: fc027117b2a51947b71000ac20727d43b5f90aed
prerequisite-patch-id: 01aeadeccd40b410c48c8fada9ba16ff4ab43889
prerequisite-patch-id: 49021465ac74420d6836b57cf87c816a4bdd336f
prerequisite-patch-id: 6c9b73c9af737071c8b8f74f578dd39bda46bda1
prerequisite-patch-id: cb1ab1be4c1883354a8d83fa6ecd9d525322703f
prerequisite-patch-id: a9f2b81a5b02d3011481ba63c78bd4a7c3ba50ea
prerequisite-patch-id: 1d2ac40285d3452f93a1ac8107e36619a4558f71
prerequisite-patch-id: c728d1f8a1f11dfed4d4790f0982adb06882c8db
prerequisite-patch-id: 225539dd6e6acc851839c6894f33cb84d532056e
prerequisite-patch-id: 001c2f22271d77565119cfe81398c24e4f7ee3d2
prerequisite-patch-id: 6f224a1aae34b74e4c6e8a0c457e5a1741ad5444
prerequisite-patch-id: 0b2f2bd1ed1175b339f39dbbd0ca70514892984f
-- 
2.31.1





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

* [bug#47615] [PATCH v2 12/12] gnu: glib: Disable failing test.
  2021-04-22  7:59 ` [bug#47615] [PATCH v2 00/12] Add 32-bit powerpc support Efraim Flashner
@ 2021-04-22  7:59   ` Efraim Flashner
       [not found]   ` <297ae28469f64eef14d8a1e8fd0e9375d8f8b1ae.1619076704.git.efraim@flashner.co.il>
  1 sibling, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-22  7:59 UTC (permalink / raw)
  To: 47615, guix-devel; +Cc: Efraim Flashner

* gnu/packages/glib.scm (glib)[source]: Add patch.
[arguments]: Remove custom 'increase-test-timeout phase.
* gnu/packages/patches/glib-skip-failing-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/glib.scm                         | 16 +++--------
 .../patches/glib-skip-failing-test.patch      | 27 +++++++++++++++++++
 3 files changed, 31 insertions(+), 13 deletions(-)
 create mode 100644 gnu/packages/patches/glib-skip-failing-test.patch

I don't have a way to test this on native armhf or i686 but I tried
changing the test timeout to 30 minutes (from the new default of 180
seconds) and it still timed out / hung forever. This is the minimal
patch to skip that test.

diff --git a/gnu/local.mk b/gnu/local.mk
index 7aba045e4b..18fa325503 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1080,6 +1080,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ghostscript-no-header-uuid.patch		\
   %D%/packages/patches/ghostscript-no-header-creationdate.patch \
   %D%/packages/patches/glib-appinfo-watch.patch			\
+  %D%/packages/patches/glib-skip-failing-test.patch		\
   %D%/packages/patches/glibc-CVE-2018-11236.patch		\
   %D%/packages/patches/glibc-CVE-2018-11237.patch		\
   %D%/packages/patches/glibc-CVE-2019-7309.patch		\
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 34d2ba4cf4..ede4a06a08 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2021 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
@@ -187,7 +187,8 @@ shared NFS home directories.")
        (sha256
         (base32 "1sh3h6b734cxhdd1qlzvhxq6rc7k73dsisap5y3s419s9xc4ywv7"))
        (patches
-        (search-patches "glib-appinfo-watch.patch"))
+        (search-patches "glib-appinfo-watch.patch"
+                        "glib-skip-failing-test.patch"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -203,17 +204,6 @@ shared NFS home directories.")
        #:configure-flags '("-Dman=true")
        #:phases
        (modify-phases %standard-phases
-         ;; TODO: Remove the conditional in the next core-updates cycle.
-         ;; Needed to build glib on slower ARM nodes.
-         ,@(if (string-prefix? "arm" (%current-system))
-               `((add-after 'unpack 'increase-test-timeout
-                   (lambda _
-                     (substitute* "meson.build"
-                       (("test_timeout = 60")
-                        "test_timeout = 90")
-                       (("test_timeout_slow = 120")
-                        "test_timeout_slow = 180")))))
-               '())
          (add-after 'unpack 'disable-failing-tests
            (lambda _
              (with-directory-excursion "glib/tests"
diff --git a/gnu/packages/patches/glib-skip-failing-test.patch b/gnu/packages/patches/glib-skip-failing-test.patch
new file mode 100644
index 0000000000..c7706aaa74
--- /dev/null
+++ b/gnu/packages/patches/glib-skip-failing-test.patch
@@ -0,0 +1,27 @@
+This test timed out on powerpc-linux even after extending the
+test_timeout_slow to 1800 seconds. Previously we tried to work around
+this test by extending test_timeout_slow by 1.5 its previous value.
+
+---
+ gio/tests/meson.build | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/gio/tests/meson.build b/gio/tests/meson.build
+index a926ae0..4fdbe7a 100644
+--- a/gio/tests/meson.build
++++ b/gio/tests/meson.build
+@@ -317,10 +317,6 @@ if host_machine.system() != 'windows'
+         'extra_sources' : [extra_sources, gdbus_test_codegen_generated, gdbus_test_codegen_generated_interface_info],
+         'c_args' : ['-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32'],
+       },
+-      'gdbus-threading' : {
+-        'extra_sources' : extra_sources,
+-        'suite' : ['slow'],
+-      },
+       'gmenumodel' : {
+         'extra_sources' : extra_sources,
+         'suite' : ['slow'],
+
+-- 
+2.31.1
+
-- 
2.31.1





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

* [bug#47615] [PATCH 3/9] gnu: binutils: Adjust test suite on powerpc-linux.
       [not found]       ` <87sg3izywb.fsf_-_@gmail.com>
@ 2021-04-27  7:01         ` Efraim Flashner
  0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-04-27  7:01 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel, 47615

[-- Attachment #1: Type: text/plain, Size: 1132 bytes --]

On Wed, Apr 21, 2021 at 10:11:48PM -0700, Chris Marusich wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> >> If it's a test failure, has the issue been reported upstream?
> >
> > I'll check to see if I can find something upstream. If not I'll report
> > it. FWIW Debian disables the test suite for powerpc.
> > https://sources.debian.org/src/binutils/2.36.1-6/debian/rules/#L537
> 
> How significant is the failure, anyway?  Are we likely to encounter
> trouble down the line on powerpc if we don't resolve this?  I have no
> idea, honestly, so I'm asking because I just don't know.

I submitted the bug upstream. It turns out it was a bug in the test
suite which only showed up on big-endian systems. They've fixed it in
libiberty (in GCC) and I added the patch to binutils on core-updates.
Tests pass on powerpc-linux and x86_64-linux.

It also made this commit much much smaller :)


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* [bug#47615] [PATCH 0/9] Add 32-bit powerpc support
       [not found]     ` <87lf8rex5i.fsf_-_@gnu.org>
@ 2021-05-06 15:48       ` Efraim Flashner
  0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-05-06 15:48 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel, 47615

[-- Attachment #1: Type: text/plain, Size: 1367 bytes --]

On Thu, May 06, 2021 at 04:48:09PM +0200, Ludovic Courtès wrote:
> Efraim Flashner <efraim@flashner.co.il> skribis:
> 
> > * gnu/packages/disk.scm (mac-fdisk): New variable.
> > * gnu/packages/patches/mac-fdisk-gentoo-patchset.patch,
> > gnu/packages/patches/mac-fdisk-p18.patch: New files.
> > * gnu/local.mk (dist_patch_DATA): Register them.
> 
> [...]
> 
> > +++ b/gnu/packages/patches/mac-fdisk-gentoo-patchset.patch
> > @@ -0,0 +1,866 @@
> > +https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-fs/mac-fdisk/files
> 
> 
> [...]
> 
> > +++ b/gnu/packages/patches/mac-fdisk-p18.patch
> > @@ -0,0 +1,2070 @@
> > +This is the result of unzipping the 0.1-18 diff.gz
> > +https://cdn-aws.deb.debian.org/debian/pool/main/m/mac-fdisk/mac-fdisk_0.1-18.diff.gz
> 
> Given the size of these patches, please add a couple of sentences
> explaining what they do.
> 
> It would be best if we could refer to a fork instead of carrying those
> patches, though.
> 
> Ludo’.

I think I'm going to sit on the mac-fdisk package for a while. It would
be good to cut down the patches a bit. And I have to actually test it at
some point.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* bug#47615: [PATCH 0/9] Add 32-bit powerpc support
  2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
                   ` (7 preceding siblings ...)
  2021-04-22  7:59 ` [bug#47615] [PATCH v2 00/12] Add 32-bit powerpc support Efraim Flashner
@ 2021-05-24  9:54 ` Efraim Flashner
  8 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2021-05-24  9:54 UTC (permalink / raw)
  To: 47615-done

[-- Attachment #1: Type: text/plain, Size: 376 bytes --]

First few patches pushed. I'm still working on getting guile-3.0.7 to
pass its test suite and then I'll push that patch too.

Thanks everyone for the support!

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

end of thread, other threads:[~2021-05-24  9:55 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-06 12:24 [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 1/9] gnu: bootstrap: Add support for powerpc-linux Efraim Flashner
     [not found]   ` <87pmyx1q36.fsf@gmail.com>
     [not found]     ` <CAEwRq=oDfHMMhMijVUb6LF_UXeG_9Pmi_jZU7nzqAz8eYD_NxA@mail.gmail.com>
2021-04-14 13:56       ` Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 2/9] gnu: guile-3.0: Fix building on powerpc-linux Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 3/9] gnu: binutils: Adjust test suite " Efraim Flashner
     [not found]   ` <8735vo1yhm.fsf_-_@gmail.com>
     [not found]     ` <YHv6jDimnNGP3c2o@3900XT>
     [not found]       ` <87sg3izywb.fsf_-_@gmail.com>
2021-04-27  7:01         ` Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 4/9] gnu: mesa: Add support for powerpc-linux Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 6/9] gnu: american-fuzzy-lop: " Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 7/9] build: qemu-command: Add support for powerpc Efraim Flashner
2021-04-06 12:32 ` [bug#47615] [PATCH 9/9] gnu: nss: Skip tests on powerpc-linux Efraim Flashner
2021-04-22  7:59 ` [bug#47615] [PATCH v2 00/12] Add 32-bit powerpc support Efraim Flashner
2021-04-22  7:59   ` [bug#47615] [PATCH v2 12/12] gnu: glib: Disable failing test Efraim Flashner
     [not found]   ` <297ae28469f64eef14d8a1e8fd0e9375d8f8b1ae.1619076704.git.efraim@flashner.co.il>
     [not found]     ` <87lf8rex5i.fsf_-_@gnu.org>
2021-05-06 15:48       ` [bug#47615] [PATCH 0/9] Add 32-bit powerpc support Efraim Flashner
2021-05-24  9:54 ` bug#47615: " Efraim Flashner

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