emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#56642: closed ([PATCH] gnu: Make libphonenumber reproducible.)


From: GNU bug Tracking System
Subject: bug#56642: closed ([PATCH] gnu: Make libphonenumber reproducible.)
Date: Wed, 27 Jul 2022 14:59:01 +0000

Your message dated Wed, 27 Jul 2022 16:57:51 +0200
with message-id <79c9fe14-3bc2-1f21-e3d7-7b26678b49f6@web.de>
and subject line Re: [PATCH v2] gnu: libphonenumber: Build reproducibly.
has caused the debbugs.gnu.org bug report #56642,
regarding [PATCH] gnu: Make libphonenumber reproducible.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
56642: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=56642
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: [PATCH] gnu: Make libphonenumber reproducible. Date: Tue, 19 Jul 2022 11:27:50 -0400
* gnu/packages/telephony.scm (libphonenumber): New variable.
* gnu/packages/messaging.scm (libphonenumber): Delete variable (moved).
---
Moved libphonenumber because it's a telephony package, plus it will avoid
circular deps for other telephony packages than depend on it (like pn).
Used substitute* instead of a patch to make libphonenumber reproducible
because it's a 2-line change, I can do it using a patch if preferred.

 gnu/packages/messaging.scm | 32 -----------------------------
 gnu/packages/telephony.scm | 42 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 42 insertions(+), 32 deletions(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index b68a798715..f08df1a5e4 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2772,38 +2772,6 @@ (define-public purple-lurch
     (home-page "https://github.com/gkdr/lurch";)
     (license license:gpl3+)))
 
-(define-public libphonenumber
-  (package
-   (name "libphonenumber")
-   (version "8.11.3")
-   (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/google/libphonenumber";)
-                    (commit (string-append "v" version))))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "06y3mh1d1mks6d0ynxp3980g712nkf8l5nyljpybsk326b246hg9"))))
-   (arguments
-    `(#:test-target "tests"
-      #:phases
-      (modify-phases %standard-phases
-        (add-after 'unpack 'change-directory
-          (lambda _ (chdir "cpp"))))))
-   (build-system cmake-build-system)
-   (native-inputs
-    (list googletest pkg-config))
-   (inputs
-    (list boost protobuf icu4c))
-   (synopsis "Library for parsing and using phone numbers")
-   (description
-    "This package provides a C++ library for parsing, formatting, and
-validating international phone numbers.")
-   (home-page "https://github.com/google/libphonenumber";)
-   (license license:asl2.0)))
-
-
 (define-public chatty
  (package
    (name "chatty")
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index e3071d9b75..410d3d8591 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -22,6 +22,7 @@
 ;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;; Copyright © 2021 Demis Balbach <db@minikn.xyz>
+;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -63,6 +64,7 @@ (define-module (gnu packages telephony)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages linphone)
@@ -893,3 +895,43 @@ (define-public libtgvoip
 telephony functionality into custom Telegram clients.")
     (home-page "https://github.com/zevlg/libtgvoip";)
     (license license:unlicense)))
+
+(define-public libphonenumber
+  (package
+    (name "libphonenumber")
+    (version "8.11.3")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/google/libphonenumber";)
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "06y3mh1d1mks6d0ynxp3980g712nkf8l5nyljpybsk326b246hg9"))))
+    (arguments
+     (list #:test-target "tests"
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'make-reproducible
+                 (lambda _
+                   (substitute*
+                       "tools/cpp/src/cpp-build/generate_geocoding_data.cc"
+                     (("return errno == 0;") "
+std::sort(entries->begin(), entries->end());
+      return errno == 0;")
+                     (("DirEntryKinds kind\\(\\) const \\{ return kind_; \\}") 
"
+DirEntryKinds kind() const { return kind_; }
+bool operator<(const DirEntry& d) { return name_ < d.name(); }"))))
+               (add-after 'make-reproducible 'change-directory
+                 (lambda _
+                   (chdir "cpp"))))))
+    (build-system cmake-build-system)
+    (native-inputs (list googletest pkg-config))
+    (inputs (list boost protobuf icu4c))
+    (synopsis "Library for parsing and using phone numbers")
+    (description
+     "This package provides a C++ library for parsing, formatting, and
+validating international phone numbers.")
+    (home-page "https://github.com/google/libphonenumber";)
+    (license license:asl2.0)))
-- 
2.36.1




--- End Message ---
--- Begin Message --- Subject: Re: [PATCH v2] gnu: libphonenumber: Build reproducibly. Date: Wed, 27 Jul 2022 16:57:51 +0200 User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 20.07.22 02:36, Antero Mejr wrote:
* gnu/packages/messaging.scm (libphonenumber): Add patch.
* gnu/packages/patches/libphonenumber-reproducible-build.patch: New
file.
---
I didn't report upstream because they don't have an issue tracker and
PRs require signing the Google CLA. If someone willing to sign the CLA
wants to submit the patch, please go ahead. However, updating libphonenumber
to 8.12.X breaks evolution-data-server.

Hi Antero,

I pushed the change now as ecb91c993dcce7e6c3faa0d156013dac42380cc6. I
registered the patch at gnu/local.mk and added your comment ontop of the
patch. As that's what our linter makes happy :)

~Jonathan


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]