From patchwork Tue Nov 12 16:25:29 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 70289 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 52C6E27BBEA; Tue, 12 Nov 2024 16:30:52 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id BF16527BBE2 for ; Tue, 12 Nov 2024 16:30:50 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tAtmb-00045u-33; Tue, 12 Nov 2024 11:30:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tAtmU-00040T-Mg for guix-patches@gnu.org; Tue, 12 Nov 2024 11:30:18 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tAtmU-0005xe-6O for guix-patches@gnu.org; Tue, 12 Nov 2024 11:30:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=0pGbNXQPzZAf36OWD8QsC597PmBRo8onmdJV6El6BYs=; b=kvC/f5UNYyWtivnzpfREIP+TtxWZsDK1YmryM5oc809fndFZ6kTQ5k9+DyfpWf0LB2kz8+7ew6gslVnginNoH6t2VZMfLRWGcuqKokSOqC6+mhHw25k2ednTpN/oT3wYWwlcLnErrVtEtqkFhXqvyrr+VZEZe6N+fGN1ADTNdywavU6jshycFiirYgCI1ZmXoqnz5lRhpOuMfHBwosQCS2nzkZUkYGA4Taao+Xb56XAbPhQCgPs+WzNXRPTlWZBy40t55hgx5/omL4O7l+exPxLhMJmVT7ZQS+mqYsyiAsSn/XOmQoAxlZzIyohB0ZAJqEU0vnsMSkm/pE1+yHnMtg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tAtmT-0000Y0-Vz for guix-patches@gnu.org; Tue, 12 Nov 2024 11:30:18 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#74290] [PATCH v2 20/40] gnu: pciutils: Support the 64bit Hurd. Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 12 Nov 2024 16:30:17 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74290 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 74290@debbugs.gnu.org Received: via spool by 74290-submit@debbugs.gnu.org id=B74290.17314289781331 (code B ref 74290); Tue, 12 Nov 2024 16:30:17 +0000 Received: (at 74290) by debbugs.gnu.org; 12 Nov 2024 16:29:38 +0000 Received: from localhost ([127.0.0.1]:39129 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tAtlp-0000LI-Ja for submit@debbugs.gnu.org; Tue, 12 Nov 2024 11:29:38 -0500 Received: from eggs.gnu.org ([209.51.188.92]:47228) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tAtlf-0000IA-IX for 74290@debbugs.gnu.org; Tue, 12 Nov 2024 11:29:28 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tAtjT-0005ND-VD; Tue, 12 Nov 2024 11:27:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=0pGbNXQPzZAf36OWD8QsC597PmBRo8onmdJV6El6BYs=; b=ZyE5Wgi4eyd3RX48wo/E dWJBLmgPV+sxWV6ZlhUK3U9oePs8XG9VklgzA+WugUp79wleiRpqjqpy6JSLf/EUY112p6qS+q3nh pr/ATTpb5HGLjUtoQHE/n96KQl05h3uWoW2sXbUypuDvB6LdXjyoeVvSz0lIQLj6jank8CE5PSatd N3ZsRfGgZPzLtIGZIcbGX1ZmiLyBB93KccGoUCiEF9KofFf1G07wwfh4zB4vLT35+X0KZeYBvJkze 96OZvBAe+62cySqOMw2Kth30CX07I8FRfsfhmGyZuQ3+tbpUujh479D2jcmmknvmSMgtoB6VaRg4K apfnms6g3Up/Vw==; From: Janneke Nieuwenhuizen Date: Tue, 12 Nov 2024 17:25:29 +0100 Message-ID: X-Mailer: git-send-email 2.46.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/patches/pciutils-hurd64.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/pciutils.scm (pciutils)[arguments]: Use g-expressions. When building for the 64bit Hurd, use it in new "apply-hurd64-patch" phase. Change-Id: I8936377da726681b748cc010e1fbae3fb19dee05 --- gnu/local.mk | 1 + gnu/packages/patches/pciutils-hurd64.patch | 31 ++++++++++++++++++++++ gnu/packages/pciutils.scm | 25 +++++++++++------ 3 files changed, 49 insertions(+), 8 deletions(-) create mode 100644 gnu/packages/patches/pciutils-hurd64.patch diff --git a/gnu/local.mk b/gnu/local.mk index a7e5e903e3..34023909a1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1908,6 +1908,7 @@ dist_patch_DATA = \ %D%/packages/patches/pam-krb5-CVE-2020-10595.patch \ %D%/packages/patches/pango-skip-libthai-test.patch \ %D%/packages/patches/password-store-tree-compat.patch \ + %D%/packages/patches/pciutils-hurd64.patch \ %D%/packages/patches/pdfpc-build-with-vala-0.56.patch \ %D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \ %D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \ diff --git a/gnu/packages/patches/pciutils-hurd64.patch b/gnu/packages/patches/pciutils-hurd64.patch new file mode 100644 index 0000000000..316f12e131 --- /dev/null +++ b/gnu/packages/patches/pciutils-hurd64.patch @@ -0,0 +1,31 @@ +Upstream-status: Not presented upstream. + +--- pciutils-3.8.0/lib/hurd.c.orig 2024-11-07 15:09:20.728973822 +0100 ++++ pciutils-3.8.0/lib/hurd.c 2024-11-07 15:05:08.524682813 +0100 +@@ -213,7 +213,7 @@ + hurd_read(struct pci_dev *d, int pos, byte * buf, int len) + { + int err; +- size_t nread; ++ mach_msg_type_number_t nread; + char *data; + mach_port_t device_port = device_port_lookup(d); + +@@ -266,7 +266,7 @@ + mach_port_t device_port = device_port_lookup(d); + struct pci_bar regions[6]; + char *buf = (char *) ®ions; +- size_t size = sizeof(regions); ++ mach_msg_type_number_t size = sizeof(regions); + + int err = pci_get_dev_regions(device_port, &buf, &size); + if (err) +@@ -305,7 +305,7 @@ + struct pci_xrom_bar rom; + mach_port_t device_port = device_port_lookup(d); + char *buf = (char *) &rom; +- size_t size = sizeof(rom); ++ mach_msg_type_number_t size = sizeof(rom); + + int err = pci_get_dev_rom(device_port, &buf, &size); + if (err) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index d2a352eb6b..08f1634113 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2019 Mathieu Othacehe -;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen +;;; Copyright © 2020, 2023, 2024 Janneke Nieuwenhuizen ;;; Copyright © 2022 Brendan Tildesley ;;; Copyright © 2022 Marius Bakke ;;; @@ -81,25 +81,34 @@ (define-public pciutils "01aglgw9ds9qiswcbi2lx90lswncikrlyv8mmp4haix8542bvvci")))) (build-system gnu-build-system) (arguments - `(#:phases - (modify-phases %standard-phases + (list + #:phases + #~(modify-phases %standard-phases (add-after 'unpack 'unbundle-pci.ids (lambda* (#:key native-inputs inputs #:allow-other-keys) (copy-file (search-input-file (or native-inputs inputs) "share/hwdata/pci.ids") "pci.ids"))) + #$@(if (target-hurd64?) + #~((add-after 'unpack 'apply-hurd64-patch + (lambda _ + (let ((patch-file + #$(local-file + (search-patch "pciutils-hurd64.patch")))) + (invoke "patch" "--force" "-p1" "-i" patch-file))))) + #~()) (replace 'configure (lambda* (#:key outputs #:allow-other-keys) ;; There's no 'configure' script, just a raw makefile. (substitute* "Makefile" - ,@(if (%current-target-system) - `((("^CROSS_COMPILE=.*$") + #$@(if (%current-target-system) + #~((("^CROSS_COMPILE=.*$") (string-append "CROSS_COMPILE=" - ,(%current-target-system) "-" + #$(%current-target-system) "-" "\n")) (("^HOST=.*$") (string-append "HOST=" - ,(gnu-triplet->nix-system + #$(gnu-triplet->nix-system (%current-target-system)) "\n")) ;; Disable 'install' strip option, that would fail when ;; we are cross-compiling. @@ -139,7 +148,7 @@ (define-public pciutils (invoke "make" "install" "install-lib")))) ;; Make sure programs have an RPATH so they can find libpciutils.so. - #:make-flags (list ,(string-append "CC=" + #:make-flags #~(list #$(string-append "CC=" (if (%current-target-system) (cc-for-target) "gcc"))