From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:05:08 2022 Received: (at submit) by debbugs.gnu.org; 3 Oct 2022 00:05:08 +0000 Received: from localhost ([127.0.0.1]:48340 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of8xH-0006eI-Eu for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:05:08 -0400 Received: from lists.gnu.org ([209.51.188.17]:54700) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of7st-0004up-3C for submit@debbugs.gnu.org; Sun, 02 Oct 2022 18:56:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1of7ss-0000yQ-Nn for guix-patches@gnu.org; Sun, 02 Oct 2022 18:56:30 -0400 Received: from mout02.posteo.de ([185.67.36.66]:43599) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1of7sq-0008Pl-O5 for guix-patches@gnu.org; Sun, 02 Oct 2022 18:56:30 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id CB1FA24010A for ; Mon, 3 Oct 2022 00:56:25 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664751385; bh=Yhn1ob7TudpDJXL0gp9kKWU9ntVLx0SckEkKnfjQiMg=; h=From:To:Cc:Subject:Date:From; b=kvdug/c7nqCKhF3977FUvDnM8BeZuI+hhv1gX3ArDQIeLVkOwNKolNB+hX1oZOM5d L7xryk2je/dyMHl3e8tfkkmb/6n1hbJDetLIuP+NZh2n8WlbHR0lbuBGKOn2fPunQF jiZAzGJ0u0LUY+4UE8zBz+9nBzcqH2CYYi9LeZ+yuch6RwM/K5qKEIx1kfEaxg/3Gf uvc2dhCwSZKOd1SvfdyxWju42LOoz9Isbb/1Bu+/6R7/XI8vE2OQwh+31UPUkgsmd4 Ku4YLnglT2bQ7ij+cEBRqcU2jIIpLK/lMC5Wi5vRZ6HuZ0SW+2S5EFvf42QYOTRCRp SoSJg7xaJbaDQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MgfTj0tvrz6tm9; Mon, 3 Oct 2022 00:56:22 +0200 (CEST) From: David Elsing To: guix-patches@gnu.org Subject: [PATCH 00/11] Add rdkit. Date: Sun, 2 Oct 2022 22:55:26 +0000 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=185.67.36.66; envelope-from=david.elsing@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sun, 02 Oct 2022 20:05:06 -0400 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hello! This patch series adds rdkit and its new dependencies. Most optional components are enabled, except for the additional wrappers, the "StructChecker" and the "compressed MolSuppliers". All bundled software in External/ is unbundled and the included pickled data (only used for a few tests) is removed. freesasa is built as a shared library and the flex and bison files are generated. For yaehmop-tightbind, I removed the transpiled Fortran->C files and built the Fortran parts with GFortran instead. gemmi included a patched version of sajson where numbers are kept as the original strings, so I made a package variant and added a check for sajson::TYPE_INTEGER in gemmi. sajson also requires another small patch (gnu/packages/patches/sajson-parse_flags-linking.patch) which I took from the unmerged upstream pull request https://github.com/chadaustin/sajson/pull/54/files, is that ok? The packages were reproducible after two rounds (when setting the environment variables as in python-build-system for rdkit), but I only built them on x86_64 as emulation would take quite long. David Elsing (11): gnu: Add fast-float. gnu: Add pocketfft. gnu: Add sajson. gnu: Add tinydir. gnu: Add optionparser. gnu: Add gemmi. gnu: Add freesasa. gnu: Add maeparser. gnu: Add coordgenlibs. gnu: Add yaehmop-tightbind. gnu: Add rdkit. gnu/packages/chemistry.scm | 531 ++++++++++++++++++ gnu/packages/cpp.scm | 201 +++++++ .../patches/gemmi-fix-sajson-types.patch | 11 + .../rdkit-cmake-external-dependencies.patch | 102 ++++ .../sajson-for-gemmi-numbers-as-strings.patch | 195 +++++++ .../patches/sajson-parse_flags-linking.patch | 45 ++ 6 files changed, 1085 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch create mode 100644 gnu/packages/patches/rdkit-cmake-external-dependencies.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch create mode 100644 gnu/packages/patches/sajson-parse_flags-linking.patch -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:10 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:10 +0000 Received: from localhost ([127.0.0.1]:48349 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bq-00070G-Aw for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:10 -0400 Received: from mout01.posteo.de ([185.67.36.65]:35917) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bn-0006zf-0Z for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:08 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 7C18B240038 for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756401; bh=oH+kFWRQRZKQx+zU2Fdt/VrHx0Tw8g5mFPuuqFgiR24=; h=From:To:Cc:Subject:Date:From; b=HbOIeOB8pWwrT0LReLryp3+ZuZE7r6h31uq/R1DoK8csFmMCkOaylSE6Vxfoc1bWK ypWDezJby1Y8EH/kb9VHxbWtZstG1ASjVuju/L1oVMWlk7nJ6SQGIMtpXiqeoRDlPQ wyWEaOtQ0KSZe4FA3Q8KLNF1MiO+13pFSrlnSLdAfv3MrZ1ah1PnAxvm4bjz0Ph6b1 StXfTxa/+3sBcXTqgHPIfo1ofac16VjAvr89qsbnfJRoO4rKBStx8QNYuST53G4Rdm RjAYCTCE2PY7R/ETQDAcK3saklDrto0LHJFGJFV5HaA/gXKElVptuLt91yegyhGDyo hiC9ZeOHbmfxg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghL9063Wz9rxD; Mon, 3 Oct 2022 02:20:00 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 01/11] gnu: Add fast-float. Date: Mon, 3 Oct 2022 00:19:46 +0000 Message-Id: <36cffcc5a0f65b1ed2f8fe34efd31a8d08a56d55.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/cpp.scm (fast-float): New variable. --- gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index d03e0bc7e1..e597dba40c 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2022 muradm ;;; Copyright © 2022 Attila Lendvai ;;; Copyright © 2022 Arun Isaac +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -1907,3 +1908,26 @@ (define-public cpp-mustache templated string type for compatibility with any STL-like string (std::string, std::wstring, etc).") (license license:boost1.0))) + +(define-public fast-float + (package + (name "fast-float") + (version "3.5.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fastfloat/fast_float") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0z3rxxd0pwvw70dbnv63rm67biw829vdqf50y16isxm6g3sbrz8g")))) + (build-system cmake-build-system) + (arguments + ;; Tests require downloading a lot of additional data + (list #:tests? #f)) + (home-page "https://github.com/fastfloat/fast_float") + (synopsis "Fast and exact implementation of the C++ from_chars functions") + (description "@code{fast_float} is a header-only C++ library which provides fast +implementations of the from_chars functions for float and double types.") + (license (list license:asl2.0 license:expat)))) ; dual licensed -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:12 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:12 +0000 Received: from localhost ([127.0.0.1]:48355 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Br-00070e-Q4 for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:12 -0400 Received: from mout02.posteo.de ([185.67.36.66]:47943) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bp-0006zz-U8 for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:10 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 6E43C24010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756404; bh=fDIjIL5s7XJX8nqp+OIJNwhaGMwowMFqrmbmu1WCrm8=; h=From:To:Cc:Subject:Date:From; b=ODQQbJ7ei2a5v8M2XCeKMBzyLUsDT4Qp5sJCVDX+clTFhLVLnrgIARzqEefQ27qDI 1YTiFcH4nTJUFiLbHqed2i/tN/VaiHxwEbhN+N0tbW5gYnAQnFrdrJKmHHxwU+UdVC yNsp+72MZNyNoACiNKOCmOc2k7XRkMg22kDCD98tIe6DqaYIdiZYE/LLgZczgz1Xjv LHISPNC5JbfINffMgqlFXN4JvP+gFNTlpb5coQNNU7N/DO0IcCcU59TTQWZ7HyiIg4 Tkj/wtRDMMlGPeSYe6p2RoJ/jxLEtc5MbwqCK4EsSARM39jMYkjyUj0m7Hwcno7EhC cxhgJXrPuGE1A== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLD0Ktwz9rxD; Mon, 3 Oct 2022 02:20:04 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 02/11] gnu: Add pocketfft. Date: Mon, 3 Oct 2022 00:19:47 +0000 Message-Id: <885c4723f72f54c6789d62d3b67576a891e85074.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/cpp.scm (pocketfft): New variable. --- gnu/packages/cpp.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index e597dba40c..65df317100 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -1931,3 +1931,29 @@ (define-public fast-float (description "@code{fast_float} is a header-only C++ library which provides fast implementations of the from_chars functions for float and double types.") (license (list license:asl2.0 license:expat)))) ; dual licensed + +(define-public pocketfft + (let ((commit "daa8bb18327bc5c7d22c69428c25cf5dc64167d3") (revision "0")) + (package + (name "pocketfft") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mreineck/pocketfft") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dbkkqkmkxgmz1qjpsqzic5ig3qw1pqndbb3dvjc7xq5f2rdzyq1")))) + (build-system copy-build-system) + (arguments + (list + #:install-plan + #~'(("pocketfft_hdronly.h" "include/")))) + (home-page "https://github.com/mreineck/pocketfft") + (synopsis "Heavily modified implementation of FFTPack in C++") + (description "This package contains the single-header PocketFFT library, +which is an reimplementation of FFTPack with several advantages, such as +multidimensional algorithms, different datatypes and vector instructions.") + (license license:bsd-3)))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:15 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:15 +0000 Received: from localhost ([127.0.0.1]:48361 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bu-00070z-4h for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:15 -0400 Received: from mout02.posteo.de ([185.67.36.66]:41257) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bq-000701-Nv for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:11 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 4041024010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756405; bh=pz3UNBUEOR2A/kAGkjDDR9+zVAKKXw/KuEG3w8IjnhU=; h=From:To:Cc:Subject:Date:From; b=Nav2pEWB6o/5hi4DgkINpgjV+b52udpYO42cOH+4g+2oTeV9T9B02EULpCJneWOuw RzYWhiFK663WjlGDeLB+PuEl19h86PPBdelYK3Hszj7RWiG0pDkigoj5NmySkp8onh R4ii0ORbPwPecsgIpOWidXXmz52390iNfZ3HtZa7hKlwLQdFFXggSkQme+dVQ0vS+6 z4L/QDDq6IYSCLRHIEafrTGA0vCKsVmPxK9Wf3iy40PRasdyipDetTpSpSDUruCkfu yDcCgL9YGFUXGehe1VnXXSmd4m/F5fE7Lrc+FAhS6IPu4+PNk3q2AygEMP7sp4jap/ 3wonzgTaxU8XA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLD647Yz6tmX; Mon, 3 Oct 2022 02:20:04 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 03/11] gnu: Add sajson. Date: Mon, 3 Oct 2022 00:19:48 +0000 Message-Id: <58f8902b3b903cde3a1094fdb888e19ff1cd3ba5.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/cpp.scm (sajson): New variable. --- gnu/packages/cpp.scm | 63 +++++++++++++++++++ .../patches/sajson-parse_flags-linking.patch | 45 +++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 gnu/packages/patches/sajson-parse_flags-linking.patch diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 65df317100..7bfa3d6cdf 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -57,6 +57,7 @@ (define-module (gnu packages cpp) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (guix build-system scons) #:use-module (guix modules) #:use-module (guix gexp) #:use-module (gnu packages) @@ -1957,3 +1958,65 @@ (define-public pocketfft which is an reimplementation of FFTPack with several advantages, such as multidimensional algorithms, different datatypes and vector instructions.") (license license:bsd-3)))) + +(define-public sajson + (let ((commit "ec644013e34f9984a3cc9ba568cab97a391db9cd") (revision "0")) + (package + (name "sajson") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chadaustin/sajson") + (commit commit))) + (file-name (git-file-name name version)) + (patches + (search-patches "sajson-parse_flags-linking.patch")) + (sha256 + (base32 + "0fjag27w7gvkc5pdhq3ad7yc09rabpzahndw1sgsg04ipznidmmq")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "third-party")))) + (build-system scons-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-other-builds + (lambda _ + (substitute* "SConstruct" + (("for name, tools in builds:") + "for name, tools in [('opt', [gcc, opt])]:")) + #t)) + (add-after 'unpack 'use-external-unittest-cpp + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "SConscript" + (("unittestpp_env\\.Library") "_dummy = ") + (("test_env = env.Clone\\(tools=\\[unittestpp, sajson\\]\\)") + (string-append + "test_env = env.Clone(tools=[sajson])\n" + "test_env.Append(CPPPATH='" + (search-input-directory inputs "/include/UnitTest++") + "', LIBPATH='" + (string-append #$(this-package-native-input "unittest-cpp") + "/lib") + "', LIBS=['UnitTest++'])"))) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "build/opt/test") + (invoke "build/opt/test_unsorted")) + #t)) + (replace 'install + (lambda _ + (let ((out (string-append #$output "/include"))) + (install-file "include/sajson.h" out) + (install-file "include/sajson_ostream.h" out)) + #t))))) + (native-inputs (list unittest-cpp)) + (home-page "https://github.com/chadaustin/sajson") + (synopsis "Lightweight, extremely high-performance JSON parser for C++11") + (description "sajson is a high-performance, in-place JSON parser +header-only library.") + (license license:expat)))) diff --git a/gnu/packages/patches/sajson-parse_flags-linking.patch b/gnu/packages/patches/sajson-parse_flags-linking.patch new file mode 100644 index 0000000000..878706dc79 --- /dev/null +++ b/gnu/packages/patches/sajson-parse_flags-linking.patch @@ -0,0 +1,45 @@ +This patch is from the upstream pull request +https://github.com/chadaustin/sajson/pull/54. +It fixes linking with GCC. + +diff --git a/include/sajson.h b/include/sajson.h +index 8b4e05a..1bd045b 100644 +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, size_t value) { + // header. This trick courtesy of Rich Geldreich's Purple JSON parser. + template + struct globals_struct { ++ static const unsigned char parse_flags[256]; ++}; ++typedef globals_struct<> globals; ++ + // clang-format off + + // bit 0 (1) - set if: plain ASCII string character + // bit 1 (2) - set if: whitespace + // bit 4 (0x10) - set if: 0-9 e E . +- constexpr static const uint8_t parse_flags[256] = { ++ template ++ const unsigned char globals_struct::parse_flags[256] = { + // 0 1 2 3 4 5 6 7 8 9 A B C D E F + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2, 0, 0, // 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 1 +@@ -162,15 +167,13 @@ struct globals_struct { + }; + + // clang-format on +-}; +-typedef globals_struct<> globals; + +-constexpr inline bool is_plain_string_character(char c) { ++inline bool is_plain_string_character(char c) { + // return c >= 0x20 && c <= 0x7f && c != 0x22 && c != 0x5c; + return (globals::parse_flags[static_cast(c)] & 1) != 0; + } + +-constexpr inline bool is_whitespace(char c) { ++inline bool is_whitespace(char c) { + // return c == '\r' || c == '\n' || c == '\t' || c == ' '; + return (globals::parse_flags[static_cast(c)] & 2) != 0; + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:16 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:16 +0000 Received: from localhost ([127.0.0.1]:48367 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bv-00071C-Hi for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:16 -0400 Received: from mout02.posteo.de ([185.67.36.66]:36029) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Br-000702-H3 for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:11 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 0C42424010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756406; bh=Q86jFcqeapRFBzeXFYH5IPYv7vqb5jUT9TolKpIlIJE=; h=From:To:Cc:Subject:Date:From; b=GNgzix1OcgiQ9Gmrip0iKo34kd/rSTomayinQkB1L/Eh5oVrIYiQejBI3roLtv3PY TRV9L9YTR9Ck445X19lS44F6lm6We6QWUe9xWuOiImeY0HK/7OAf05ArSkiLEgdHN2 SCV0v04Ii2sVLwWyeshAU1pNhChxaRtd2BK7Pdn4S350kdmWXJuGZZNzIptC2yIWr+ X+DjFrtwshxCQCCKP9VRfIZ274eP0hZ7Dka18O5o1ik+/f88CPZG1mFm9+DdmP1u9Y PWv/l6CitkeXJ6GFNE4FXMg0l+/5DDaJZIj6N7qjOQRTHD33kZb7NsoJ4jWglLZ28P AHGc38wr9KM0A== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLF4l1Mz9rxD; Mon, 3 Oct 2022 02:20:05 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 04/11] gnu: Add tinydir. Date: Mon, 3 Oct 2022 00:19:49 +0000 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/cpp.scm (tinydir): New variable. --- gnu/packages/cpp.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 7bfa3d6cdf..4819f36052 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2020,3 +2020,41 @@ (define-public sajson (description "sajson is a high-performance, in-place JSON parser header-only library.") (license license:expat)))) + +(define-public tinydir + (package + (name "tinydir") + (version "1.2.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cxong/tinydir") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1nprgdfx4i8wzc1idw6chan4fjfa75b5ll8kghdc0q2278pny259")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "tests/cbehave")))) + (build-system cmake-build-system) + (arguments + (list + ;; Tests require cbehave and rlutil + #:tests? #f + #:phases + ;; Build samples instead of tests + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "samples") #t)) + (add-after 'build 'chdir-back + (lambda _ (chdir "..") #t)) + (replace 'install + (lambda _ + (install-file "tinydir.h" (string-append #$output "/include")) + #t))))) + (home-page "https://github.com/cxong/tinydir") + (synopsis "Lightweight, portable and easy to integrate C directory and +file reader") + (description "tinydir is a header-only C library to portably read files +and directories.") + (license license:bsd-2))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:17 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:17 +0000 Received: from localhost ([127.0.0.1]:48371 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bw-00071Q-BB for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:16 -0400 Received: from mout02.posteo.de ([185.67.36.66]:34411) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bs-000704-AV for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:12 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id CE6E724010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756406; bh=gYnMOh2FiyERh7dOyYlCmlD+UqV1KYV3gyVbsNS0gh4=; h=From:To:Cc:Subject:Date:From; b=LjJAsBqw5Um9KwUr2cKg2D7RjOd1lCVTWSVyOl0h6yiOYkvJSC2Tl1uB681BP92Ht +1wFXaNB3K4raB8mT9Az2vtL6lFQ/arCoN8UtBLkwMWkzgeSIPv9FdR8dNoXKvLTiW Rt4Oel+V/YjbVPMw0ekrOJo7r8VhkVoqUJGFbv8BQPFs3wp+v0J+i5+yz9CF0+J/kv gr5W2IK9HrAVyCiHMt98/yjDRvHj9URu84pO+IB4G3RYcMn0yreQ7yF2TGx7511IIi 7wFHRZk+RkbO8sQJoJ6jx2mqSXlRz1wQT5t+DIDIO3mUW3t/WuRFwQb8rJKpsvjPgc x2cyVZqwPlUdw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLG3JVxz6tmX; Mon, 3 Oct 2022 02:20:06 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 05/11] gnu: Add optionparser. Date: Mon, 3 Oct 2022 00:19:50 +0000 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/cpp.scm (optionparser): New variable. --- gnu/packages/cpp.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 4819f36052..b30205109e 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2058,3 +2058,53 @@ (define-public tinydir (description "tinydir is a header-only C library to portably read files and directories.") (license license:bsd-2))) + +(define-public optionparser + (package + (name "optionparser") + (version "1.7") + (source (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/optionparser/optionparser-" + version ".tar.gz")) + (sha256 + (base32 + "04gfxrdzwacaynb8scsz6rr7nh64n6yk6w9dh2qdhrxw4caqr0dk")))) + (build-system gnu-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'chdir + (lambda _ (chdir "src") #t)) + (replace 'build + (lambda _ + (invoke "make" "-j" (number->string (parallel-job-count)) + "example_arg" "testparse" "testprintusage" "testodr" + "example") + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + (invoke "./example_arg") + (invoke "./testparse") + (invoke "./testprintusage") + (invoke "./testodr") + (invoke "./example")) + (format #t "test suite not run~%")))) + (replace 'install + (lambda _ + (install-file "optionparser.h" (string-append #$output "/include")) + #t)) + (add-after 'install 'chdir-back + (lambda _ (chdir "..") #t))))) + (home-page "https://optionparser.sourceforge.net/") + (synopsis "Header-only C++ library to parse command line options") + (description "The Lean Mean C++ Option Parser handles the program's +command line arguments (argc, argv). It supports the short and long option +formats of getopt(), getopt_long() and getopt_long_only() but has a more +convenient interface.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:19 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:19 +0000 Received: from localhost ([127.0.0.1]:48375 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9By-00071t-1Y for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:19 -0400 Received: from mout02.posteo.de ([185.67.36.66]:35219) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bt-000706-79 for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:14 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B240D24010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:07 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756407; bh=lRSMJnHtJuqTH4SAdlPhdJ8sdPy/ZvW08OKyguJU1wI=; h=From:To:Cc:Subject:Date:From; b=cRUoJiXT4Ej6Ozj9IB1sQUuh31BFPM6RQOCrj32NIXi6ISnsCzMqnf0BsJkMafBoH AJAYogQcbv28xaqnVkvn5IZaA8iqJc/Y5p72iTvRpOpfYWUxXOMrBsLC+Kwev8MLmo v/uh8mbZNFdxIvsuNRHLg1ooZ5lAu6M2ShfK3mjszKcqajfZ1dGMaPuRKQglUmK7AG L07gQsBfedD20OnUk6K1gKHef5jfBOFFZOtHsw0Pe292TGwNM/A8tTw1I4GL9dTxAK 8nA10D9DsnDEwLpeUde3qdyc/ybEgYup7ZY5aqHLkp/Y50RDsAE1jB74LJd6uzXx5P SSBRdAvGw+ZeA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLH1xFMz9rxD; Mon, 3 Oct 2022 02:20:07 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 06/11] gnu: Add gemmi. Date: Mon, 3 Oct 2022 00:19:51 +0000 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (gemmi): New variable. --- gnu/packages/chemistry.scm | 122 +++++++++++ .../patches/gemmi-fix-sajson-types.patch | 11 + .../sajson-for-gemmi-numbers-as-strings.patch | 195 ++++++++++++++++++ 3 files changed, 328 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index c517610fe8..f8fd85814f 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2020 Björn Höfling ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2021 Ricardo Wurmus +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages chemistry) + #:use-module (guix gexp) #:use-module (guix packages) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) @@ -35,6 +37,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) @@ -50,8 +53,10 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages stb) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system python)) @@ -566,3 +571,120 @@ (define-public python-pymol used to prepare publication-quality figures, to share interactive results with your colleagues, or to generate pre-rendered animations.") (license license:bsd-3))) + +(define sajson-for-gemmi + (package/inherit sajson + (name "sajson-for-gemmi") + (source (origin + (inherit (package-source sajson)) + (patches (cons + (search-patch + "sajson-for-gemmi-numbers-as-strings.patch") + (origin-patches (package-source sajson)))))) + (build-system copy-build-system) + (arguments + (list + #:install-plan + #~'(("include/sajson.h" "include/") + ("include/sajson_ostream.h" "include/")))))) + +(define-public gemmi + (package + (name "gemmi") + (version "0.5.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/project-gemmi/gemmi") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00km5q726bslrw7xbfwb3f3mrsk19qbimfnl3hvr4wi1y3z8i18a")) + (patches + (search-patches "gemmi-fix-sajson-types.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "include/gemmi/third_party") + (delete-file-recursively "third_party") + #t)))) + (build-system cmake-build-system) + (native-inputs (list optionparser pybind11)) + (propagated-inputs + (list fast-float + pocketfft + sajson-for-gemmi + stb-sprintf + pegtl + tinydir)) + (inputs (list zlib python)) + (outputs '("out" "bin" "python")) + (arguments + (list + #:configure-flags + #~(let* ((python-lib + (string-append + #$output:python "/lib/python" + #$(version-major+minor (package-version python)) + "/site-packages"))) + (list "-DUSE_PYTHON=ON" + (string-append "-DPYTHON_INSTALL_DIR=" python-lib))) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-includes + (lambda _ + (substitute* "include/gemmi/sprintf.hpp" + (("") "")) + (substitute* "include/gemmi/dirwalk.hpp" + (("\"third_party/tinydir.h\"") "")) + (substitute* "include/gemmi/cif.hpp" + (("\"third_party/tao/pegtl.hpp\"") "")) + (substitute* "include/gemmi/json.hpp" + (("\"third_party/sajson.h\"") "")) + (substitute* "python/gemmi.cpp" + (("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"") + "")) + (substitute* '("include/gemmi/atof.hpp" + "include/gemmi/numb.hpp") + (("\"third_party/fast_float.h\"") + "")) + (substitute* "include/gemmi/fourier.hpp" + (("\"third_party/pocketfft_hdronly.h\"") + "")) + #t)) + (add-after 'patch-includes 'patch-cif + (lambda _ + (substitute* "include/gemmi/cif.hpp" + (((string-append + "^.*using analyze_t = pegtl::analysis::generic" + ";.*$")) "") + (("TAOCPP_PEGTL_") "TAO_PEGTL_")) + #t)) + (add-after 'unpack 'change-bin-prefix + (lambda _ + (substitute* "CMakeLists.txt" + (("install\\(TARGETS program DESTINATION bin\\)") + (string-append + "install(TARGETS program DESTINATION " + #$output:bin "/bin)"))) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "../source" + (setenv "PYTHONPATH" "../build") + (invoke "python3" "-m" "unittest" "discover" "-v" + "-s" "tests")))))))) + (home-page "https://gemmi.readthedocs.io/en/latest/") + (synopsis "Macromolecular crystallography library and utilities") + (description "GEMMI is a C++ library for macromolecular crystallography. +It can be used for working with +@enumerate +@item macromolecular models (content of PDB, PDBx/mmCIF and mmJSON files), +@item refinement restraints (CIF files), +@item reflection data (MTZ and mmCIF formats), +@item data on a 3D grid (electron density maps, masks, MRC/CCP4 format) +@item crystallographic symmetry. +@end enumerate") + (license license:mpl2.0))) diff --git a/gnu/packages/patches/gemmi-fix-sajson-types.patch b/gnu/packages/patches/gemmi-fix-sajson-types.patch new file mode 100644 index 0000000000..9633ddac8b --- /dev/null +++ b/gnu/packages/patches/gemmi-fix-sajson-types.patch @@ -0,0 +1,11 @@ +diff -ur a/include/gemmi/json.hpp b/include/gemmi/json.hpp +--- a/include/gemmi/json.hpp ++++ b/include/gemmi/json.hpp +@@ -38,6 +38,7 @@ + + inline std::string as_cif_value(const sajson::value& val) { + switch (val.get_type()) { ++ case sajson::TYPE_INTEGER: + case sajson::TYPE_DOUBLE: + return val.as_string(); + case sajson::TYPE_NULL: diff --git a/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch new file mode 100644 index 0000000000..6f476b8583 --- /dev/null +++ b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch @@ -0,0 +1,195 @@ +Patch for gemmi: Keep numbers in JSON file as strings. + +Adapted from this commit of the bundled fork of sajson in gemmi: +https://github.com/project-gemmi/gemmi/commit/fccbca4f6040364ba708613e1429c2251872240d + +diff -ur a/include/sajson.h b/include/sajson.h +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -411,43 +411,6 @@ + }; + } // namespace internal + +-namespace integer_storage { +-enum { word_length = 1 }; +- +-inline int load(const size_t* location) { +- int value; +- memcpy(&value, location, sizeof(value)); +- return value; +-} +- +-inline void store(size_t* location, int value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- static_assert( +- sizeof(value) <= sizeof(*location), +- "size_t must not be smaller than int"); +- memcpy(location, &value, sizeof(value)); +-} +-} // namespace integer_storage +- +-namespace double_storage { +-enum { word_length = sizeof(double) / sizeof(size_t) }; +- +-inline double load(const size_t* location) { +- double value; +- memcpy(&value, location, sizeof(double)); +- return value; +-} +- +-inline void store(size_t* location, double value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- memcpy(location, &value, sizeof(double)); +-} +-} // namespace double_storage +- + /// Represents a JSON value. First, call get_type() to check its type, + /// which determines which methods are available. + /// +@@ -585,70 +548,10 @@ + return length; + } + +- /// If a numeric value was parsed as a 32-bit integer, returns it. +- /// Only legal if get_type() is TYPE_INTEGER. +- int get_integer_value() const { +- assert_tag(tag::integer); +- return integer_storage::load(payload); +- } +- +- /// If a numeric value was parsed as a double, returns it. +- /// Only legal if get_type() is TYPE_DOUBLE. +- double get_double_value() const { +- assert_tag(tag::double_); +- return double_storage::load(payload); +- } +- +- /// Returns a numeric value as a double-precision float. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- double get_number_value() const { +- assert_tag_2(tag::integer, tag::double_); +- if (value_tag == tag::integer) { +- return get_integer_value(); +- } else { +- return get_double_value(); +- } +- } +- +- /// Returns true and writes to the output argument if the numeric value +- /// fits in a 53-bit integer. This is useful for timestamps and other +- /// situations where integral values with greater than 32-bit precision +- /// are used, as 64-bit values are not understood by all JSON +- /// implementations or languages. +- /// Returns false if the value is not an integer or not in range. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- bool get_int53_value(int64_t* out) const { +- // Make sure the output variable is always defined to avoid any +- // possible situation like +- // https://gist.github.com/chadaustin/2c249cb850619ddec05b23ca42cf7a18 +- *out = 0; +- +- assert_tag_2(tag::integer, tag::double_); +- switch (value_tag) { +- case tag::integer: +- *out = get_integer_value(); +- return true; +- case tag::double_: { +- double v = get_double_value(); +- if (v < -(1LL << 53) || v > (1LL << 53)) { +- return false; +- } +- int64_t as_int = static_cast(v); +- if (as_int != v) { +- return false; +- } +- *out = as_int; +- return true; +- } +- default: +- return false; +- } +- } +- + /// Returns the length of the string. + /// Only legal if get_type() is TYPE_STRING. + size_t get_string_length() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return payload[1] - payload[0]; + } + +@@ -659,7 +562,7 @@ + /// embedded NULs. + /// Only legal if get_type() is TYPE_STRING. + const char* as_cstring() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return text + payload[0]; + } + +@@ -667,7 +570,7 @@ + /// Returns a string's value as a std::string. + /// Only legal if get_type() is TYPE_STRING. + std::string as_string() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return std::string(text + payload[0], text + payload[1]); + } + #endif +@@ -690,6 +593,10 @@ + assert(e1 == value_tag || e2 == value_tag); + } + ++ void assert_tag_3(tag e1, tag e2, tag e3) const { ++ assert(e1 == value_tag || e2 == value_tag || e3 == value_tag); ++ } ++ + void assert_in_bounds(size_t i) const { assert(i < get_length()); } + + const tag value_tag; +@@ -2059,6 +1966,8 @@ + std::pair parse_number(char* p) { + using internal::tag; + ++ size_t start = p - input.get_data(); ++ + // Assume 32-bit, two's complement integers. + static constexpr unsigned RISKY = INT_MAX / 10u; + unsigned max_digit_after_risky = INT_MAX % 10u; +@@ -2235,23 +2144,18 @@ + u = 0u - u; + } + } ++ ++ bool success; ++ size_t* out = allocator.reserve(2, &success); ++ if (SAJSON_UNLIKELY(!success)) { ++ return std::make_pair(oom(p, "number"), tag::null); ++ } ++ out[0] = start; ++ out[1] = p - input.get_data(); ++ + if (try_double) { +- bool success; +- size_t* out +- = allocator.reserve(double_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "double"), tag::null); +- } +- double_storage::store(out, d); + return std::make_pair(p, tag::double_); + } else { +- bool success; +- size_t* out +- = allocator.reserve(integer_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "integer"), tag::null); +- } +- integer_storage::store(out, static_cast(u)); + return std::make_pair(p, tag::integer); + } + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:19 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:19 +0000 Received: from localhost ([127.0.0.1]:48377 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bz-00071w-3M for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:19 -0400 Received: from mout01.posteo.de ([185.67.36.65]:34815) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bu-00070E-NH for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:15 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 38A99240034 for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756409; bh=sGdpBg2OoFF4uYzR2nwqqhN6VeEZ5FYKcX5hojndIRQ=; h=From:To:Cc:Subject:Date:From; b=pSPaL+JKtv0FJudeepGXwYSX2af2yGd0vzT1bvr0+t4JPBrDiBUVZBKjODHfUR9uo nh4tKt1c32tYT1TeF50oYSSWOt4wVoalNs17QL/+aPm25sfMjDqdLUbokMyw+piHUR o1e4lXvV+SxIs8WZqE5iU0y8P1X4GfqOZtwnDFyiQ/GnklWwgH5jzCHL5yNKmKL6pN Xbcr0q06o4SFIK0pxHpbiRAhsbsi/JY4/QSPR4eFyqUUgu44HMZCyzpi9+7oQCU3Pg BQ0VqrFCOEo8ewvazlzQRvlWKDFzJexsBOk6D2FCe0EeBgTprwLa6fDNoCfAoeb4Gb UeURKPRCL6xsQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLJ61Rfz9rxD; Mon, 3 Oct 2022 02:20:08 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 08/11] gnu: Add maeparser. Date: Mon, 3 Oct 2022 00:19:53 +0000 Message-Id: <644d206b9fb0fd074422626f85bfc9f1de8edc70.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (maeparser): New variable. --- gnu/packages/chemistry.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 223a27a20d..4d8ce66230 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -769,3 +769,24 @@ (define-public freesasa be parameterized to arbitrary precision, and for high resolution versions of the algorithms, the calculations give identical results.") (license license:expat))) + +(define-public maeparser + (package + (name "maeparser") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/maeparser") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1yv4y5hn49fhylziigsg922bb244lb57p69r7vg9q899zd3l5b7l")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list zlib)) + (home-page "https://github.com/schrodinger/maeparser") + (synopsis "Maestro file parser") + (description "maeparser is a parser for Schrodinger Maestro files.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:19 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:20 +0000 Received: from localhost ([127.0.0.1]:48379 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bz-000723-Fb for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:19 -0400 Received: from mout01.posteo.de ([185.67.36.65]:38221) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bv-00070H-HQ for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:16 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 0A461240034 for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756410; bh=Wi3XIZGCXpqwCWUL1rOoBvACS52zhpOMCRULdDB4dvs=; h=From:To:Cc:Subject:Date:From; b=dQU2Mf7REzwEhN5VyATXKm3CfoB+CxXpsLTQ6zzvk6M0gFJp+ocOVo3HMtGsDNYB9 95EcV+G3rXrjA9gtT/nEgQQQBvD723oMz9o7B6cwq90rBgs9cyFRykatIWGRnh52BP 9qimkc9GNl0aahuzduypzIkUead+cZof1JVcNOqD+w82/kFo5whZe/8szFFXBpbWbT OQt0TEQYcIGHg8sfkiWLXoKfq2WhAC+t+k2giPMacml1yXbQhZG/Gqt6pPWnV1xRXs MmrVvpPloDNkBfDxlDmUOxucj76s3uCmA08rzUTFUJl5i7kbZ4QevDoqpCwjF1sAPf P80knaqs8eN9g== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLK4W4wz6tmX; Mon, 3 Oct 2022 02:20:09 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 09/11] gnu: Add coordgenlibs. Date: Mon, 3 Oct 2022 00:19:54 +0000 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (coordgenlibs): New variable. --- gnu/packages/chemistry.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 4d8ce66230..cc26aa329a 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -790,3 +790,30 @@ (define-public maeparser (synopsis "Maestro file parser") (description "maeparser is a parser for Schrodinger Maestro files.") (license license:expat))) + +(define-public coordgenlibs + (package + (name "coordgenlibs") + (version "3.0.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/coordgenlibs/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0d09x3v38i9y184bml020bq7xizdrdwng38qmdxlplzfhqkjdidv")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list maeparser)) + (arguments + (list + #:configure-flags + #~(list "-DCOORDGEN_RIGOROUS_BUILD=OFF" + "-DCOORDGEN_USE_MAEPARSER=ON"))) + (home-page "https://github.com/schrodinger/coordgenlibs/") + (synopsis "2D coordinate generation") + (description "@code{coordgenlibs} contains algorithms to generate 2D +coordinates. It has an emphasis on quality rather than speed.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:20 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:20 +0000 Received: from localhost ([127.0.0.1]:48381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bz-00072B-Ro for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:20 -0400 Received: from mout02.posteo.de ([185.67.36.66]:44979) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bw-00070W-9y for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:17 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id C8B8F24010A for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756410; bh=JXFEynUgVbw+BZqjCMHclQgbR1nHhXHS1ZMiU6a8uIo=; h=From:To:Cc:Subject:Date:From; b=kiOFbXOyYfRNXVqVDDu5lusR0Ue7g76tLmODW1wD3k1S0S2G+s6DKAR7U7cz0cM72 RAUANZoEfrZQGRuu57XRyEL+rCHadf1DS+OaAeXgsWKOzyTngo/OJ4+K+WCeFdvSaE UjBH7SsdVlrwe8cDlVJzQ6R1zbRX6izsnrUUTC1FCbF1J/bwV42c9/AkrwNTVWyE8i ZIeEtRpmkb9S8W3TruclwJ1nVgkctY8BGBtxSQVIfYFiBel2Ja9PlnjIrvwYLoyMBM LTGzgKqxPtCHMQcjhoKjZzekHCXlTtNNrJRoEIO4H2nMdsu0KrHrQrPkx4G+1AW/Dp 2TSI3NCulRcXQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLL327Gz9rxD; Mon, 3 Oct 2022 02:20:10 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 10/11] gnu: Add yaehmop-tightbind. Date: Mon, 3 Oct 2022 00:19:55 +0000 Message-Id: <616241998ff984b1e7c074c0aa89e7187b3cfc72.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (yaehmop-tightbind): New variable. --- gnu/packages/chemistry.scm | 82 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index cc26aa329a..a39deff4bf 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -42,6 +42,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) + #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages gv) @@ -817,3 +818,84 @@ (define-public coordgenlibs (description "@code{coordgenlibs} contains algorithms to generate 2D coordinates. It has an emphasis on quality rather than speed.") (license license:bsd-3))) + +(define-public yaehmop-tightbind + (package + (name "yaehmop-tightbind") + (version "2022.09.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/greglandrum/yaehmop") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x0d75m1hgdb411fiv7c5bwq1n4y0swrll0gigh8v5c73kjxrja0")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "docs") + (delete-file-recursively "examples") + (delete-file-recursively "viewkel") + (delete-file-recursively "tightbind/f2c_files") + (delete-file "tightbind/diag.c") + (delete-file "tightbind/cboris.c") + (delete-file "tightbind/abfns.c") + (delete-file "tightbind/lovlap.c") + #t)))) + (build-system cmake-build-system) + (native-inputs (list gfortran)) + (inputs (list openblas)) + (arguments + (list + #:configure-flags + #~(list + "-DUSE_BLAS_LAPACK=ON" + (string-append "-DPARM_FILE_LOC=" #$output + "/share/" #$name "-" #$version "/eht_parms.dat") + "-DBIND_EXE_NAME=yaehmop-bind") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "tightbind") + #t)) + (add-after 'chdir 'patch-fortran-functions + (lambda _ + (substitute* '("mov.c" "prototypes.h") + (("lovlap\\(") "lovlap_(") + (("abfns\\(") "abfns_(")) + #t)) + (add-after 'chdir 'patch-cmake + (lambda _ + (substitute* "CMakeLists.txt" + (("project\\(yaehmop C\\)") "project(yaehmop C Fortran)") + (("abfns.c") "fortran77/abfns.f") + (("lovlap.c") "fortran77/lovlap.f") + (("(set\\(PARM_FILE_LOC.*)\\)" all init) + (string-append init " CACHE STRING \"\")")) + (("add_library\\(yaehmop_eht" lib) + (string-append lib " SHARED ")) + (("target_link_libraries\\(test_eht \\$\\{LAPACK_LIBRARIES\\}.*" + all) + (string-append all "\ntarget_link_libraries(yaehmop_eht " + "${LAPACK_LIBRARIES})\n"))) + #t)) + (add-after 'install 'install-eht-parms + (lambda _ + (install-file "../tightbind/eht_parms.dat" + (string-append #$output "/share/" + #$name "-" #$version)) + #t)) + (delete 'check) + (add-after 'install-eht-parms 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "./test_eht")) + #t))))) + (home-page "https://github.com/greglandrum/yaehmop") + (synopsis "Yet Another extended Hueckel Molecular Orbital Package") + (description "@code{YAeHMOP} contains a program and library for performing +extended Hückel calculations.") + (license license:bsd-2))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:21 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:21 +0000 Received: from localhost ([127.0.0.1]:48383 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9C0-00072I-Aa for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:21 -0400 Received: from mout01.posteo.de ([185.67.36.65]:45333) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9Bt-00070D-Uv for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:17 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 73EDE240038 for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756408; bh=J+fp/4C7iHaVAeV1RaqmwEYzNn6JEZgZeikOYVzQ6NE=; h=From:To:Cc:Subject:Date:From; b=JBO/hPlDSFUmJ7mbirgkekhoSqeHRxvKgqfuQDDq0uv+aXGD0wI6agXm8GhAIhd80 oGvSkUUGS7WGKfu/JKt8SJnQ6wyWiKEjLoSjNmhZXqAJ14AIrIt7ATK4NCPE1ayLZD M0IwuaTcX0+oPPU28mzFexS8UYelJjEBmd6eGe58UCdItJ65AIrah++HQV7Mr7g38a ICxDsw0DpzF98mS7nzohMKMTxfQSIIs8q+KhxIK0VVvlChu5gmAEzk433M2poWsG31 /WjzaIxOa884BGhclWAO3pu27eA3ubOi22dUIIav5zyOeB6t11cpzCKYdInpMuzLLM StwktcJEXi4oA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLJ0fpFz9rxD; Mon, 3 Oct 2022 02:20:08 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 07/11] gnu: Add freesasa. Date: Mon, 3 Oct 2022 00:19:52 +0000 Message-Id: <254dc3bf26b76bf9fbd2da24c0f11eb6f34bb953.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (freesasa): New variable. --- gnu/packages/chemistry.scm | 81 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index f8fd85814f..223a27a20d 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,11 +34,13 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) + #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) @@ -54,6 +56,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages stb) + #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) #:use-module (guix build-system copy) @@ -688,3 +691,81 @@ (define-public gemmi @item crystallographic symmetry. @end enumerate") (license license:mpl2.0))) + +(define-public freesasa + (package + (name "freesasa") + (version "2.1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mittinatten/freesasa") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07wdnahf3g355ryaiqvfxd5f4rl54wv8jwxcbn0nia89fqysbv0f")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove C files generated by Flex and Bison + (for-each delete-file + '("src/parser.c" "src/parser.h" + "src/lexer.c" "src/lexer.h")) + #t)))) + (build-system gnu-build-system) + (inputs + (list gemmi json-c libxml2)) + (native-inputs + (list bison flex check autoconf automake pkg-config doxygen perl libtool)) + (outputs '("out" "doc")) + (arguments + (list + #:configure-flags + #~(list "--enable-check" + "--enable-parser-generator" + "CXXFLAGS=-std=c++17" + "--enable-doxygen") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-libc++-linking + (lambda _ + (substitute* "src/Makefile.am" + (("-lc\\+\\+") "")) + #t)) + (add-after 'unpack 'build-shared-library + (lambda _ + (substitute* "src/Makefile.am" + (("lib_LIBRARIES") "lib_LTLIBRARIES") + (("libfreesasa\\.a") "libfreesasa.la") + (("freesasa_LDADD \\+= libfreesasa\\.la" prev) + (string-append prev "\nlibfreesasa_la_LIBADD" + " = -ljson-c ${libxml2_LIBS}\n")) + (("_a_SOURCES") "_la_SOURCES")) + (substitute* "configure.ac" + (("AC_PROG_INSTALL" inst) + (string-append "AM_PROG_LIBTOOL\n" inst))) + (substitute* "tests/Makefile.am" + (("libfreesasa\\.a") "libfreesasa.la")) + #t)) + (add-before 'build 'build-lexer-and-parser + (lambda _ + (with-directory-excursion "src" + (invoke "make" "lexer.h") + (invoke "make" "parser.h")) + #t)) + (add-after 'install 'install-doc + (lambda _ + (copy-recursively + "doc/html" + (string-append #$output:doc "/share/doc/" #$name "-" #$version)) + #t))))) + (home-page "https://freesasa.github.io/") + (synopsis "Library for calculating the solvent accessible surface area +(SASA) of molecules") + (description "FreeSASA is a command line tool and C-library for +calculating solvent accessible surface areas (SASA). By default Lee & +Richards' algorithm is used, but Shrake & Rupley's is also available. Both can +be parameterized to arbitrary precision, and for high resolution versions of +the algorithms, the calculations give identical results.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 02 20:20:23 2022 Received: (at 58261) by debbugs.gnu.org; 3 Oct 2022 00:20:23 +0000 Received: from localhost ([127.0.0.1]:48387 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9C2-00072b-JX for submit@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:23 -0400 Received: from mout01.posteo.de ([185.67.36.65]:39507) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1of9C0-000719-Ib for 58261@debbugs.gnu.org; Sun, 02 Oct 2022 20:20:21 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id F2177240038 for <58261@debbugs.gnu.org>; Mon, 3 Oct 2022 02:20:11 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1664756412; bh=hb9WAlyov2g4eVQJ02XcaPayEJMg0fjb3CF4p6tqTqs=; h=From:To:Cc:Subject:Date:From; b=L2N56gwQQ41vWjOAI6Cg8vOG3S09p11lg9KrvoYgaxIGRP7IZZxFVfbENucpI/rFt 8PETm4oyhXNMjd4awT8LRkge3wQu9m0/Et9c8W7PC8amKvqcEIdXmptUDbGQ59Eigz f/o9+VNDdTzGG+ZQIJ8WYA6pqrjvddA2UKXydNhEYNq9zhhkdIk5f8CaKt6Rp7G7ym KEs5sUTvvYOy93M3otScpDOMZVreojP8GvKeyH3ViOHMyEVKlA02T2Jk4r/o7p+hqa ZBF3JfYo4Qjvtb4+SMf9INo+ii8OccBrWQxyCDHEepQ4HtU0QyEMhax+E0bDw8Va0n swFe+nh80b12A== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MghLM3n41z9rxF; Mon, 3 Oct 2022 02:20:11 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH 11/11] gnu: Add rdkit. Date: Mon, 3 Oct 2022 00:19:56 +0000 Message-Id: <06dceecde661574f95f3a6324285077d0bc6896a.1664725832.git.david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) * gnu/packages/chemistry.scm (rdkit): New variable. --- gnu/packages/chemistry.scm | 198 ++++++++++++++++++ .../rdkit-cmake-external-dependencies.patch | 102 +++++++++ 2 files changed, 300 insertions(+) create mode 100644 gnu/packages/patches/rdkit-cmake-external-dependencies.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index a39deff4bf..869cf264e3 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,6 +34,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -41,10 +42,12 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages gv) #:use-module (gnu packages image) #:use-module (gnu packages maths) @@ -56,6 +59,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages sqlite) #:use-module (gnu packages stb) #:use-module (gnu packages web) #:use-module (gnu packages xml) @@ -899,3 +903,197 @@ (define-public yaehmop-tightbind (description "@code{YAeHMOP} contains a program and library for performing extended Hückel calculations.") (license license:bsd-2))) + +(define-public rdkit + (package + (name "rdkit") + (version "2022.03.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rdkit/rdkit") + (commit + (string-append + "Release_" (string-replace-substring version "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19idgilabh04cbr1qj6zgrgsfjm248mmfz6fsr0smrd68d0xnml9")) + (patches + (search-patches "rdkit-cmake-external-dependencies.patch")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Remove pickle files (only used in tests), + ;; as they are compiled programs + (for-each + (lambda (name) + (display (string-append name "\n")) + (delete-file name)) + (find-files "." "\\.pkl(\\.gz)?$")) + ;; Remove SQLite data files (can be generated) + (delete-file "Data/RDData.sqlt") + (delete-file "Data/RDTests.sqlt") + #t)))) + (build-system cmake-build-system) + (native-inputs + `(("bison" ,bison) + ("boost" ,boost) + ("catch2" ,catch2) + ("eigen" ,eigen) + ("flex" ,flex) + ("freesasa" ,freesasa) + ("pkg-config" ,pkg-config) + ("rapidjson" ,rapidjson) + ("tar" ,tar) + ("avalontoolkit-src" + ,(let ((version "1.2.0")) + (origin + (method url-fetch) + (uri (string-append + "http://sourceforge.net/projects/avalontoolkit/files/" + "AvalonToolkit_" (substring version 0 3) "/AvalonToolkit_" + version ".source.tar")) + (sha256 + (base32 + "0rnnyy6axs2da7aa4q6l30ldavbk49v6l22llj1adn74h1i67bpv")) + (modules '((guix build utils) (ice-9 ftw) (srfi srfi-26))) + (snippet + #~(begin + (chdir "..") + (delete-file-recursively "StandardFiles") + (delete-file-recursively "SourceDistribution/java") + #t))))) + ("ringdecomposerlib-src" + ,(let ((version "1.1.3")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rareylab/RingDecomposerLib") + (commit (string-append "v" version "_rdkit")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rxzs2wpkkdi40wdzxc4sn0brk7dm7ivgqyfh38gf2f5c7pbg0wi"))))))) + (inputs + (list cairo + coordgenlibs + font-comic-neue + freetype + inchi + maeparser + python + sqlite + yaehmop-tightbind)) + (propagated-inputs + (list python-numpy python-cairocffi python-pillow)) + (arguments + (list + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (add-installed-pythonpath))) + #:configure-flags + #~(list + "-DRDK_BUILD_AVALON_SUPPORT=ON" + "-DRDK_BUILD_CAIRO_SUPPORT=ON" + "-DRDK_BUILD_CPP_TESTS=ON" + "-DRDK_BUILD_FREESASA_SUPPORT=ON" + "-DRDK_BUILD_INCHI_SUPPORT=ON" + "-DRDK_BUILD_YAEHMOP_SUPPORT=ON" + (string-append "-DCATCH_DIR=" + #$(this-package-native-input "catch2") + "/include/catch2") + "-DRDK_INSTALL_DEV_COMPONENT=ON" + "-DRDK_INSTALL_INTREE=OFF" + "-DRDK_INSTALL_STATIC_LIBS=OFF" + (string-append + "-DRDK_OPTIMIZE_POPCNT=" + #$(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) "ON") + ((string-prefix? "i686" system) "ON") + (else "OFF")))) + "-DRDK_USE_BOOST_IOSTREAMS=ON" + "-DRDK_USE_FLEXBISON=ON") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-external-dependencies + (lambda _ + (symlink + (string-append + #$(this-package-input "font-comic-neue") + "/share/fonts/truetype/ComicNeue-Regular.ttf") + "Data/Fonts/ComicNeue-Regular.ttf") + (symlink #$(this-package-native-input "rapidjson") + "External/rapidjson-1.1.0") + (invoke "tar" "xvf" + #$(this-package-native-input "avalontoolkit-src") + "-C" "External/AvalonTools") + (symlink #$(this-package-native-input "ringdecomposerlib-src") + "External/RingFamilies/RingDecomposerLib") + #t)) + (add-after 'copy-external-dependencies 'patch-source + (lambda _ + (with-directory-excursion "External/AvalonTools" + (invoke "patch" "-p0" "-i" + "AvalonToolkit_1.2_patch.txt")) + (substitute* "External/YAeHMOP/EHTTools.cpp" + (("") "")) + #t)) + (add-after 'unpack 'create-sqlite-data-files + (lambda _ + (invoke "sqlite3" "Data/RDData.sqlt" + ".read rdkit/Dbase/test_data/RDData.sqlite") + (invoke "sqlite3" "Data/RDTests.sqlt" + ".read rdkit/Dbase/test_data/RDTests.sqlite") + #t)) + (add-after 'unpack 'fix-inchi-include + (lambda _ + (substitute* "Code/cmake/Modules/FindInchi.cmake" + (("inchi_api.h.*\\)") "inchi/inchi_api.h)") + (("INCHI_LIBRARY NAMES.*\\)") + "INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)") + (("find_library" prev) + (string-append + "list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1)\n" + prev))) + (substitute* "External/INCHI-API/inchi.cpp" + (("") "")) + #t)) + (add-before 'build 'enable-bytecode-determinism + (lambda _ + (setenv "PYTHONHASHSEED" "0") + (setenv "PYTHONDONTWRITEBYTECODE" "1") + #t)) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs tests? parallel-tests? + #:allow-other-keys) + (when tests? + (let + ((job-count (number->string + (or (and parallel-tests? + (parallel-job-count)) + 1)))) + (setenv "RDBASE" (canonicalize-path "../source")) + (add-installed-pythonpath inputs outputs) + (invoke "ctest" + "-j" job-count + "-E" (string-append + ;; need pickled data + "(pyDiscreteValueVect" "|pySparseIntVect" + "|graphmoltestPickler" "|pyPartialCharges" + "|substructLibraryTest" "|pyFeatures" + "|pythonTestDirML" "|pythonTestDirChem" + ;; Catching Python exception fails + "|pyRanker)")))) + #t))))) + (home-page "https://rdkit.org/") + (synopsis "Open-Source Cheminformatics Software") + (description "RDKit is a collection of cheminformatics and +machine-learning software written in C++ and Python.") + (license license:bsd-3))) diff --git a/gnu/packages/patches/rdkit-cmake-external-dependencies.patch b/gnu/packages/patches/rdkit-cmake-external-dependencies.patch new file mode 100644 index 0000000000..5b73864f51 --- /dev/null +++ b/gnu/packages/patches/rdkit-cmake-external-dependencies.patch @@ -0,0 +1,102 @@ +diff -ur a/External/FreeSASA/CMakeLists.txt b/External/FreeSASA/CMakeLists.txt +--- a/External/FreeSASA/CMakeLists.txt ++++ b/External/FreeSASA/CMakeLists.txt +@@ -10,7 +10,7 @@ + endif() + endif() + +-if(needDownload) ++if(FALSE) + # don't actually use the md5 here + set(FREESASA_VERSION "2.0.3") + set(FREESASA_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/freesasa-${FREESASA_VERSION}") +@@ -66,24 +66,24 @@ + endif() + + set (freesasa_h ${FREESASA_SRC_DIR}/src/freesasa.h) +-file(READ ${freesasa_h} freesasa_h_data) ++#file(READ ${freesasa_h} freesasa_h_data) + string(REGEX REPLACE "(#include )" "\\1\n#include " freesasa_h_data "${freesasa_h_data}") + string(REGEX REPLACE "([^R][^D][^K][^I][^T][^_][^F][^R][^E][^E][^S][^A][^S][^A][^_][^C][^L][^I][^B][^_][^E][^X][^P][^O][^R][^T][^ ])(extern const)" "\\1RDKIT_FREESASA_CLIB_EXPORT \\2" freesasa_h_data "${freesasa_h_data}") +-file(WRITE ${freesasa_h} "${freesasa_h_data}") ++#file(WRITE ${freesasa_h} "${freesasa_h_data}") + + add_definitions(-DUSE_THREADS=0) + add_definitions(-DUSE_JSON=0) + add_definitions(-DUSE_XML=0) +-rdkit_library(freesasa_clib ${freesasa_clib_srcs}) +-target_compile_definitions(freesasa_clib PRIVATE RDKIT_FREESASALIB_BUILD) ++#rdkit_library(freesasa_clib ${freesasa_clib_srcs}) ++#target_compile_definitions(freesasa_clib PRIVATE RDKIT_FREESASALIB_BUILD) + + if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) + set_target_properties(freesasa_clib PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE) + endif() +-include_directories("${FREESASA_SRC_DIR}/src") ++#include_directories("${FREESASA_SRC_DIR}/src") + + rdkit_library(FreeSASALib RDFreeSASA.cpp SHARED +- LINK_LIBRARIES freesasa_clib GraphMol ) ++ LINK_LIBRARIES -lfreesasa GraphMol ) + target_compile_definitions(FreeSASALib PRIVATE RDKIT_FREESASALIB_BUILD) + + rdkit_headers(RDFreeSASA.h DEST GraphMol) +diff -ur a/External/YAeHMOP/CMakeLists.txt b/External/YAeHMOP/CMakeLists.txt +--- a/External/YAeHMOP/CMakeLists.txt ++++ b/External/YAeHMOP/CMakeLists.txt +@@ -18,32 +18,32 @@ + + include_directories( ${RDKit_ExternalDir}/YAeHMOP ) + +-ExternalProject_Add(yaehmop_project +- GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git +- GIT_TAG master +- UPDATE_COMMAND "" +- PATCH_COMMAND "" +- PREFIX ${CMAKE_CURRENT_SOURCE_DIR} +- SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" +- SOURCE_SUBDIR "tightbind" +- CMAKE_ARGS -DUSE_BLAS_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR} -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +- TEST_COMMAND "") +- +-include_directories(${PROJECT_BINARY_DIR}/include) +-link_directories(${PROJECT_BINARY_DIR}/lib) +-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build) +- +-set(EHT_PARAM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) +-install(FILES ${EHT_PARAM_FILE} +- DESTINATION ${RDKit_ShareDir}/Data +- COMPONENT data) ++#ExternalProject_Add(yaehmop_project ++# GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git ++# GIT_TAG master ++# UPDATE_COMMAND "" ++# PATCH_COMMAND "" ++# PREFIX ${CMAKE_CURRENT_SOURCE_DIR} ++# SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" ++# SOURCE_SUBDIR "tightbind" ++# CMAKE_ARGS -DUSE_BLAS_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR} -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ++# TEST_COMMAND "") ++ ++#include_directories(${PROJECT_BINARY_DIR}/include) ++#link_directories(${PROJECT_BINARY_DIR}/lib) ++#link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build) ++ ++#set(EHT_PARAM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) ++#install(FILES ${EHT_PARAM_FILE} ++# DESTINATION ${RDKit_ShareDir}/Data ++# COMPONENT data) + +-message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") +-message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") ++#message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") ++#message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") + +-rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES yaehmop_eht GraphMol ) ++rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES -lyaehmop_eht GraphMol ) + target_compile_definitions(EHTLib PRIVATE RDKIT_EHTLIB_BUILD) +-add_dependencies(EHTLib yaehmop_project) ++#add_dependencies(EHTLib yaehmop_project) + rdkit_headers(EHTTools.h DEST GraphMol) + rdkit_catch_test(testEHTLib1 test1.cpp + LINK_LIBRARIES EHTLib FileParsers SmilesParse ) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:09:34 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:09:35 +0000 Received: from localhost ([127.0.0.1]:52218 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofc3a-0004GH-Jk for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:09:34 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:5194) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofc3W-0004G5-Hg for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:09:32 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhTN63MJgz1LXt4; Tue, 4 Oct 2022 09:09:26 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MhTN63MJgz1LXt4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664867366; bh=QDoXefx8xI1FhPywkEIbsmamF32ITE+dqeVABMMVtkg=; h=Subject:From:To:Date:In-Reply-To:References:From; b=lpZAa2uFsGLLIgZ6kSZX8Oyacxuc3lwnBK1puJ4GwJg6ijBcL7n/Z2Ach8FZ6SsMo gvKqeaqsuIajHzfFhaQ+bKcSSJJT9pQDWopiEBy4wbuAE12N8RtmgR0wc6a1dIgMMV 1F2qYyahhIyhX6kCkVKD8g4v2UGgHzHC4cHxYXUY= Message-ID: <1458bec927ed2e86579d05af73d3daf5211fc7ff.camel@ist.tugraz.at> Subject: Re: [PATCH 02/11] gnu: Add pocketfft. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:09:25 +0200 In-Reply-To: <885c4723f72f54c6789d62d3b67576a891e85074.1664725832.git.david.elsing@posteo.net> References: <885c4723f72f54c6789d62d3b67576a891e85074.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: > * gnu/packages/cpp.scm (pocketfft): New variable. > --- > =C2=A0gnu/packages/cpp.scm | 26 ++++++++++++++++++++++++++ > =C2=A01 file changed, 26 insertions(+) >=20 > diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm > index e597dba40c..65df317100 100644 > --- a/gnu/packages/cpp.scm > +++ b/gnu/packages/cpp.scm > @@ -1931,3 +1931,29 @@ (define-public fast-float > =C2=A0=C2=A0=C2=A0=C2=A0 (description "@code{fast_float} is a header-only= C++ library > which provides fast > =C2=A0implementations of the from_chars functions for float and double > types.") > =C2=A0=C2=A0=C2=A0=C2=A0 (license (list license:asl2.0 license:expat)))) = ; dual licensed > + > +(define-public pocketfft > +=C2=A0 (let ((commit "daa8bb18327bc5c7d22c69428c25cf5dc64167d3") > (revision "0")) Split into two lines > +=C2=A0=C2=A0=C2=A0 (package > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (name "pocketfft") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (version (git-version "0.0.0" revision co= mmit)) I'd simply use "0", but YMMV. > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (source (origin > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (method git-fetch) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (uri (git-reference > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github= .com/mreineck/pocketfft") Note that there's also https://gitlab.mpcdf.mpg.de/mtr/pocketfft which is C99-compliant. =20 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit commit))) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (file-name (git-file-name name version)) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (sha256 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 (base32 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 > "1dbkkqkmkxgmz1qjpsqzic5ig3qw1pqndbb3dvjc7xq5f2rdzyq1")))) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (build-system copy-build-system) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (arguments > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (list > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:install-plan > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~'(("pocketfft_hdronly.h" "i= nclude/")))) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (home-page "https://github.com/mreineck/p= ocketfft") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (synopsis "Heavily modified implementatio= n of FFTPack in C++") I'd write out "Fast Fourier Transformation" and perhaps one or two other properties, e.g. "Header-only Fast Fourier Transformation library". > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (description "This package contains the s= ingle-header > PocketFFT library, > +which is an reimplementation of FFTPack with several advantages, > such as > +multidimensional algorithms, different datatypes and vector > instructions.") "This package provides a single-header C++11 library for computing Fast Fourier transformations. It supports multidimensional arrays, different floating point sizes and complex transformations." As for the vector instructions, we should convert the #ifndef POCKETFFT_NO_VECTORS checks to #if POCKETFFT_NO_VECTORS and insert a check that defines it to 1 if unset (for reproducibility of other packages). > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3)))) Cheers From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:23:09 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:23:10 +0000 Received: from localhost ([127.0.0.1]:52272 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcGj-0004cc-An for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:23:09 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:38292) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcGc-0004bt-Aw for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:23:07 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhTgh46z5z3wGC; Tue, 4 Oct 2022 09:22:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664868177; bh=iWOybNBVOHDmvFob3+utWluiICAdXiwoaHZXRInzVTo=; h=Subject:From:To:Date:In-Reply-To:References; b=rUGIZQ80xbohpZ/1Z4n+KuI9TW3QorbajpqVk1GgsPI8XIGU00XCR5OqcJb61Kosw m8/D7iaaAVlgzjOTruLhKW8jwE1Ejvg55zk+Z3fWhltDuyM9P2IgXsk23IJ2bk+/Vq SV5tWn53rxmMNQyhvY102dgY0jYshl+ijMAx4HGo= Message-ID: <61e7edbb4d21c916338e1433886b0abaf0732567.camel@ist.tugraz.at> Subject: Re: [PATCH 03/11] gnu: Add sajson. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:22:55 +0200 In-Reply-To: <58f8902b3b903cde3a1094fdb888e19ff1cd3ba5.1664725832.git.david.elsing@posteo.net> References: <58f8902b3b903cde3a1094fdb888e19ff1cd3ba5.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtIChzYWpzb24pOiBOZXcgdmFyaWFibGUuCj4g LS0tCj4gwqBnbnUvcGFja2FnZXMvY3BwLnNjbcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgNjMKPiArKysrKysrKysrKysrKysrKysrCj4gwqAuLi4v cGF0Y2hlcy9zYWpzb24tcGFyc2VfZmxhZ3MtbGlua2luZy5wYXRjaMKgIHwgNDUgKysrKysrKysr KysrKwo+IMKgMiBmaWxlcyBjaGFuZ2VkLCAxMDggaW5zZXJ0aW9ucygrKQo+IMKgY3JlYXRlIG1v ZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNvbi1wYXJzZV9mbGFncy0KPiBsaW5r aW5nLnBhdGNoCj4gCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jcHAuc2NtIGIvZ251L3Bh Y2thZ2VzL2NwcC5zY20KPiBpbmRleCA2NWRmMzE3MTAwLi43YmZhM2Q2Y2RmIDEwMDY0NAo+IC0t LSBhL2dudS9wYWNrYWdlcy9jcHAuc2NtCj4gKysrIGIvZ251L3BhY2thZ2VzL2NwcC5zY20KPiBA QCAtNTcsNiArNTcsNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gZ251KQo+IMKgwqAgIzp1c2UtbW9kdWxl IChndWl4IGJ1aWxkLXN5c3RlbSBtZXNvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWls ZC1zeXN0ZW0gcHl0aG9uKQo+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIHNj b25zKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4IG1vZHVsZXMpCj4gwqDCoCAjOnVzZS1tb2R1 bGUgKGd1aXggZ2V4cCkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzKQo+IEBAIC0x OTU3LDMgKzE5NTgsNjUgQEAgKGRlZmluZS1wdWJsaWMgcG9ja2V0ZmZ0Cj4gwqB3aGljaCBpcyBh biByZWltcGxlbWVudGF0aW9uIG9mIEZGVFBhY2sgd2l0aCBzZXZlcmFsIGFkdmFudGFnZXMsCj4g c3VjaCBhcwo+IMKgbXVsdGlkaW1lbnNpb25hbCBhbGdvcml0aG1zLCBkaWZmZXJlbnQgZGF0YXR5 cGVzIGFuZCB2ZWN0b3IKPiBpbnN0cnVjdGlvbnMuIikKPiDCoMKgwqDCoMKgwqAgKGxpY2Vuc2Ug bGljZW5zZTpic2QtMykpKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIHNhanNvbgo+ICvCoCAobGV0 ICgoY29tbWl0ICJlYzY0NDAxM2UzNGY5OTg0YTNjYzliYTU2OGNhYjk3YTM5MWRiOWNkIikKPiAo cmV2aXNpb24gIjAiKSkKPiArwqDCoMKgIChwYWNrYWdlCj4gK8KgwqDCoMKgwqAgKG5hbWUgInNh anNvbiIpCj4gK8KgwqDCoMKgwqAgKHZlcnNpb24gKGdpdC12ZXJzaW9uICIwLjAuMCIgcmV2aXNp b24gY29tbWl0KSkKTm90ZSB0aGF0IHRoZSBzd2lmdCBGRkkgaXMgYWR2ZXJ0aXNlZCBhcyAxLjAg YW5kIHRoZXJlIGhhcyBiZWVuIGEKYmxvZ3Bvc3QgY2xhaW1pbmcgaXQgdG8gYmUgMS4wIGluIDIw MTMuCj4gK8KgwqDCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICh1cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9jaGFkYXVzdGluL3NhanNv biIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0 IGNvbW1pdCkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAo Z2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHBhdGNoZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNlYXJj aC1wYXRjaGVzICJzYWpzb24tcGFyc2VfZmxhZ3MtCj4gbGlua2luZy5wYXRjaCIpKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ngo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAKPiAiMGZqYWcyN3c3Z3ZrYzVwZGhxM2FkN3ljMDlyYWJwemFobmR3MXNnc2cwNGlwem5pZG1t cSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZHVsZXMgJygoZ3VpeCBi dWlsZCB1dGlscykpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNuaXBwZXQg JyhkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidGhpcmQtcGFydHkiKSkpKQo+ICvCoMKgwqDCoMKg IChidWlsZC1zeXN0ZW0gc2NvbnMtYnVpbGQtc3lzdGVtKQo+ICvCoMKgwqDCoMKgIChhcmd1bWVu dHMKPiArwqDCoMKgwqDCoMKgIChsaXN0Cj4gK8KgwqDCoMKgwqDCoMKgICM6cGhhc2VzCj4gK8Kg wqDCoMKgwqDCoMKgICN+KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAnZGlzYWJsZS1vdGhlci1idWlsZHMK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogIlNDb25zdHJ1Y3QiCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiZm9yIG5hbWUsIHRvb2xzIGluIGJ1aWxkczoiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImZvciBuYW1lLCB0b29scyBp biBbKCdvcHQnLCBbZ2NjLCBvcHRdKV06IikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAjdCkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAndW5wYWNrICd1 c2UtZXh0ZXJuYWwtdW5pdHRlc3QtY3BwCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChs YW1iZGEqICgjOmtleSBpbnB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJTQ29uc2NyaXB0Igo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInVuaXR0ZXN0cHBfZW52XFwuTGlicmFyeSIpICJf ZHVtbXkgPSAiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInRlc3Rf ZW52ID0gZW52LkNsb25lXFwodG9vbHM9XFxbdW5pdHRlc3RwcCwKPiBzYWpzb25cXF1cXCkiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInRlc3RfZW52ID0gZW52LkNs b25lKHRvb2xzPVtzYWpzb25dKVxuIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAidGVzdF9lbnYuQXBwZW5kKENQUFBBVEg9JyIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNlYXJjaC1pbnB1dC1kaXJlY3RvcnkgaW5wdXRzCj4gIi9p bmNsdWRlL1VuaXRUZXN0KysiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAiJywgTElCUEFUSD0nIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoc3RyaW5nLWFwcGVuZCAjJCh0aGlzLXBhY2thZ2UtbmF0aXZlLWlucHV0Cj4gInVuaXR0 ZXN0LWNwcCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICIvbGliIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgIicsIExJQlM9WydVbml0VGVzdCsrJ10pIikpKQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChy ZXBsYWNlICdjaGVjawo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhKiAoIzpr ZXkgdGVzdHM/ICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICh3aGVuIHRlc3RzPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChpbnZva2UgImJ1aWxkL29wdC90ZXN0IikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoaW52b2tlICJidWlsZC9vcHQvdGVzdF91bnNvcnRlZCIpKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBs YWNlICdpbnN0YWxsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxldCAoKG91dCAoc3RyaW5nLWFwcGVuZCAj JG91dHB1dCAiL2luY2x1ZGUiKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGluc3RhbGwtZmlsZSAiaW5jbHVkZS9zYWpzb24uaCIgb3V0KQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUgImluY2x1ZGUvc2Fqc29uX29zdHJl YW0uaCIgb3V0KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkpKSkKWW91 IGRvbid0IG5lZWQgdGhlIHRyYWlsaW5nICN0cwo+ICvCoMKgwqDCoMKgIChuYXRpdmUtaW5wdXRz IChsaXN0IHVuaXR0ZXN0LWNwcCkpCj4gK8KgwqDCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9n aXRodWIuY29tL2NoYWRhdXN0aW4vc2Fqc29uIikKPiArwqDCoMKgwqDCoCAoc3lub3BzaXMgIkxp Z2h0d2VpZ2h0LCBleHRyZW1lbHkgaGlnaC1wZXJmb3JtYW5jZSBKU09OIHBhcnNlcgo+IGZvciBD KysxMSIpCj4gK8KgwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJzYWpzb24gaXMgYSBoaWdoLXBlcmZv cm1hbmNlLCBpbi1wbGFjZSBKU09OCj4gcGFyc2VyCj4gK2hlYWRlci1vbmx5IGxpYnJhcnkuIikK Q3V0IGRvd24gb24gdGhlIGFkcy4KPiArwqDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNlOmV4cGF0 KSkpKQo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpzb24tcGFyc2VfZmxh Z3MtbGlua2luZy5wYXRjaAo+IGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLXBhcnNlX2Zs YWdzLWxpbmtpbmcucGF0Y2gKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAw MDAuLjg3ODcwNmRjNzkKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZ251L3BhY2thZ2VzL3BhdGNo ZXMvc2Fqc29uLXBhcnNlX2ZsYWdzLWxpbmtpbmcucGF0Y2gKPiBAQCAtMCwwICsxLDQ1IEBACj4g K1RoaXMgcGF0Y2ggaXMgZnJvbSB0aGUgdXBzdHJlYW0gcHVsbCByZXF1ZXN0Cj4gK2h0dHBzOi8v Z2l0aHViLmNvbS9jaGFkYXVzdGluL3NhanNvbi9wdWxsLzU0Lgo+ICtJdCBmaXhlcyBsaW5raW5n IHdpdGggR0NDLgo+ICsKPiArZGlmZiAtLWdpdCBhL2luY2x1ZGUvc2Fqc29uLmggYi9pbmNsdWRl L3NhanNvbi5oCj4gK2luZGV4IDhiNGUwNWEuLjFiZDA0NWIgMTAwNjQ0Cj4gKy0tLSBhL2luY2x1 ZGUvc2Fqc29uLmgKPiArKysrIGIvaW5jbHVkZS9zYWpzb24uaAo+ICtAQCAtMTM4LDEyICsxMzgs MTcgQEAgY29uc3RleHByIGlubGluZSBzaXplX3QgbWFrZV9lbGVtZW50KHRhZyB0LAo+IHNpemVf dCB2YWx1ZSkgewo+ICsgLy8gaGVhZGVyLiBUaGlzIHRyaWNrIGNvdXJ0ZXN5IG9mIFJpY2ggR2Vs ZHJlaWNoJ3MgUHVycGxlIEpTT04KPiBwYXJzZXIuCj4gKyB0ZW1wbGF0ZSA8dHlwZW5hbWUgdW51 c2VkID0gdm9pZD4KPiArIHN0cnVjdCBnbG9iYWxzX3N0cnVjdCB7Cj4gKyvCoMKgwqAgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgcGFyc2VfZmxhZ3NbMjU2XTsKPiArK307Cj4gKyt0eXBlZGVm IGdsb2JhbHNfc3RydWN0PD4gZ2xvYmFsczsKPiArKwo+ICsgLy8gY2xhbmctZm9ybWF0IG9mZgo+ ICsgCj4gK8KgwqDCoMKgIC8vIGJpdCAwICgxKSAtIHNldCBpZjogcGxhaW4gQVNDSUkgc3RyaW5n IGNoYXJhY3Rlcgo+ICvCoMKgwqDCoCAvLyBiaXQgMSAoMikgLSBzZXQgaWY6IHdoaXRlc3BhY2UK PiArwqDCoMKgwqAgLy8gYml0IDQgKDB4MTApIC0gc2V0IGlmOiAwLTkgZSBFIC4KPiArLcKgwqDC oCBjb25zdGV4cHIgc3RhdGljIGNvbnN0IHVpbnQ4X3QgcGFyc2VfZmxhZ3NbMjU2XSA9IHsKPiAr K8KgwqDCoCB0ZW1wbGF0ZSA8dHlwZW5hbWUgdW51c2VkPgo+ICsrwqDCoMKgIGNvbnN0IHVuc2ln bmVkIGNoYXIgZ2xvYmFsc19zdHJ1Y3Q8dW51c2VkPjo6cGFyc2VfZmxhZ3NbMjU2XSA9Cj4gewo+ ICvCoMKgwqDCoMKgIC8vIDDCoMKgwqAgMcKgwqDCoCAywqDCoMKgIDPCoMKgwqAgNMKgwqDCoCA1 wqDCoMKgIDbCoMKgwqAgN8KgwqDCoMKgwqAgOMKgwqDCoCA5wqDCoMKgIEHCoMKgwqAKPiBCwqDC oMKgIEPCoMKgwqAgRMKgwqDCoCBFwqDCoMKgIEYKPiArwqDCoMKgwqDCoMKgwqDCoCAwLMKgwqAg MCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgwqDCoCAwLMKg wqAgMizCoMKgIDIswqDCoAo+IDAswqDCoCAwLMKgwqAgMizCoMKgIDAswqDCoCAwLCAvLyAwCj4g K8KgwqDCoMKgwqDCoMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKg wqAgMCzCoMKgIDAswqDCoMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAKPiAwLMKgwqAgMCzCoMKg IDAswqDCoCAwLMKgwqAgMCwgLy8gMQo+ICtAQCAtMTYyLDE1ICsxNjcsMTMgQEAgc3RydWN0IGds b2JhbHNfc3RydWN0IHsKPiArwqDCoMKgwqAgfTsKPiArIAo+ICsgLy8gY2xhbmctZm9ybWF0IG9u Cj4gKy19Owo+ICstdHlwZWRlZiBnbG9iYWxzX3N0cnVjdDw+IGdsb2JhbHM7Cj4gKyAKPiArLWNv bnN0ZXhwciBpbmxpbmUgYm9vbCBpc19wbGFpbl9zdHJpbmdfY2hhcmFjdGVyKGNoYXIgYykgewo+ ICsraW5saW5lIGJvb2wgaXNfcGxhaW5fc3RyaW5nX2NoYXJhY3RlcihjaGFyIGMpIHsKPiArwqDC oMKgwqAgLy8gcmV0dXJuIGMgPj0gMHgyMCAmJiBjIDw9IDB4N2YgJiYgYyAhPSAweDIyICYmIGMg IT0gMHg1YzsKPiArwqDCoMKgwqAgcmV0dXJuIChnbG9iYWxzOjpwYXJzZV9mbGFnc1tzdGF0aWNf Y2FzdDx1bnNpZ25lZCBjaGFyPihjKV0gJgo+IDEpICE9IDA7Cj4gKyB9Cj4gKyAKPiArLWNvbnN0 ZXhwciBpbmxpbmUgYm9vbCBpc193aGl0ZXNwYWNlKGNoYXIgYykgewo+ICsraW5saW5lIGJvb2wg aXNfd2hpdGVzcGFjZShjaGFyIGMpIHsKPiArwqDCoMKgwqAgLy8gcmV0dXJuIGMgPT0gJ1xyJyB8 fCBjID09ICdcbicgfHwgYyA9PSAnXHQnIHx8IGMgPT0gJyAnOwo+ICvCoMKgwqDCoCByZXR1cm4g KGdsb2JhbHM6OnBhcnNlX2ZsYWdzW3N0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGMpXSAmCj4g MikgIT0gMDsKPiArIH0KU2luY2UgdGhpcyBmaXhlcyBhbiBlcnJvciB0aGF0IG9jY3VycyB3aGVu IGJ1aWxkaW5nIHdpdGggR0NDIDEwLCB0aGUKcGF0Y2ggbmFtZSBzaG91bGQgcmVmbGVjdCB0aGF0 LCBlLmcuICJzYWpzb24tYnVpbGQtd2l0aC1nY2MxMCIgKHdoZXRoZXIKeW91IGluY2x1ZGUgb3Ig ZG8gbm90IGluY2x1ZGUgYSBkYXNoIGJldHdlZW4gZ2NjIGFuZCAxMCBkb2Vzbid0IHNlZW0gdG8K bWF0dGVyKS4KCkNoZWVycwoK From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:28:04 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:28:04 +0000 Received: from localhost ([127.0.0.1]:52284 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcLU-0004lS-3i for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:28:04 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:32599) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcLR-0004l2-Mc for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:28:02 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhTnT75Tyz1LXt2; Tue, 4 Oct 2022 09:27:57 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MhTnT75Tyz1LXt2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664868478; bh=11CeZN0z2cJh3L8LpMt7n3v+sCRQ606LuypOzGqnTGI=; h=Subject:From:To:Date:In-Reply-To:References:From; b=IKL0dWZ8VciRUyi6RE8nZlgwvJMx8x9u/ENmoTQGy+eA1SLoD3gZdQZDD/CR5fies gCp7XVQaFge40H06QW7ZdqQMQ47xSv5f71uDzAGaAUdsWaaiv6nCYpW48lVu3jwes+ Y4u290sdODnbQqF4PZqzzZkPkIS2rNw/UUeY4LdI= Message-ID: Subject: Re: [PATCH 04/11] gnu: Add tinydir. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:27:57 +0200 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtICh0aW55ZGlyKTogTmV3IHZhcmlhYmxlLgo+ IC0tLQo+IMKgZ251L3BhY2thZ2VzL2NwcC5zY20gfCAzOCArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKykKPiAK PiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NwcC5zY20gYi9nbnUvcGFja2FnZXMvY3BwLnNj bQo+IGluZGV4IDdiZmEzZDZjZGYuLjQ4MTlmMzYwNTIgMTAwNjQ0Cj4gLS0tIGEvZ251L3BhY2th Z2VzL2NwcC5zY20KPiArKysgYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+IEBAIC0yMDIwLDMgKzIw MjAsNDEgQEAgKGRlZmluZS1wdWJsaWMgc2Fqc29uCj4gwqDCoMKgwqDCoMKgIChkZXNjcmlwdGlv biAic2Fqc29uIGlzIGEgaGlnaC1wZXJmb3JtYW5jZSwgaW4tcGxhY2UgSlNPTgo+IHBhcnNlcgo+ IMKgaGVhZGVyLW9ubHkgbGlicmFyeS4iKQo+IMKgwqDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNl OmV4cGF0KSkpKQo+ICsKPiArKGRlZmluZS1wdWJsaWMgdGlueWRpcgo+ICvCoCAocGFja2FnZQo+ ICvCoMKgwqAgKG5hbWUgInRpbnlkaXIiKQo+ICvCoMKgwqAgKHZlcnNpb24gIjEuMi41IikKPiAr wqDCoMKgIChzb3VyY2UgKG9yaWdpbgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0 aG9kIGdpdC1mZXRjaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJl ZmVyZW5jZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJsICJo dHRwczovL2dpdGh1Yi5jb20vY3hvbmcvdGlueWRpciIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChjb21taXQgdmVyc2lvbikpKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIxbnBy Z2RmeDRpOHd6YzFpZHc2Y2hhbjRmamZhNzViNWxsOGtnaGRjMHEyMjc4cG55MjU5IikpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpKSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNuaXBwZXQgJyhkZWxldGUtZmlsZS1yZWN1 cnNpdmVseSAidGVzdHMvY2JlaGF2ZSIpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtl LWJ1aWxkLXN5c3RlbSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqAgKGxpc3QKPiAr wqDCoMKgwqDCoCA7OyBUZXN0cyByZXF1aXJlIGNiZWhhdmUgYW5kIHJsdXRpbAo+ICvCoMKgwqDC oMKgICM6dGVzdHM/ICNmClRoZW4gdGhvc2Ugc2hvdWxkIGJlIHBhY2thZ2VkLgo+ICvCoMKgwqDC oMKgICM6cGhhc2VzCj4gK8KgwqDCoMKgwqAgOzsgQnVpbGQgc2FtcGxlcyBpbnN0ZWFkIG9mIHRl c3RzCj4gK8KgwqDCoMKgwqAgI34obW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ2NoZGlyCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGxhbWJkYSBfIChjaGRpciAic2FtcGxlcyIpICN0KSkKPiArwqDCoMKgwqDC oMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2J1aWxkICdjaGRpci1iYWNrCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGxhbWJkYSBfIChjaGRpciAiLi4iKSAjdCkpCldlIGRvbid0IHR5cGljYWxseSBi dWlsZCBzYW1wbGVzLgo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKHJlcGxhY2UgJ2luc3RhbGwKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGluc3RhbGwtZmlsZSAidGlueWRpci5oIiAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dAo+ ICIvaW5jbHVkZSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkpCj4gK8Kg wqDCoCAoaG9tZS1wYWdlICJodHRwczovL2dpdGh1Yi5jb20vY3hvbmcvdGlueWRpciIpCj4gK8Kg wqDCoCAoc3lub3BzaXMgIkxpZ2h0d2VpZ2h0LCBwb3J0YWJsZSBhbmQgZWFzeSB0byBpbnRlZ3Jh dGUgQwo+IGRpcmVjdG9yeSBhbmQKPiArZmlsZSByZWFkZXIiKQo+ICvCoMKgwqAgKGRlc2NyaXB0 aW9uICJ0aW55ZGlyIGlzIGEgaGVhZGVyLW9ubHkgQyBsaWJyYXJ5IHRvIHBvcnRhYmx5Cj4gcmVh ZCBmaWxlcwo+ICthbmQgZGlyZWN0b3JpZXMuIikKQ3V0IGRvd24gb24gdGhlIGFkcy4KPiArwqDC oMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTIpKSkKCkNoZWVycwo= From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:42:49 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:42:49 +0000 Received: from localhost ([127.0.0.1]:52312 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcZl-00058s-6g for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:42:49 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:3687) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcZi-00058i-NY for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:42:47 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhV6S4Jlbz3wgB; Tue, 4 Oct 2022 09:42:40 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664869361; bh=tglmBOP8mxXyM1FXWJVBg+aVO8vbbRcnDSB0vL8ikV0=; h=Subject:From:To:Date:In-Reply-To:References; b=Wf7w2bQaqv255CUhW8xPdv8UnHmOFhsDKTkM465ST21uBr1cwkt9gT31l3ZKNfcg8 f+26rrEu6XzEUjRY2AuAuNQyx5tvl/vUIQSNyz5TZwgcP+r+xjZFttzau1oKJsirzL i8rQ1PyI1OlXMLXoAAfNv+JE8yGiIK8JYexFUaxI= Message-ID: <0577bbf625f88200f6cedab444262f92b3834820.camel@ist.tugraz.at> Subject: Re: [PATCH 05/11] gnu: Add optionparser. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:42:39 +0200 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtIChvcHRpb25wYXJzZXIpOiBOZXcgdmFyaWFi bGUuCj4gLS0tCj4gwqBnbnUvcGFja2FnZXMvY3BwLnNjbSB8IDUwCj4gKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiDCoDEgZmlsZSBjaGFuZ2VkLCA1MCBpbnNl cnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jcHAuc2NtIGIvZ251L3Bh Y2thZ2VzL2NwcC5zY20KPiBpbmRleCA0ODE5ZjM2MDUyLi5iMzAyMDUxMDllIDEwMDY0NAo+IC0t LSBhL2dudS9wYWNrYWdlcy9jcHAuc2NtCj4gKysrIGIvZ251L3BhY2thZ2VzL2NwcC5zY20KPiBA QCAtMjA1OCwzICsyMDU4LDUzIEBAIChkZWZpbmUtcHVibGljIHRpbnlkaXIKPiDCoMKgwqDCoCAo ZGVzY3JpcHRpb24gInRpbnlkaXIgaXMgYSBoZWFkZXItb25seSBDIGxpYnJhcnkgdG8gcG9ydGFi bHkKPiByZWFkIGZpbGVzCj4gwqBhbmQgZGlyZWN0b3JpZXMuIikKPiDCoMKgwqDCoCAobGljZW5z ZSBsaWNlbnNlOmJzZC0yKSkpCj4gKwo+ICsoZGVmaW5lLXB1YmxpYyBvcHRpb25wYXJzZXIKPiAr wqAgKHBhY2thZ2UKPiArwqDCoMKgIChuYW1lICJvcHRpb25wYXJzZXIiKQo+ICvCoMKgwqAgKHZl cnNpb24gIjEuNyIpCj4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKG1ldGhvZCB1cmwtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICh1cmkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ ICJtaXJyb3I6Ly9zb3VyY2Vmb3JnZS9vcHRpb25wYXJzZXIvb3B0aW9ucGFyc2VyLSIKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2 ZXJzaW9uICIudGFyLmd6IikpClRoZSBmb3JtYXR0dGVyIGRvZXNuJ3Qga25vdyB0aGlzLCBidXQg SSB0aGluayBpbiB0aGlzIGNhc2UgaXQgbWlnaHQgYmUKd2lzZXIgdG8gcHVsbCB0aGUgIm9wdGlv bnBhcnNlci0iIGRvd24gYSBsaW5lIG9uIHRoZSBzYW1lIG9uZSB3aXRoCnZlcnNpb24gIi50YXIu Z3oiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oAo+ICIwNGdmeHJkendhY2F5bmI4c2NzejZycjduaDY0bjZ5azZ3OWRoMnFkaHJ4dzRjYXFyMGRr IikpKSkKPiArwqDCoMKgIChidWlsZC1zeXN0ZW0gZ251LWJ1aWxkLXN5c3RlbSkKPiArwqDCoMKg IChhcmd1bWVudHMKPiArwqDCoMKgwqAgKGxpc3QKPiArwqDCoMKgwqDCoCAjOnBoYXNlcwo+ICvC oMKgwqDCoMKgICN+KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwo+ICvCoMKgwqDCoMKg wqDCoMKgwqAgKGRlbGV0ZSAnY29uZmlndXJlKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1i ZWZvcmUgJ2J1aWxkICdjaGRpcgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXyAo Y2hkaXIgInNyYyIpICN0KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdidWlsZAo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoaW52b2tlICJtYWtlIiAiLWoiIChudW1iZXItPnN0cmluZyAocGFyYWxsZWwtam9i LQo+IGNvdW50KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICJleGFtcGxlX2FyZyIgInRlc3RwYXJzZSIgInRlc3RwcmludHVzYWdlIgo+ICJ0ZXN0b2RyIgo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImV4YW1wbGUiKQoj Om1ha2UtZmxhZ3MgZXhpc3QuICBBbHNvLCB0aGlzIGlzIGEgYmFkIHdheSB0byBoaWRlIHRoYXQg eW91J3JlCm1pc3NpbmcgZG94eWdlbi4gCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0 KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdjaGVjawo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChsYW1iZGEqICgjOmtleSB0ZXN0cz8gIzphbGxvdy1vdGhlci1rZXlzKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaWYgdGVzdHM/Cj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGJlZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChpbnZva2UgIi4vZXhhbXBsZV9hcmciKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICIuL3Rlc3RwYXJzZSIpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgIi4vdGVzdHByaW50dXNhZ2UiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICIuL3Rlc3Rv ZHIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICIu L2V4YW1wbGUiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZm9ybWF0 ICN0ICJ0ZXN0IHN1aXRlIG5vdCBydW5+JSIpKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAocmVw bGFjZSAnaW5zdGFsbAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxlICJvcHRpb25wYXJzZXIuaCIgKHN0 cmluZy1hcHBlbmQgIyRvdXRwdXQKPiAiL2luY2x1ZGUiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAnaW5zdGFsbCAn Y2hkaXItYmFjawo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXyAoY2hkaXIgIi4u IikgI3QpKSkpKQpJJ20gcHJldHR5IHN1cmUgdGhpcyBzaG91bGRuJ3QgYmUgbmVlZGVkLgo+ICvC oMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9vcHRpb25wYXJzZXIuc291cmNlZm9yZ2UubmV0LyIp Cj4gK8KgwqDCoCAoc3lub3BzaXMgIkhlYWRlci1vbmx5IEMrKyBsaWJyYXJ5IHRvIHBhcnNlIGNv bW1hbmQgbGluZQo+IG9wdGlvbnMiKQo+ICvCoMKgwqAgKGRlc2NyaXB0aW9uICJUaGUgTGVhbiBN ZWFuIEMrKyBPcHRpb24gUGFyc2VyIGhhbmRsZXMgdGhlCj4gcHJvZ3JhbSdzCj4gK2NvbW1hbmQg bGluZSBhcmd1bWVudHMgKGFyZ2MsIGFyZ3YpLsKgIEl0IHN1cHBvcnRzIHRoZSBzaG9ydCBhbmQg bG9uZwo+IG9wdGlvbgo+ICtmb3JtYXRzIG9mIGdldG9wdCgpLCBnZXRvcHRfbG9uZygpIGFuZCBn ZXRvcHRfbG9uZ19vbmx5KCkgYnV0IGhhcyBhCj4gbW9yZQo+ICtjb252ZW5pZW50IGludGVyZmFj ZS4iKQpBcyBhbHdheXMsIGN1dCBkb3duIG9uIHRoZSBhZHMgOikKPiArwqDCoMKgIChsaWNlbnNl IGxpY2Vuc2U6ZXhwYXQpKSkKCkNoZWVycwo= From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:49:20 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:49:20 +0000 Received: from localhost ([127.0.0.1]:52329 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcg2-0005L4-TV for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:49:20 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:29774) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcfz-0005Ks-Ix for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:49:17 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhVFy5Cqfz1LXt4; Tue, 4 Oct 2022 09:49:10 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MhVFy5Cqfz1LXt4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664869750; bh=0dhdiRYV2CafEK6vptVaVw4qXdEBOzUS1qM8xpT2fFc=; h=Subject:From:To:Date:In-Reply-To:References:From; b=DeSOu1NeRhjy3m/3cZaY2+vDRPgxmXSAywqeOXGtoPKFblT5GIriByyuExpbJlAMC BBvmZRV3/D+Br1qFWW42/OtCrCx5gBRhpcBvfs4UxepxHsBwr/jAOWubqIk40XLHL4 dRJBmCDnVJbof378epp8NYrah99WJysXgebqg3Ok= Message-ID: <7cc7f87c99df0b7f9701779fdae7b6c4d888c2ee.camel@ist.tugraz.at> Subject: Re: [PATCH 06/11] gnu: Add gemmi. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:49:10 +0200 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIChnZW1taSk6IE5ldyB2YXJpYWJs ZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAxMjIgKysrKysrKysrKysKPiDCoC4uLi9wYXRjaGVzL2dl bW1pLWZpeC1zYWpzb24tdHlwZXMucGF0Y2jCoMKgwqDCoMKgIHzCoCAxMSArCj4gwqAuLi4vc2Fq c29uLWZvci1nZW1taS1udW1iZXJzLWFzLXN0cmluZ3MucGF0Y2ggfCAxOTUKPiArKysrKysrKysr KysrKysrKysKPiDCoDMgZmlsZXMgY2hhbmdlZCwgMzI4IGluc2VydGlvbnMoKykKPiDCoGNyZWF0 ZSBtb2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hlcy9nZW1taS1maXgtc2Fqc29uLXR5cGVz LnBhdGNoCj4gwqBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29u LWZvci1nZW1taS1udW1iZXJzLWFzLQo+IHN0cmluZ3MucGF0Y2gKPiAKPiBkaWZmIC0tZ2l0IGEv Z251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ IGluZGV4IGM1MTc2MTBmZTguLmY4ZmQ4NTgxNGYgMTAwNjQ0Cj4gLS0tIGEvZ251L3BhY2thZ2Vz L2NoZW1pc3RyeS5zY20KPiArKysgYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IEBAIC02 LDYgKzYsNyBAQAo+IMKgOzs7IENvcHlyaWdodCDCqSAyMDIwIEJqw7ZybiBIw7ZmbGluZwo+IDxi am9lcm4uaG9lZmxpbmdAYmpvZXJuaG9lZmxpbmcuZGU+Cj4gwqA7OzsgQ29weXJpZ2h0IMKpIDIw MjAgVmluY2VudCBMZWdvbGwgPHZpbmNlbnQubGVnb2xsQGdtYWlsLmNvbT4KPiDCoDs7OyBDb3B5 cmlnaHQgwqkgMjAyMSBSaWNhcmRvIFd1cm11cyA8cmVrYWRvQGVsZXBobHkubmV0Pgo+ICs7Ozsg Q29weXJpZ2h0IMKpIDIwMjIgRGF2aWQgRWxzaW5nIDxkYXZpZC5lbHNpbmdAcG9zdGVvLm5ldD4K PiDCoDs7Owo+IMKgOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBHdWl4Lgo+IMKgOzs7Cj4g QEAgLTIzLDYgKzI0LDcgQEAKPiDCoDs7OyBhbG9uZyB3aXRoIEdOVSBHdWl4LsKgIElmIG5vdCwg c2VlCj4gPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lgo+IMKgCj4gwqAoZGVmaW5lLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGdl eHApCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggcGFja2FnZXMpCj4gwqDCoCAjOnVzZS1tb2R1 bGUgKGd1aXggdXRpbHMpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKChndWl4IGxpY2Vuc2VzKSAjOnBy ZWZpeCBsaWNlbnNlOikKPiBAQCAtMzUsNiArMzcsNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBh Y2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJvb3N0 KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlY2spCj4gwqDCoCAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyBjb21wcmVzc2lvbikKPiArwqAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgY3BwKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZG9jdW1lbnRh dGlvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZvbnR1dGlscykKPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsKQo+IEBAIC01MCw4ICs1MywxMCBAQCAoZGVm aW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIHF0KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc2VyaWFs aXphdGlvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNwaGlueCkKPiArwqAg Izp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3RiKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgeG1sKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBjbWFr ZSkKPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBjb3B5KQo+IMKgwqAgIzp1 c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBnbnUpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1 aXggYnVpbGQtc3lzdGVtIHB5dGhvbikpCj4gwqAKPiBAQCAtNTY2LDMgKzU3MSwxMjAgQEAgKGRl ZmluZS1wdWJsaWMgcHl0aG9uLXB5bW9sCj4gwqB1c2VkIHRvIHByZXBhcmUgcHVibGljYXRpb24t cXVhbGl0eSBmaWd1cmVzLCB0byBzaGFyZSBpbnRlcmFjdGl2ZQo+IHJlc3VsdHMgd2l0aAo+IMKg eW91ciBjb2xsZWFndWVzLCBvciB0byBnZW5lcmF0ZSBwcmUtcmVuZGVyZWQgYW5pbWF0aW9ucy4i KQo+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKPiArCj4gKyhkZWZpbmUgc2Fq c29uLWZvci1nZW1taQo+ICvCoCAocGFja2FnZS9pbmhlcml0IHNhanNvbgo+ICvCoMKgwqAgKG5h bWUgInNhanNvbi1mb3ItZ2VtbWkiKQo+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbmhlcml0IChwYWNrYWdlLXNvdXJjZSBzYWpzb24pKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocGF0Y2hlcyAoY29ucwo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0Y2gKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJzYWpzb24tZm9y LWdlbW1pLW51bWJlcnMtYXMtCj4gc3RyaW5ncy5wYXRjaCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG9yaWdpbi1wYXRjaGVzIChwYWNrYWdlLXNv dXJjZSBzYWpzb24pKSkpKSkKPiArwqDCoMKgIChidWlsZC1zeXN0ZW0gY29weS1idWlsZC1zeXN0 ZW0pCj4gK8KgwqDCoCAoYXJndW1lbnRzCj4gK8KgwqDCoMKgIChsaXN0Cj4gK8KgwqDCoMKgwqAg IzppbnN0YWxsLXBsYW4KPiArwqDCoMKgwqDCoCAjficoKCJpbmNsdWRlL3NhanNvbi5oIiAiaW5j bHVkZS8iKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKCJpbmNsdWRlL3NhanNvbl9vc3RyZWFtLmgi ICJpbmNsdWRlLyIpKSkpKSkKVGhlc2UgYXJlIHRlY2huaWNhbGx5IHR3byBwYWNrYWdlczsgdGhl cmVmb3JlIHR3byBwYXRjaGVzLgpZb3Ugc2hvdWxkIHJldXNlIGFzIG11Y2ggYXMgeW91IGNhbiBm cm9tIHNhanNvbi4gIFNpbmNlIHRoaXMgcGF0Y2ggaXMKbGlrZWx5IHRvIGJyZWFrIHRlc3RzLCB5 b3UgbWlnaHQgdXNlIGFuIGFwcHJvcHJpYXRlbHkgYW5ub3RhdGVkCiM6dGVzdHM/ICNmIHRvIGNv bnZleSB0aGlzIGluZm9ybWF0aW9uLgoKPiArKGRlZmluZS1wdWJsaWMgZ2VtbWkKPiArwqAgKHBh Y2thZ2UKPiArwqDCoMKgIChuYW1lICJnZW1taSIpCj4gK8KgwqDCoCAodmVyc2lvbiAiMC41Ljci KQo+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChtZXRob2QgZ2l0LWZldGNoKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJpIChn aXQtcmVmZXJlbmNlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1 cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZWN0LWdlbW1pL2dlbW1pIikKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIg dmVyc2lvbikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0 LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c2hhMjU2Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKPiAiMDBrbTVxNzI2YnNscnc3eGJmd2IzZjNtcnNrMTlx YmltZm5sM2h2cjR3aTF5M3o4aTE4YSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo cGF0Y2hlcwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0Y2hlcyAi Z2VtbWktZml4LXNhanNvbi10eXBlcy5wYXRjaCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0aWxzKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChzbmlwcGV0Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJyhiZWdp bgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1 cnNpdmVseQo+ICJpbmNsdWRlL2dlbW1pL3RoaXJkX3BhcnR5IikKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInRoaXJkX3BhcnR5 IikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkKPiArwqDCoMKg IChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQo+ICvCoMKgwqAgKG5hdGl2ZS1pbnB1 dHMgKGxpc3Qgb3B0aW9ucGFyc2VyIHB5YmluZDExKSkKPiArwqDCoMKgIChwcm9wYWdhdGVkLWlu cHV0cwo+ICvCoMKgwqDCoCAobGlzdCBmYXN0LWZsb2F0Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg IHBvY2tldGZmdAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBzYWpzb24tZm9yLWdlbW1pCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgIHN0Yi1zcHJpbnRmCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHBl Z3RsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHRpbnlkaXIpKQpSZWZyYWluIGZyb20gcHJvcGFn YXRpbmcgaW5wdXRzLgo+ICvCoMKgwqAgKGlucHV0cyAobGlzdCB6bGliIHB5dGhvbikpCj4gK8Kg wqDCoCAob3V0cHV0cyAnKCJvdXQiICJiaW4iICJweXRob24iKSkKPiArwqDCoMKgIChhcmd1bWVu dHMKVGhlIHVzdWFsIHNlcXVlbmNlIGlzIG91dHB1dHMsIGJ1aWxkLXN5c3RlbSwgYXJndW1lbnRz LCAqaW5wdXRzLgo+ICvCoMKgwqDCoCAobGlzdAo+ICvCoMKgwqDCoMKgICM6Y29uZmlndXJlLWZs YWdzCj4gK8KgwqDCoMKgwqAgI34obGV0KiAoKHB5dGhvbi1saWIKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICMkb3V0cHV0OnB5dGhvbiAiL2xpYi9weXRob24iCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICMkKHZlcnNpb24tbWFqb3IrbWlub3IgKHBhY2thZ2UtdmVyc2lv biBweXRob24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiL3NpdGUtcGFj a2FnZXMiKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAobGlzdCAiLURVU0VfUFlUSE9OPU9OIgo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIi1EUFlUSE9O X0lOU1RBTExfRElSPSIgcHl0aG9uLWxpYikpKQo+ICvCoMKgwqDCoMKgICM6cGhhc2VzCj4gK8Kg wqDCoMKgwqAgI34obW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCj4gK8KgwqDCoMKgwqDC oMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ3BhdGNoLWluY2x1ZGVzCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJz dGl0dXRlKiAiaW5jbHVkZS9nZW1taS9zcHJpbnRmLmhwcCIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICgoIjxzdGIvc3RiX3NwcmludGYuaD4iKSAiPHN0Yl9zcHJpbnRmLmg+Iikp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiaW5jbHVkZS9nZW1t aS9kaXJ3YWxrLmhwcCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIlwidGhp cmRfcGFydHkvdGlueWRpci5oXCIiKSAiPHRpbnlkaXIuaD4iKSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJpbmNsdWRlL2dlbW1pL2NpZi5ocHAiCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJcInRoaXJkX3BhcnR5L3Rhby9wZWd0bC5ocHBc IiIpCj4gIjx0YW8vcGVndGwuaHBwPiIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvanNvbi5ocHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoKCJcInRoaXJkX3BhcnR5L3NhanNvbi5oXCIiKSAiPHNhanNvbi5oPiIp KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogInB5dGhvbi9nZW1t aS5jcHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJcImdlbW1pL3RoaXJk X3BhcnR5L3Rhby9wZWd0bC9wYXJzZV9lcnJvci5ocHBcIiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICI8dGFvL3BlZ3RsL3BhcnNlX2Vycm9yLmhwcD4iKSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICcoImluY2x1ZGUvZ2VtbWkvYXRvZi5o cHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICJpbmNsdWRlL2dlbW1pL251bWIuaHBwIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICgoIlwidGhpcmRfcGFydHkvZmFzdF9mbG9hdC5oXCIiKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiPGZhc3RfZmxvYXQvZmFzdF9mbG9hdC5oPiIpKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvZm91 cmllci5ocHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJcInRoaXJkX3Bh cnR5L3BvY2tldGZmdF9oZHJvbmx5LmhcIiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICI8cG9ja2V0ZmZ0X2hkcm9ubHkuaD4iKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAncGF0Y2gtaW5jbHVk ZXMgJ3BhdGNoLWNpZgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvY2lmLmhw cCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoKHN0cmluZy1hcHBlbmQKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJeLip1c2luZyBhbmFseXplX3Qg PSBwZWd0bDo6YW5hbHlzaXM6OmdlbmVyaWMiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAiPHBlZ3RsOjphbmFseXNpczo6cnVsZV90eXBlOjpBTlk+Oy4qJCIpKSAiIikK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIlRBT0NQUF9QRUdUTF8iKSAiVEFP X1BFR1RMXyIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ2NoYW5nZS1iaW4tcHJlZml4Cj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChzdWJzdGl0dXRlKiAiQ01ha2VMaXN0cy50eHQiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoKCJpbnN0YWxsXFwoVEFSR0VUUyBwcm9ncmFtIERFU1RJTkFUSU9OIGJpblxcKSIp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImluc3RhbGwoVEFSR0VUUyBwcm9ncmFt IERFU1RJTkFUSU9OICIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG91 dHB1dDpiaW4gIi9iaW4pIikpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4g K8KgwqDCoMKgwqDCoMKgwqDCoCAocmVwbGFjZSAnY2hlY2sKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAobGFtYmRhKiAoIzprZXkgdGVzdHM/ICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHdoZW4gdGVzdHM/Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAod2l0aC1kaXJlY3RvcnktZXhjdXJzaW9uICIuLi9zb3VyY2UiCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNldGVudiAiUFlUSE9OUEFUSCIgIi4uL2J1 aWxkIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICJweXRo b24zIiAiLW0iICJ1bml0dGVzdCIgImRpc2NvdmVyIiAiLXYiCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICItcyIgInRlc3RzIikpKSkpKSkpCj4g K8KgwqDCoCAoaG9tZS1wYWdlICJodHRwczovL2dlbW1pLnJlYWR0aGVkb2NzLmlvL2VuL2xhdGVz dC8iKQo+ICvCoMKgwqAgKHN5bm9wc2lzICJNYWNyb21vbGVjdWxhciBjcnlzdGFsbG9ncmFwaHkg bGlicmFyeSBhbmQKPiB1dGlsaXRpZXMiKQo+ICvCoMKgwqAgKGRlc2NyaXB0aW9uICJHRU1NSSBp cyBhIEMrKyBsaWJyYXJ5IGZvciBtYWNyb21vbGVjdWxhcgo+IGNyeXN0YWxsb2dyYXBoeS4KPiAr SXQgY2FuIGJlIHVzZWQgZm9yIHdvcmtpbmcgd2l0aAo+ICtAZW51bWVyYXRlCj4gK0BpdGVtIG1h Y3JvbW9sZWN1bGFyIG1vZGVscyAoY29udGVudCBvZiBQREIsIFBEQngvbW1DSUYgYW5kIG1tSlNP Tgo+IGZpbGVzKSwKPiArQGl0ZW0gcmVmaW5lbWVudCByZXN0cmFpbnRzIChDSUYgZmlsZXMpLAo+ ICtAaXRlbSByZWZsZWN0aW9uIGRhdGEgKE1UWiBhbmQgbW1DSUYgZm9ybWF0cyksCj4gK0BpdGVt IGRhdGEgb24gYSAzRCBncmlkIChlbGVjdHJvbiBkZW5zaXR5IG1hcHMsIG1hc2tzLCBNUkMvQ0NQ NAo+IGZvcm1hdCkKPiArQGl0ZW0gY3J5c3RhbGxvZ3JhcGhpYyBzeW1tZXRyeS4KPiArQGVuZCBl bnVtZXJhdGUiKQo+ICvCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTptcGwyLjApKSkKPiBkaWZmIC0t Z2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvZ2VtbWktZml4LXNhanNvbi10eXBlcy5wYXRjaAo+ IGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvZ2VtbWktZml4LXNhanNvbi10eXBlcy5wYXRjaAo+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMC4uOTYzM2RkYWM4Ygo+IC0tLSAv ZGV2L251bGwKPiArKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9nZW1taS1maXgtc2Fqc29uLXR5 cGVzLnBhdGNoCj4gQEAgLTAsMCArMSwxMSBAQAo+ICtkaWZmIC11ciBhL2luY2x1ZGUvZ2VtbWkv anNvbi5ocHAgYi9pbmNsdWRlL2dlbW1pL2pzb24uaHBwCj4gKy0tLSBhL2luY2x1ZGUvZ2VtbWkv anNvbi5ocHAKPiArKysrIGIvaW5jbHVkZS9nZW1taS9qc29uLmhwcAo+ICtAQCAtMzgsNiArMzgs NyBAQAo+ICsgCj4gKyBpbmxpbmUgc3RkOjpzdHJpbmcgYXNfY2lmX3ZhbHVlKGNvbnN0IHNhanNv bjo6dmFsdWUmIHZhbCkgewo+ICvCoMKgIHN3aXRjaCAodmFsLmdldF90eXBlKCkpIHsKPiArK8Kg wqDCoCBjYXNlIHNhanNvbjo6VFlQRV9JTlRFR0VSOgo+ICvCoMKgwqDCoCBjYXNlIHNhanNvbjo6 VFlQRV9ET1VCTEU6Cj4gK8KgwqDCoMKgwqDCoCByZXR1cm4gdmFsLmFzX3N0cmluZygpOwo+ICvC oMKgwqDCoCBjYXNlIHNhanNvbjo6VFlQRV9OVUxMOgo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2Fn ZXMvcGF0Y2hlcy9zYWpzb24tZm9yLWdlbW1pLW51bWJlcnMtYXMtCj4gc3RyaW5ncy5wYXRjaCBi L2dudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNvbi1mb3ItZ2VtbWktbnVtYmVycy1hcy0KPiBzdHJp bmdzLnBhdGNoCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwLi42ZjQ3 NmI4NTgzCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNv bi1mb3ItZ2VtbWktbnVtYmVycy1hcy1zdHJpbmdzLnBhdGNoCj4gQEAgLTAsMCArMSwxOTUgQEAK PiArUGF0Y2ggZm9yIGdlbW1pOiBLZWVwIG51bWJlcnMgaW4gSlNPTiBmaWxlIGFzIHN0cmluZ3Mu Cj4gKwo+ICtBZGFwdGVkIGZyb20gdGhpcyBjb21taXQgb2YgdGhlIGJ1bmRsZWQgZm9yayBvZiBz YWpzb24gaW4gZ2VtbWk6Cj4gKwo+IGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZWN0LWdlbW1pL2dl bW1pL2NvbW1pdC9mY2NiY2E0ZjYwNDAzNjRiYTcwODYxM2UKPiAxNDI5YzIyNTE4NzIyNDBkCj4g Kwo+ICtkaWZmIC11ciBhL2luY2x1ZGUvc2Fqc29uLmggYi9pbmNsdWRlL3NhanNvbi5oCj4gKy0t LSBhL2luY2x1ZGUvc2Fqc29uLmgKPiArKysrIGIvaW5jbHVkZS9zYWpzb24uaAo+ICtAQCAtNDEx LDQzICs0MTEsNiBAQAo+ICsgfTsKPiArIH0gLy8gbmFtZXNwYWNlIGludGVybmFsCj4gKyAKPiAr LW5hbWVzcGFjZSBpbnRlZ2VyX3N0b3JhZ2Ugewo+ICstZW51bSB7IHdvcmRfbGVuZ3RoID0gMSB9 Owo+ICstCj4gKy1pbmxpbmUgaW50IGxvYWQoY29uc3Qgc2l6ZV90KiBsb2NhdGlvbikgewo+ICst wqDCoMKgIGludCB2YWx1ZTsKPiArLcKgwqDCoCBtZW1jcHkoJnZhbHVlLCBsb2NhdGlvbiwgc2l6 ZW9mKHZhbHVlKSk7Cj4gKy3CoMKgwqAgcmV0dXJuIHZhbHVlOwo+ICstfQo+ICstCj4gKy1pbmxp bmUgdm9pZCBzdG9yZShzaXplX3QqIGxvY2F0aW9uLCBpbnQgdmFsdWUpIHsKPiArLcKgwqDCoCAv LyBOT1RFOiBNb3N0IG1vZGVybiBjb21waWxlcnMgb3B0aW1pemUgYXdheSB0aGlzIGNvbnN0YW50 LXNpemUKPiArLcKgwqDCoCAvLyBtZW1jcHkgaW50byBhIHNpbmdsZSBpbnN0cnVjdGlvbi4gSWYg YW55IGRvbid0LCBhbmQgdHJlYXQKPiArLcKgwqDCoCAvLyBwdW5uaW5nIHRocm91Z2ggYSB1bmlv biBhcyBsZWdhbCwgdGhleSBjYW4gYmUgc3BlY2lhbC1jYXNlZC4KPiArLcKgwqDCoCBzdGF0aWNf YXNzZXJ0KAo+ICstwqDCoMKgwqDCoMKgwqAgc2l6ZW9mKHZhbHVlKSA8PSBzaXplb2YoKmxvY2F0 aW9uKSwKPiArLcKgwqDCoMKgwqDCoMKgICJzaXplX3QgbXVzdCBub3QgYmUgc21hbGxlciB0aGFu IGludCIpOwo+ICstwqDCoMKgIG1lbWNweShsb2NhdGlvbiwgJnZhbHVlLCBzaXplb2YodmFsdWUp KTsKPiArLX0KPiArLX0gLy8gbmFtZXNwYWNlIGludGVnZXJfc3RvcmFnZQo+ICstCj4gKy1uYW1l c3BhY2UgZG91YmxlX3N0b3JhZ2Ugewo+ICstZW51bSB7IHdvcmRfbGVuZ3RoID0gc2l6ZW9mKGRv dWJsZSkgLyBzaXplb2Yoc2l6ZV90KSB9Owo+ICstCj4gKy1pbmxpbmUgZG91YmxlIGxvYWQoY29u c3Qgc2l6ZV90KiBsb2NhdGlvbikgewo+ICstwqDCoMKgIGRvdWJsZSB2YWx1ZTsKPiArLcKgwqDC oCBtZW1jcHkoJnZhbHVlLCBsb2NhdGlvbiwgc2l6ZW9mKGRvdWJsZSkpOwo+ICstwqDCoMKgIHJl dHVybiB2YWx1ZTsKPiArLX0KPiArLQo+ICstaW5saW5lIHZvaWQgc3RvcmUoc2l6ZV90KiBsb2Nh dGlvbiwgZG91YmxlIHZhbHVlKSB7Cj4gKy3CoMKgwqAgLy8gTk9URTogTW9zdCBtb2Rlcm4gY29t cGlsZXJzIG9wdGltaXplIGF3YXkgdGhpcyBjb25zdGFudC1zaXplCj4gKy3CoMKgwqAgLy8gbWVt Y3B5IGludG8gYSBzaW5nbGUgaW5zdHJ1Y3Rpb24uIElmIGFueSBkb24ndCwgYW5kIHRyZWF0Cj4g Ky3CoMKgwqAgLy8gcHVubmluZyB0aHJvdWdoIGEgdW5pb24gYXMgbGVnYWwsIHRoZXkgY2FuIGJl IHNwZWNpYWwtY2FzZWQuCj4gKy3CoMKgwqAgbWVtY3B5KGxvY2F0aW9uLCAmdmFsdWUsIHNpemVv Zihkb3VibGUpKTsKPiArLX0KPiArLX0gLy8gbmFtZXNwYWNlIGRvdWJsZV9zdG9yYWdlCj4gKy0K PiArIC8vLyBSZXByZXNlbnRzIGEgSlNPTiB2YWx1ZS7CoCBGaXJzdCwgY2FsbCBnZXRfdHlwZSgp IHRvIGNoZWNrIGl0cwo+IHR5cGUsCj4gKyAvLy8gd2hpY2ggZGV0ZXJtaW5lcyB3aGljaCBtZXRo b2RzIGFyZSBhdmFpbGFibGUuCj4gKyAvLy8KPiArQEAgLTU4NSw3MCArNTQ4LDEwIEBACj4gK8Kg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGxlbmd0aDsKPiArwqDCoMKgwqAgfQo+ICsgCj4gKy3CoMKg wqAgLy8vIElmIGEgbnVtZXJpYyB2YWx1ZSB3YXMgcGFyc2VkIGFzIGEgMzItYml0IGludGVnZXIs IHJldHVybnMKPiBpdC4KPiArLcKgwqDCoCAvLy8gT25seSBsZWdhbCBpZiBnZXRfdHlwZSgpIGlz IFRZUEVfSU5URUdFUi4KPiArLcKgwqDCoCBpbnQgZ2V0X2ludGVnZXJfdmFsdWUoKSBjb25zdCB7 Cj4gKy3CoMKgwqDCoMKgwqDCoCBhc3NlcnRfdGFnKHRhZzo6aW50ZWdlcik7Cj4gKy3CoMKgwqDC oMKgwqDCoCByZXR1cm4gaW50ZWdlcl9zdG9yYWdlOjpsb2FkKHBheWxvYWQpOwo+ICstwqDCoMKg IH0KPiArLQo+ICstwqDCoMKgIC8vLyBJZiBhIG51bWVyaWMgdmFsdWUgd2FzIHBhcnNlZCBhcyBh IGRvdWJsZSwgcmV0dXJucyBpdC4KPiArLcKgwqDCoCAvLy8gT25seSBsZWdhbCBpZiBnZXRfdHlw ZSgpIGlzIFRZUEVfRE9VQkxFLgo+ICstwqDCoMKgIGRvdWJsZSBnZXRfZG91YmxlX3ZhbHVlKCkg Y29uc3Qgewo+ICstwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZyh0YWc6OmRvdWJsZV8pOwo+ICst wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGRvdWJsZV9zdG9yYWdlOjpsb2FkKHBheWxvYWQpOwo+ICst wqDCoMKgIH0KPiArLQo+ICstwqDCoMKgIC8vLyBSZXR1cm5zIGEgbnVtZXJpYyB2YWx1ZSBhcyBh IGRvdWJsZS1wcmVjaXNpb24gZmxvYXQuCj4gKy3CoMKgwqAgLy8vIE9ubHkgbGVnYWwgaWYgZ2V0 X3R5cGUoKSBpcyBUWVBFX0lOVEVHRVIgb3IgVFlQRV9ET1VCTEUuCj4gKy3CoMKgwqAgZG91Ymxl IGdldF9udW1iZXJfdmFsdWUoKSBjb25zdCB7Cj4gKy3CoMKgwqDCoMKgwqDCoCBhc3NlcnRfdGFn XzIodGFnOjppbnRlZ2VyLCB0YWc6OmRvdWJsZV8pOwo+ICstwqDCoMKgwqDCoMKgwqAgaWYgKHZh bHVlX3RhZyA9PSB0YWc6OmludGVnZXIpIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0 dXJuIGdldF9pbnRlZ2VyX3ZhbHVlKCk7Cj4gKy3CoMKgwqDCoMKgwqDCoCB9IGVsc2Ugewo+ICst wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gZ2V0X2RvdWJsZV92YWx1ZSgpOwo+ICstwqDC oMKgwqDCoMKgwqAgfQo+ICstwqDCoMKgIH0KPiArLQo+ICstwqDCoMKgIC8vLyBSZXR1cm5zIHRy dWUgYW5kIHdyaXRlcyB0byB0aGUgb3V0cHV0IGFyZ3VtZW50IGlmIHRoZQo+IG51bWVyaWMgdmFs dWUKPiArLcKgwqDCoCAvLy8gZml0cyBpbiBhIDUzLWJpdCBpbnRlZ2VyLsKgIFRoaXMgaXMgdXNl ZnVsIGZvciB0aW1lc3RhbXBzCj4gYW5kIG90aGVyCj4gKy3CoMKgwqAgLy8vIHNpdHVhdGlvbnMg d2hlcmUgaW50ZWdyYWwgdmFsdWVzIHdpdGggZ3JlYXRlciB0aGFuIDMyLWJpdAo+IHByZWNpc2lv bgo+ICstwqDCoMKgIC8vLyBhcmUgdXNlZCwgYXMgNjQtYml0IHZhbHVlcyBhcmUgbm90IHVuZGVy c3Rvb2QgYnkgYWxsIEpTT04KPiArLcKgwqDCoCAvLy8gaW1wbGVtZW50YXRpb25zIG9yIGxhbmd1 YWdlcy4KPiArLcKgwqDCoCAvLy8gUmV0dXJucyBmYWxzZSBpZiB0aGUgdmFsdWUgaXMgbm90IGFu IGludGVnZXIgb3Igbm90IGluCj4gcmFuZ2UuCj4gKy3CoMKgwqAgLy8vIE9ubHkgbGVnYWwgaWYg Z2V0X3R5cGUoKSBpcyBUWVBFX0lOVEVHRVIgb3IgVFlQRV9ET1VCTEUuCj4gKy3CoMKgwqAgYm9v bCBnZXRfaW50NTNfdmFsdWUoaW50NjRfdCogb3V0KSBjb25zdCB7Cj4gKy3CoMKgwqDCoMKgwqDC oCAvLyBNYWtlIHN1cmUgdGhlIG91dHB1dCB2YXJpYWJsZSBpcyBhbHdheXMgZGVmaW5lZCB0byBh dm9pZAo+IGFueQo+ICstwqDCoMKgwqDCoMKgwqAgLy8gcG9zc2libGUgc2l0dWF0aW9uIGxpa2UK PiArLcKgwqDCoMKgwqDCoMKgIC8vCj4gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vY2hhZGF1c3Rp bi8yYzI0OWNiODUwNjE5ZGRlYzA1YjIzY2E0MmNmN2ExOAo+ICstwqDCoMKgwqDCoMKgwqAgKm91 dCA9IDA7Cj4gKy0KPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWdfMih0YWc6OmludGVnZXIs IHRhZzo6ZG91YmxlXyk7Cj4gKy3CoMKgwqDCoMKgwqDCoCBzd2l0Y2ggKHZhbHVlX3RhZykgewo+ ICstwqDCoMKgwqDCoMKgwqAgY2FzZSB0YWc6OmludGVnZXI6Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgICpvdXQgPSBnZXRfaW50ZWdlcl92YWx1ZSgpOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCByZXR1cm4gdHJ1ZTsKPiArLcKgwqDCoMKgwqDCoMKgIGNhc2UgdGFnOjpkb3VibGVfOiB7 Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRvdWJsZSB2ID0gZ2V0X2RvdWJsZV92YWx1ZSgp Owo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAodiA8IC0oMUxMIDw8IDUzKSB8fCB2ID4g KDFMTCA8PCA1MykpIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4g ZmFsc2U7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiArLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgaW50NjRfdCBhc19pbnQgPSBzdGF0aWNfY2FzdDxpbnQ2NF90Pih2KTsKPiArLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgaWYgKGFzX2ludCAhPSB2KSB7Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGZhbHNlOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9 Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgICpvdXQgPSBhc19pbnQ7Cj4gKy3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHJldHVybiB0cnVlOwo+ICstwqDCoMKgwqDCoMKgwqAgfQo+ICstwqDCoMKg wqDCoMKgwqAgZGVmYXVsdDoKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIGZhbHNl Owo+ICstwqDCoMKgwqDCoMKgwqAgfQo+ICstwqDCoMKgIH0KPiArLQo+ICvCoMKgwqDCoCAvLy8g UmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuCj4gK8KgwqDCoMKgIC8vLyBPbmx5IGxl Z2FsIGlmIGdldF90eXBlKCkgaXMgVFlQRV9TVFJJTkcuCj4gK8KgwqDCoMKgIHNpemVfdCBnZXRf c3RyaW5nX2xlbmd0aCgpIGNvbnN0IHsKPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWcodGFn OjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5nLCB0 YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHBh eWxvYWRbMV0gLSBwYXlsb2FkWzBdOwo+ICvCoMKgwqDCoCB9Cj4gKyAKPiArQEAgLTY1OSw3ICs1 NjIsNyBAQAo+ICvCoMKgwqDCoCAvLy8gZW1iZWRkZWQgTlVMcy4KPiArwqDCoMKgwqAgLy8vIE9u bHkgbGVnYWwgaWYgZ2V0X3R5cGUoKSBpcyBUWVBFX1NUUklORy4KPiArwqDCoMKgwqAgY29uc3Qg Y2hhciogYXNfY3N0cmluZygpIGNvbnN0IHsKPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWco dGFnOjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5n LCB0YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJu IHRleHQgKyBwYXlsb2FkWzBdOwo+ICvCoMKgwqDCoCB9Cj4gKyAKPiArQEAgLTY2Nyw3ICs1NzAs NyBAQAo+ICvCoMKgwqDCoCAvLy8gUmV0dXJucyBhIHN0cmluZydzIHZhbHVlIGFzIGEgc3RkOjpz dHJpbmcuCj4gK8KgwqDCoMKgIC8vLyBPbmx5IGxlZ2FsIGlmIGdldF90eXBlKCkgaXMgVFlQRV9T VFJJTkcuCj4gK8KgwqDCoMKgIHN0ZDo6c3RyaW5nIGFzX3N0cmluZygpIGNvbnN0IHsKPiArLcKg wqDCoMKgwqDCoMKgIGFzc2VydF90YWcodGFnOjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAg YXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5nLCB0YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4g K8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6c3RyaW5nKHRleHQgKyBwYXlsb2FkWzBdLCB0 ZXh0ICsgcGF5bG9hZFsxXSk7Cj4gK8KgwqDCoMKgIH0KPiArICNlbmRpZgo+ICtAQCAtNjkwLDYg KzU5MywxMCBAQAo+ICvCoMKgwqDCoMKgwqDCoMKgIGFzc2VydChlMSA9PSB2YWx1ZV90YWcgfHwg ZTIgPT0gdmFsdWVfdGFnKTsKPiArwqDCoMKgwqAgfQo+ICsgCj4gKyvCoMKgwqAgdm9pZCBhc3Nl cnRfdGFnXzModGFnIGUxLCB0YWcgZTIsIHRhZyBlMykgY29uc3Qgewo+ICsrwqDCoMKgwqDCoMKg wqAgYXNzZXJ0KGUxID09IHZhbHVlX3RhZyB8fCBlMiA9PSB2YWx1ZV90YWcgfHwgZTMgPT0KPiB2 YWx1ZV90YWcpOwo+ICsrwqDCoMKgIH0KPiArKwo+ICvCoMKgwqDCoCB2b2lkIGFzc2VydF9pbl9i b3VuZHMoc2l6ZV90IGkpIGNvbnN0IHsgYXNzZXJ0KGkgPAo+IGdldF9sZW5ndGgoKSk7IH0KPiAr IAo+ICvCoMKgwqDCoCBjb25zdCB0YWcgdmFsdWVfdGFnOwo+ICtAQCAtMjA1OSw2ICsxOTY2LDgg QEAKPiArwqDCoMKgwqAgc3RkOjpwYWlyPGNoYXIqLCBpbnRlcm5hbDo6dGFnPiBwYXJzZV9udW1i ZXIoY2hhciogcCkgewo+ICvCoMKgwqDCoMKgwqDCoMKgIHVzaW5nIGludGVybmFsOjp0YWc7Cj4g KyAKPiArK8KgwqDCoMKgwqDCoHNpemVfdCBzdGFydCA9IHAgLSBpbnB1dC5nZXRfZGF0YSgpOwo+ ICsrCj4gK8KgwqDCoMKgwqDCoMKgwqAgLy8gQXNzdW1lIDMyLWJpdCwgdHdvJ3MgY29tcGxlbWVu dCBpbnRlZ2Vycy4KPiArwqDCoMKgwqDCoMKgwqDCoCBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk IFJJU0tZID0gSU5UX01BWCAvIDEwdTsKPiArwqDCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBtYXhf ZGlnaXRfYWZ0ZXJfcmlza3kgPSBJTlRfTUFYICUgMTB1Owo+ICtAQCAtMjIzNSwyMyArMjE0NCwx OCBAQAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB1ID0gMHUgLSB1Owo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfQo+ICvCoMKgwqDCoMKgwqDCoMKgIH0KPiArKwo+ICsr wqDCoMKgwqDCoMKgwqAgYm9vbCBzdWNjZXNzOwo+ICsrwqDCoMKgwqDCoMKgwqAgc2l6ZV90KiBv dXQgPSBhbGxvY2F0b3IucmVzZXJ2ZSgyLCAmc3VjY2Vzcyk7Cj4gKyvCoMKgwqDCoMKgwqDCoCBp ZiAoU0FKU09OX1VOTElLRUxZKCFzdWNjZXNzKSkgewo+ICsrwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCByZXR1cm4gc3RkOjptYWtlX3BhaXIob29tKHAsICJudW1iZXIiKSwgdGFnOjpudWxsKTsKPiAr K8KgwqDCoMKgwqDCoMKgIH0KPiArK8KgwqDCoMKgwqDCoMKgIG91dFswXSA9IHN0YXJ0Owo+ICsr wqDCoMKgwqDCoMKgwqAgb3V0WzFdID0gcCAtIGlucHV0LmdldF9kYXRhKCk7Cj4gKysKPiArwqDC oMKgwqDCoMKgwqDCoCBpZiAodHJ5X2RvdWJsZSkgewo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBib29sIHN1Y2Nlc3M7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNpemVfdCogb3V0Cj4g Ky3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhbGxvY2F0b3IucmVzZXJ2ZShkb3Vi bGVfc3RvcmFnZTo6d29yZF9sZW5ndGgsCj4gJnN1Y2Nlc3MpOwo+ICstwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBpZiAoU0FKU09OX1VOTElLRUxZKCFzdWNjZXNzKSkgewo+ICstwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBzdGQ6Om1ha2VfcGFpcihvb20ocCwgImRvdWJsZSIp LCB0YWc6Om51bGwpOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4gKy3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGRvdWJsZV9zdG9yYWdlOjpzdG9yZShvdXQsIGQpOwo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKHAsIHRhZzo6ZG91YmxlXyk7Cj4g K8KgwqDCoMKgwqDCoMKgwqAgfSBlbHNlIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYm9v bCBzdWNjZXNzOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzaXplX3QqIG91dAo+ICstwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWxsb2NhdG9yLnJlc2VydmUoaW50ZWdlcl9z dG9yYWdlOjp3b3JkX2xlbmd0aCwKPiAmc3VjY2Vzcyk7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGlmIChTQUpTT05fVU5MSUtFTFkoIXN1Y2Nlc3MpKSB7Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKG9vbShwLCAiaW50ZWdlciIpLAo+ IHRhZzo6bnVsbCk7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiArLcKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgaW50ZWdlcl9zdG9yYWdlOjpzdG9yZShvdXQsIHN0YXRpY19jYXN0PGludD4o dSkpOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKHAs IHRhZzo6aW50ZWdlcik7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgfQo+ICvCoMKgwqDCoCB9CkNoZWVy cwo= From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 03:54:43 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 07:54:43 +0000 Received: from localhost ([127.0.0.1]:52343 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofclG-0005Tk-Gv for submit@debbugs.gnu.org; Tue, 04 Oct 2022 03:54:42 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:23591) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofclE-0005TZ-Sa for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 03:54:41 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhVNF13zXz3wHF; Tue, 4 Oct 2022 09:54:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664870077; bh=1iO0fWoBNJiKGp9KHeMo8wfQBTCp6lcQxbGZFE2Cs6I=; h=Subject:From:To:Date:In-Reply-To:References; b=Frr7pmC6QuqKnGIqnO8JCS5pDYRE2nyfCWeMHqiMKsDqbPpDOLEM9MF9Txq/wSVHX QfsOpBCGFbIkqQJxQ/AhvnQleGkMzAl70e+1B4H/2eLqVrip2C3qM3oH2mvN19aQj7 j+Nmehb1NOIwb+Juw8MhXXZw2ptRkOeia3EhAeQE= Message-ID: <1c289b3e66423599bf20a2cd49521e0e803a8345.camel@ist.tugraz.at> Subject: Re: [PATCH 10/11] gnu: Add yaehmop-tightbind. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 09:54:35 +0200 In-Reply-To: <616241998ff984b1e7c074c0aa89e7187b3cfc72.1664725832.git.david.elsing@posteo.net> References: <616241998ff984b1e7c074c0aa89e7187b3cfc72.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtICh5YWVobW9wLXRpZ2h0YmluZCk6 IE5ldyB2YXJpYWJsZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIHwgODIK PiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5n ZWQsIDgyIGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NoZW1p c3RyeS5zY20gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IGluZGV4IGNjMjZhYTMyOWEu LmEzOWRlZmY0YmYgMTAwNjQ0Cj4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiAr KysgYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IEBAIC00Miw2ICs0Miw3IEBAIChkZWZp bmUtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlbWlzdHJ5KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChn bnUgcGFja2FnZXMgZG9jdW1lbnRhdGlvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGZsZXgpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmb250dXRpbHMpCj4g K8KgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdjYykKPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIGdsKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ3JhcGh2 aXopCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBndikKPiBAQCAtODE3LDMgKzgx OCw4NCBAQCAoZGVmaW5lLXB1YmxpYyBjb29yZGdlbmxpYnMKPiDCoMKgwqDCoCAoZGVzY3JpcHRp b24gIkBjb2Rle2Nvb3JkZ2VubGlic30gY29udGFpbnMgYWxnb3JpdGhtcyB0bwo+IGdlbmVyYXRl IDJECj4gwqBjb29yZGluYXRlcy7CoCBJdCBoYXMgYW4gZW1waGFzaXMgb24gcXVhbGl0eSByYXRo ZXIgdGhhbiBzcGVlZC4iKQo+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKPiAr Cj4gKyhkZWZpbmUtcHVibGljIHlhZWhtb3AtdGlnaHRiaW5kCj4gK8KgIChwYWNrYWdlCj4gK8Kg wqDCoCAobmFtZSAieWFlaG1vcC10aWdodGJpbmQiKQo+ICvCoMKgwqAgKHZlcnNpb24gIjIwMjIu MDkuMSIpCj4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKG1ldGhvZCBnaXQtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1 cmkgKGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKHVybCAiaHR0cHM6Ly9naXRodWIuY29tL2dyZWdsYW5kcnVtL3lhZWhtb3AiKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IChzdHJpbmctYXBwZW5k ICJ2IiB2ZXJzaW9uKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1l IChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIxeDBkNzVtMWhnZGI0MTFmaXY3YzVid3Ex bjR5MHN3cmxsMGdpZ2g4djVjNzNranhyamEwIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKHNuaXBwZXQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2lu Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vy c2l2ZWx5ICJkb2NzIikKVGhpcyBvbmUgbG9va3Mgc3VzcGljaW91cy4KPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgImV4YW1wbGVz IikKQXMgZG9lcyB0aGlzLgpXaGF0IGdpdmVzPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidmlld2tlbCIpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJ0aWdo dGJpbmQvZjJjX2ZpbGVzIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo ZGVsZXRlLWZpbGUgInRpZ2h0YmluZC9kaWFnLmMiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5kL2Nib3Jpcy5jIikKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgInRpZ2h0YmluZC9hYmZu cy5jIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUg InRpZ2h0YmluZC9sb3ZsYXAuYyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgI3QpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1aWxkLXN5c3RlbSkKPiAr wqDCoMKgIChuYXRpdmUtaW5wdXRzIChsaXN0IGdmb3J0cmFuKSkKPiArwqDCoMKgIChpbnB1dHMg KGxpc3Qgb3BlbmJsYXMpKQo+ICvCoMKgwqAgKGFyZ3VtZW50cwo+ICvCoMKgwqDCoCAobGlzdAo+ ICvCoMKgwqDCoMKgICM6Y29uZmlndXJlLWZsYWdzCj4gK8KgwqDCoMKgwqAgI34obGlzdAo+ICvC oMKgwqDCoMKgwqDCoMKgICItRFVTRV9CTEFTX0xBUEFDSz1PTiIKPiArwqDCoMKgwqDCoMKgwqDC oCAoc3RyaW5nLWFwcGVuZCAiLURQQVJNX0ZJTEVfTE9DPSIgIyRvdXRwdXQKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiL3NoYXJlLyIgIyRuYW1lICIt IiAjJHZlcnNpb24KPiAiL2VodF9wYXJtcy5kYXQiKQo+ICvCoMKgwqDCoMKgwqDCoMKgICItREJJ TkRfRVhFX05BTUU9eWFlaG1vcC1iaW5kIikKPiArwqDCoMKgwqDCoCAjOnBoYXNlcwo+ICvCoMKg wqDCoMKgICN+KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwo+ICvCoMKgwqDCoMKgwqDC oMKgwqAgKGFkZC1hZnRlciAndW5wYWNrICdjaGRpcgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY2hkaXIgInRpZ2h0Ymlu ZCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgIChhZGQtYWZ0ZXIgJ2NoZGlyICdwYXRjaC1mb3J0cmFuLWZ1bmN0aW9ucwo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3Vic3RpdHV0ZSogJygibW92LmMiICJwcm90b3R5cGVzLmgiKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKCgibG92bGFwXFwoIikgImxvdmxhcF8oIikKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICgoImFiZm5zXFwoIikgImFiZm5zXygiKSkKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAn Y2hkaXIgJ3BhdGNoLWNtYWtlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiQ01ha2VMaXN0cy50eHQi Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJwcm9qZWN0XFwoeWFlaG1vcCBD XFwpIikgInByb2plY3QoeWFlaG1vcCBDCj4gRm9ydHJhbikiKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKCgiYWJmbnMuYyIpICJmb3J0cmFuNzcvYWJmbnMuZiIpCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJsb3ZsYXAuYyIpICJmb3J0cmFuNzcvbG92bGFw LmYiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiKHNldFxcKFBBUk1fRklM RV9MT0MuKilcXCkiIGFsbCBpbml0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc3RyaW5nLWFwcGVuZCBpbml0ICIgQ0FDSEUgU1RSSU5HIFwiXCIpIikpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJhZGRfbGlicmFyeVxcKHlhZWhtb3BfZWh0IiBsaWIp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kIGxpYiAi IFNIQVJFRCAiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInRhcmdldF9s aW5rX2xpYnJhcmllc1xcKHRlc3RfZWh0Cj4gXFwkXFx7TEFQQUNLX0xJQlJBUklFU1xcfS4qIgo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGFsbCkKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgYWxsCj4gIlxudGFyZ2V0X2xpbmtf bGlicmFyaWVzKHlhZWhtb3BfZWh0ICIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIiR7TEFQQUNLX0xJQlJBUklFU30pXG4i KSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgIChhZGQtYWZ0ZXIgJ2luc3RhbGwgJ2luc3RhbGwtZWh0LXBhcm1zCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0 YWxsLWZpbGUgIi4uL3RpZ2h0YmluZC9laHRfcGFybXMuZGF0Igo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIyRv dXRwdXQgIi9zaGFyZS8iCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG5hbWUgIi0i ICMkdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgIChkZWxldGUgJ2NoZWNrKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1h ZnRlciAnaW5zdGFsbC1laHQtcGFybXMgJ2NoZWNrCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGxhbWJkYSogKCM6a2V5IHRlc3RzPyAjOmFsbG93LW90aGVyLWtleXMpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICh3aGVuIHRlc3RzPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGludm9rZSAiLi90ZXN0X2VodCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAjdCkpKSkpCj4gK8KgwqDCoCAoaG9tZS1wYWdlICJodHRwczovL2dpdGh1Yi5jb20vZ3JlZ2xh bmRydW0veWFlaG1vcCIpCj4gK8KgwqDCoCAoc3lub3BzaXMgIllldCBBbm90aGVyIGV4dGVuZGVk IEh1ZWNrZWwgTW9sZWN1bGFyIE9yYml0YWwKPiBQYWNrYWdlIikKPiArwqDCoMKgIChkZXNjcmlw dGlvbiAiQGNvZGV7WUFlSE1PUH0gY29udGFpbnMgYSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGZvcgo+ IHBlcmZvcm1pbmcKPiArZXh0ZW5kZWQgSMO8Y2tlbCBjYWxjdWxhdGlvbnMuIikKPiArwqDCoMKg IChsaWNlbnNlIGxpY2Vuc2U6YnNkLTIpKSkKTG9va2luZyBhdCB0aGlzIGl0IHNlZW1zIHVuY2xl YXIgd2hldGhlciB5b3UgYXJlIGJ1aWxkaW5nIHlhZWhtb3Agb3IKdGlnaHRiaW5kLiAgV2hhdCdz IGdvaW5nIG9uPwo= From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 04:02:51 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 08:02:51 +0000 Received: from localhost ([127.0.0.1]:52364 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcsy-0005hT-8o for submit@debbugs.gnu.org; Tue, 04 Oct 2022 04:02:51 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:42614) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofcst-0005hH-JH for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 04:02:39 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhVYK6BNkz1LZ3L; Tue, 4 Oct 2022 10:02:29 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MhVYK6BNkz1LZ3L DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664870550; bh=xq9Zw4q39cKWqGRZ2FC5NR8KODlZKhIOF0b/CIcM/mc=; h=Subject:From:To:Date:In-Reply-To:References:From; b=Oy/jLfW/fPjkPAmD2Xrs4wHZ6a27XBVMPiedeHVVSsgm6K/jWgPJiYG0X6X/Ni0v0 PqlxoaZ0o34IksHtiZV0vNJ1uNu8cC2pVEE5jEtmoIUTpR3tG2Mgsf3Erf2z7s8Qsn 06+rkawegEKmnS8Pek8Jvcs9j97gRdRHIBn8ekCY= Message-ID: <66e6c9657b6e9ffe23201e7bcc294ee42634a335.camel@ist.tugraz.at> Subject: Re: [PATCH 07/11] gnu: Add freesasa. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 10:02:29 +0200 In-Reply-To: <254dc3bf26b76bf9fbd2da24c0f11eb6f34bb953.1664725832.git.david.elsing@posteo.net> References: <254dc3bf26b76bf9fbd2da24c0f11eb6f34bb953.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIChmcmVlc2FzYSk6IE5ldyB2YXJp YWJsZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIHwgODEKPiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5nZWQsIDgxIGlu c2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20g Yi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IGluZGV4IGY4ZmQ4NTgxNGYuLjIyM2EyN2Ey MGQgMTAwNjQ0Cj4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiArKysgYi9nbnUv cGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IEBAIC0zNCwxMSArMzQsMTMgQEAgKGRlZmluZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBhbGdlYnJhKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYXV0b3Rvb2xz KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYmFja3VwKQo+ICvCoCAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyBiaXNvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGJvb3N0KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlY2spCj4gwqDC oCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjb21wcmVzc2lvbikKPiDCoMKgICM6dXNlLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IGRvY3VtZW50YXRpb24pCj4gK8KgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZsZXgpCj4g wqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmb250dXRpbHMpCj4gwqDCoCAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyBnbCkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IGdyYXBodml6KQo+IEBAIC01NCw2ICs1Niw3IEBAIChkZWZpbmUtbW9kdWxlIChnbnUgcGFja2Fn ZXMgY2hlbWlzdHJ5KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc2VyaWFsaXph dGlvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNwaGlueCkKPiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHN0YikKPiArwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFj a2FnZXMgd2ViKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgeG1sKQo+IMKgwqAg Izp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBjbWFrZSkKPiDCoMKgICM6dXNlLW1vZHVs ZSAoZ3VpeCBidWlsZC1zeXN0ZW0gY29weSkKPiBAQCAtNjg4LDMgKzY5MSw4MSBAQCAoZGVmaW5l LXB1YmxpYyBnZW1taQo+IMKgQGl0ZW0gY3J5c3RhbGxvZ3JhcGhpYyBzeW1tZXRyeS4KPiDCoEBl bmQgZW51bWVyYXRlIikKPiDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNlOm1wbDIuMCkpKQo+ICsK PiArKGRlZmluZS1wdWJsaWMgZnJlZXNhc2EKPiArwqAgKHBhY2thZ2UKPiArwqDCoMKgIChuYW1l ICJmcmVlc2FzYSIpCj4gK8KgwqDCoCAodmVyc2lvbiAiMi4xLjIiKQo+ICvCoMKgwqAgKHNvdXJj ZSAob3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtZXRob2QgZ2l0LWZldGNo KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwgImh0dHBzOi8vZ2l0aHVi LmNvbS9taXR0aW5hdHRlbi9mcmVlc2FzYSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChjb21taXQgdmVyc2lvbikpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIwN3dkbmFoZjNn MzU1cnlhaXF2ZnhkNWY0cmw1NHd2OGp3eGNibjBuaWE4OWZxeXNidjBmIikpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpKSkKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNuaXBwZXQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAnKGJlZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsg UmVtb3ZlIEMgZmlsZXMgZ2VuZXJhdGVkIGJ5IEZsZXggYW5kIEJpc29uCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNoIGRlbGV0ZS1maWxlCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKCJzcmMvcGFy c2VyLmMiICJzcmMvcGFyc2VyLmgiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInNyYy9sZXhlci5jIiAic3JjL2xleGVyLmgiKSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkKPiArwqDCoMKgIChi dWlsZC1zeXN0ZW0gZ251LWJ1aWxkLXN5c3RlbSkKPiArwqDCoMKgIChpbnB1dHMKPiArwqDCoMKg wqAgKGxpc3QgZ2VtbWkganNvbi1jIGxpYnhtbDIpKQo+ICvCoMKgwqAgKG5hdGl2ZS1pbnB1dHMK PiArwqDCoMKgwqAgKGxpc3QgYmlzb24gZmxleCBjaGVjayBhdXRvY29uZiBhdXRvbWFrZSBwa2ct Y29uZmlnIGRveHlnZW4KPiBwZXJsIGxpYnRvb2wpKQo+ICvCoMKgwqAgKG91dHB1dHMgJygib3V0 IiAiZG9jIikpCj4gK8KgwqDCoCAoYXJndW1lbnRzCj4gK8KgwqDCoMKgIChsaXN0Cj4gK8KgwqDC oMKgwqAgIzpjb25maWd1cmUtZmxhZ3MKPiArwqDCoMKgwqDCoCAjfihsaXN0ICItLWVuYWJsZS1j aGVjayIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi0tZW5hYmxlLXBhcnNlci1nZW5l cmF0b3IiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJDWFhGTEFHUz0tc3RkPWMrKzE3 Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiLS1lbmFibGUtZG94eWdlbiIpCj4gK8Kg wqDCoMKgwqAgIzpwaGFzZXMKPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhhc2VzICVzdGFuZGFy ZC1waGFzZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAncmVtb3Zl LWxpYmMrKy1saW5raW5nCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAic3JjL01ha2VmaWxlLmFtIgo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiLWxjXFwrXFwrIikgIiIpKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCldoeT8gIElmIGl0J3MgYmVjYXVzZSB5b3Un cmUgYnVpbGRpbmcgYSBzaGFyZWQgbGlicmFyeSwgZG8gdGhpcyBpbiB0aGUKbmV4dCBwaGFzZS4K PiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAnYnVpbGQtc2hhcmVkLWxp YnJhcnkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJzcmMvTWFrZWZpbGUuYW0iCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJsaWJfTElCUkFSSUVTIikgImxpYl9MVExJQlJBUklF UyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJsaWJmcmVlc2FzYVxcLmEi KSAibGliZnJlZXNhc2EubGEiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgi ZnJlZXNhc2FfTERBREQgXFwrPSBsaWJmcmVlc2FzYVxcLmxhIiBwcmV2KQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBwcmV2ICJcbmxpYmZyZWVzYXNh X2xhX0xJQkFERCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgIiA9IC1sanNvbi1jICR7bGlieG1sMl9MSUJTfVxuIikpCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJfYV9TT1VSQ0VTIikgIl9sYV9TT1VS Q0VTIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiY29uZmln dXJlLmFjIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiQUNfUFJPR19JTlNU QUxMIiBpbnN0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFw cGVuZCAiQU1fUFJPR19MSUJUT09MXG4iIGluc3QpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHN1YnN0aXR1dGUqICJ0ZXN0cy9NYWtlZmlsZS5hbSIKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICgoImxpYmZyZWVzYXNhXFwuYSIpICJsaWJmcmVlc2FzYS5sYSIpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAo YWRkLWJlZm9yZSAnYnVpbGQgJ2J1aWxkLWxleGVyLWFuZC1wYXJzZXIKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHdpdGgt ZGlyZWN0b3J5LWV4Y3Vyc2lvbiAic3JjIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGludm9rZSAibWFrZSIgImxleGVyLmgiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGludm9rZSAibWFrZSIgInBhcnNlci5oIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICN0KSkKWW91IGNhbiBkbyB0aGlzIGluIG9uZSBtYWtlLgo+ICvCoMKgwqDCoMKgwqDC oMKgwqAgKGFkZC1hZnRlciAnaW5zdGFsbCAnaW5zdGFsbC1kb2MKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvcHktcmVj dXJzaXZlbHkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiZG9jL2h0bWwiCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIyRvdXRwdXQ6ZG9jICIv c2hhcmUvZG9jLyIgIyRuYW1lICItIgo+ICMkdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICN0KSkpKSkKPiArwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vZnJlZXNhc2Eu Z2l0aHViLmlvLyIpCj4gK8KgwqDCoCAoc3lub3BzaXMgIkxpYnJhcnkgZm9yIGNhbGN1bGF0aW5n IHRoZSBzb2x2ZW50IGFjY2Vzc2libGUKPiBzdXJmYWNlIGFyZWEKPiArKFNBU0EpIG9mIG1vbGVj dWxlcyIpCiJDYWxjdWxhdGUgdGhlLi4uIgo+ICvCoMKgwqAgKGRlc2NyaXB0aW9uICJGcmVlU0FT QSBpcyBhIGNvbW1hbmQgbGluZSB0b29sIGFuZCBDLWxpYnJhcnkgZm9yCj4gK2NhbGN1bGF0aW5n IHNvbHZlbnQgYWNjZXNzaWJsZSBzdXJmYWNlIGFyZWFzIChTQVNBKS7CoCBCeSBkZWZhdWx0IExl ZQo+ICYKVXNlIEBhYmJyLgo+ICtSaWNoYXJkcycgYWxnb3JpdGhtIGlzIHVzZWQsIGJ1dCBTaHJh a2UgJiBSdXBsZXkncyBpcyBhbHNvCj4gYXZhaWxhYmxlLsKgIEJvdGggY2FuCj4gK2JlIHBhcmFt ZXRlcml6ZWQgdG8gYXJiaXRyYXJ5IHByZWNpc2lvbiwgYW5kIGZvciBoaWdoIHJlc29sdXRpb24K PiB2ZXJzaW9ucyBvZgo+ICt0aGUgYWxnb3JpdGhtcywgdGhlIGNhbGN1bGF0aW9ucyBnaXZlIGlk ZW50aWNhbCByZXN1bHRzLiIpCj4gK8KgwqDCoCAobGljZW5zZSBsaWNlbnNlOmV4cGF0KSkpCgpD aGVlcnMKCg== From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 04:13:33 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 08:13:33 +0000 Received: from localhost ([127.0.0.1]:52374 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofd3U-0005x9-Q2 for submit@debbugs.gnu.org; Tue, 04 Oct 2022 04:13:33 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:23768) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofd3R-0005wy-MS for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 04:13:31 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhVnx113jz1LZ3K; Tue, 4 Oct 2022 10:13:25 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MhVnx113jz1LZ3K DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664871206; bh=xQhtnkLKXG816d3yyF9vMM8sObNX1Aq3Qfthod6lj5Q=; h=Subject:From:To:Date:In-Reply-To:References:From; b=RAaZfuvfle8+eP+7q8nBpfQx4fh6RqVd7M79qy489dLv+rqHvIW72sR9F77cgq3NR B51u9vt8hsFf8FUONhUrebIhndtg457DAVg1DBV0C84WNRxkOr/V1leUSdwHi27VzP bpObdWopljBaqPuQ9Nog5PcnTwL+EOL1ig2PdmKs= Message-ID: Subject: Re: [PATCH 11/11] gnu: Add rdkit. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 10:13:24 +0200 In-Reply-To: <06dceecde661574f95f3a6324285077d0bc6896a.1664725832.git.david.elsing@posteo.net> References: <06dceecde661574f95f3a6324285077d0bc6896a.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSArMDAwMCBzY2hyaWViIERhdmlkIEVs c2luZzoKPiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIChyZGtpdCk6IE5ldyB2YXJpYWJs ZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAxOTgKPiArKysrKysrKysrKysrKysrKysKPiDCoC4uLi9y ZGtpdC1jbWFrZS1leHRlcm5hbC1kZXBlbmRlbmNpZXMucGF0Y2jCoMKgIHwgMTAyICsrKysrKysr Kwo+IMKgMiBmaWxlcyBjaGFuZ2VkLCAzMDAgaW5zZXJ0aW9ucygrKQo+IMKgY3JlYXRlIG1vZGUg MTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL3Jka2l0LWNtYWtlLWV4dGVybmFsLQo+IGRlcGVu ZGVuY2llcy5wYXRjaAo+IAo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNj bSBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gaW5kZXggYTM5ZGVmZjRiZi4uODY5Y2Yy NjRlMyAxMDA2NDQKPiAtLS0gYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ICsrKyBiL2du dS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gQEAgLTM0LDYgKzM0LDcgQEAgKGRlZmluZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBhbGdlYnJhKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYXV0b3Rvb2xz KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYmFja3VwKQo+ICvCoCAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyBiYXNlKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2Fn ZXMgYmlzb24pCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBib29zdCkKPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZWNrKQo+IEBAIC00MSwxMCArNDIsMTIgQEAg KGRlZmluZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gwqDCoCAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBjcHApCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBk b2N1bWVudGF0aW9uKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZmxleCkKPiAr wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZm9udHMpCj4gwqDCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBmb250dXRpbHMpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdl cyBnY2MpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnbCkKPiDCoMKgICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIGdyYXBodml6KQo+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBndGspCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBndikKPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGltYWdlKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChn bnUgcGFja2FnZXMgbWF0aHMpCj4gQEAgLTU2LDYgKzU5LDcgQEAgKGRlZmluZS1tb2R1bGUgKGdu dSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBx dCkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNlcmlhbGl6YXRpb24pCj4gwqDC oCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzcGhpbngpCj4gK8KgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIHNxbGl0ZSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHN0 YikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHdlYikKPiDCoMKgICM6dXNlLW1v ZHVsZSAoZ251IHBhY2thZ2VzIHhtbCkKPiBAQCAtODk5LDMgKzkwMywxOTcgQEAgKGRlZmluZS1w dWJsaWMgeWFlaG1vcC10aWdodGJpbmQKPiDCoMKgwqDCoCAoZGVzY3JpcHRpb24gIkBjb2Rle1lB ZUhNT1B9IGNvbnRhaW5zIGEgcHJvZ3JhbSBhbmQgbGlicmFyeSBmb3IKPiBwZXJmb3JtaW5nCj4g wqBleHRlbmRlZCBIw7xja2VsIGNhbGN1bGF0aW9ucy4iKQo+IMKgwqDCoMKgIChsaWNlbnNlIGxp Y2Vuc2U6YnNkLTIpKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIHJka2l0Cj4gK8KgIChwYWNrYWdl Cj4gK8KgwqDCoCAobmFtZSAicmRraXQiKQo+ICvCoMKgwqAgKHZlcnNpb24gIjIwMjIuMDMuNSIp Cj4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KG1ldGhvZCBnaXQtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdp dC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVy bCAiaHR0cHM6Ly9naXRodWIuY29tL3Jka2l0L3Jka2l0IikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAiUmVsZWFzZV8iIChzdHJpbmctcmVwbGFjZS1zdWJzdHJpbmcg dmVyc2lvbgo+ICIuIiAiXyIpKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmls ZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMy Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIxOWlkZ2lsYWJoMDRjYnIxcWo2 emdyZ3Nmam0yNDhtbWZ6NmZzcjBzbXJkNjhkMHhubWw5IikpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChwYXRjaGVzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNlYXJj aC1wYXRjaGVzICJyZGtpdC1jbWFrZS1leHRlcm5hbC0KPiBkZXBlbmRlbmNpZXMucGF0Y2giKSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZHVsZXMgJygoZ3VpeCBidWlsZCB1dGls cykpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc25pcHBldAo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICN+KGJlZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCA7OyBSZW1vdmUgcGlja2xlIGZpbGVzIChvbmx5IHVzZWQgaW4gdGVzdHMpLAo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgYXMgdGhleSBhcmUgY29t cGlsZWQgcHJvZ3JhbXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChm b3ItZWFjaAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRh IChuYW1lKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRp c3BsYXkgKHN0cmluZy1hcHBlbmQgbmFtZSAiXG4iKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSBuYW1lKSkKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbmQtZmlsZXMgIi4iICJcXC5wa2woXFwuZ3op PyQiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFJlbW92ZSBT UUxpdGUgZGF0YSBmaWxlcyAoY2FuIGJlIGdlbmVyYXRlZCkKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAiRGF0YS9SRERhdGEuc3FsdCIpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgIkRhdGEvUkRU ZXN0cy5zcWx0IikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkp KQo+ICvCoMKgwqAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCj4gK8KgwqDCoCAo bmF0aXZlLWlucHV0cwo+ICvCoMKgwqDCoCBgKCgiYmlzb24iICxiaXNvbikKPiArwqDCoMKgwqDC oMKgICgiYm9vc3QiICxib29zdCkKPiArwqDCoMKgwqDCoMKgICgiY2F0Y2gyIiAsY2F0Y2gyKQo+ ICvCoMKgwqDCoMKgwqAgKCJlaWdlbiIgLGVpZ2VuKQo+ICvCoMKgwqDCoMKgwqAgKCJmbGV4IiAs ZmxleCkKPiArwqDCoMKgwqDCoMKgICgiZnJlZXNhc2EiICxmcmVlc2FzYSkKPiArwqDCoMKgwqDC oMKgICgicGtnLWNvbmZpZyIgLHBrZy1jb25maWcpCj4gK8KgwqDCoMKgwqDCoCAoInJhcGlkanNv biIgLHJhcGlkanNvbikKPiArwqDCoMKgwqDCoMKgICgidGFyIiAsdGFyKQo+ICvCoMKgwqDCoMKg wqAgKCJhdmFsb250b29sa2l0LXNyYyIKPiArwqDCoMKgwqDCoMKgwqAgLChsZXQgKCh2ZXJzaW9u ICIxLjIuMCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCAob3JpZ2luCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAobWV0aG9kIHVybC1mZXRjaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICh1cmkgKHN0cmluZy1hcHBlbmQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgCj4gImh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvYXZhbG9udG9vbGtpdC9m aWxlcy8iCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiQXZhbG9uVG9v bGtpdF8iIChzdWJzdHJpbmcgdmVyc2lvbiAwIDMpCj4gIi9BdmFsb25Ub29sa2l0XyIKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZlcnNpb24gIi5zb3VyY2UudGFyIikp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2Cj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChiYXNlMzIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIwcm5u eXk2YXhzMmRhN2FhNHE2bDMwbGRhdmJrNDl2NmwyMmxsajFhZG43NGgxaTY3YnB2IikpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0aWxzKSAoaWNl LTkgZnR3KSAoc3JmaSBzcmZpLQo+IDI2KSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c25pcHBldAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjfihiZWdpbgo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjaGRpciAiLi4iKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAiU3RhbmRhcmRG aWxlcyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxl LXJlY3Vyc2l2ZWx5Cj4gIlNvdXJjZURpc3RyaWJ1dGlvbi9qYXZhIikKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkpCj4gK8KgwqDCoMKgwqDCoCAoInJpbmdkZWNv bXBvc2VybGliLXNyYyIKPiArwqDCoMKgwqDCoMKgwqAgLChsZXQgKCh2ZXJzaW9uICIxLjEuMyIp KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCAob3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkg KGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1 cmwKPiAiaHR0cHM6Ly9naXRodWIuY29tL3JhcmV5bGFiL1JpbmdEZWNvbXBvc2VyTGliIikKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjb21taXQgKHN0cmluZy1hcHBl bmQgInYiIHZlcnNpb24gIl9yZGtpdCIpKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo ZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoc2hhMjU2Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChiYXNlMzIK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIxcnh6czJ3cGtrZGk0MHdkenhjNHNu MGJyazdkbTdpdmdxeWZoMzhnZjJmNWM3cGJnMHdpIikpKSkpKSkKPiArwqDCoMKgIChpbnB1dHMK PiArwqDCoMKgwqAgKGxpc3QgY2Fpcm8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29vcmRnZW5s aWJzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIGZvbnQtY29taWMtbmV1ZQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoCBmcmVldHlwZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbmNoaQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoCBtYWVwYXJzZXIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHl0aG9u Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHNxbGl0ZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCB5 YWVobW9wLXRpZ2h0YmluZCkpCj4gK8KgwqDCoCAocHJvcGFnYXRlZC1pbnB1dHMKPiArwqDCoMKg wqAgKGxpc3QgcHl0aG9uLW51bXB5IHB5dGhvbi1jYWlyb2NmZmkgcHl0aG9uLXBpbGxvdykpCj4g K8KgwqDCoCAoYXJndW1lbnRzCj4gK8KgwqDCoMKgIChsaXN0Cj4gK8KgwqDCoMKgwqAgIzppbXBv cnRlZC1tb2R1bGVzIChhcHBlbmQgJWNtYWtlLWJ1aWxkLXN5c3RlbS1tb2R1bGVzCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgJygoZ3VpeCBidWlsZCBweXRob24tYnVpbGQtCj4gc3lzdGVtKSkpCj4gK8KgwqDCoMKgwqAg Izptb2R1bGVzICcoKGd1aXggYnVpbGQgY21ha2UtYnVpbGQtc3lzdGVtKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChndWl4IGJ1aWxkIHV0aWxzKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoZ3VpeCBidWlsZCBweXRob24tYnVpbGQtc3lzdGVt KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzpzZWxlY3QgKGFkZC1p bnN0YWxsZWQtcHl0aG9ucGF0aCkpKQo+ICvCoMKgwqDCoMKgICM6Y29uZmlndXJlLWZsYWdzCj4g K8KgwqDCoMKgwqAgI34obGlzdAo+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9BVkFM T05fU1VQUE9SVD1PTiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfQlVJTERfQ0FJUk9fU1VQ UE9SVD1PTiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfQlVJTERfQ1BQX1RFU1RTPU9OIgo+ ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9GUkVFU0FTQV9TVVBQT1JUPU9OIgo+ICvC oMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9JTkNISV9TVVBQT1JUPU9OIgo+ICvCoMKgwqDC oMKgwqDCoMKgICItRFJES19CVUlMRF9ZQUVITU9QX1NVUFBPUlQ9T04iCj4gK8KgwqDCoMKgwqDC oMKgwqAgKHN0cmluZy1hcHBlbmQgIi1EQ0FUQ0hfRElSPSIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJCh0aGlzLXBhY2thZ2UtbmF0aXZlLWlucHV0 ICJjYXRjaDIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICIvaW5jbHVkZS9jYXRjaDIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19JTlNUQUxM X0RFVl9DT01QT05FTlQ9T04iCj4gK8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0lOU1RBTExfSU5U UkVFPU9GRiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfSU5TVEFMTF9TVEFUSUNfTElCUz1P RkYiCj4gK8KgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQKPiArwqDCoMKgwqDCoMKgwqDC oMKgICItRFJES19PUFRJTUlaRV9QT1BDTlQ9Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgIyQobGV0 ICgoc3lzdGVtIChvciAoJWN1cnJlbnQtdGFyZ2V0LXN5c3RlbSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoJWN1cnJlbnQtc3lz dGVtKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29uZAo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICgoc3RyaW5nLXByZWZpeD8gIng4Nl82NCIgc3lzdGVtKSAiT04i KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoc3RyaW5nLXByZWZpeD8gImk2ODYi IHN5c3RlbSkgIk9OIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZWxzZSAiT0ZG IikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfVVNFX0JPT1NUX0lPU1RSRUFNUz1PTiIK PiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfVVNFX0ZMRVhCSVNPTj1PTiIpCj4gK8KgwqDCoMKg wqAgIzpwaGFzZXMKPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFz ZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAnY29weS1leHRlcm5h bC1kZXBlbmRlbmNpZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN5bWxpbmsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg IyQodGhpcy1wYWNrYWdlLWlucHV0ICJmb250LWNvbWljLW5ldWUiKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgIi9zaGFyZS9mb250cy90cnVldHlwZS9Db21pY05ldWUtUmVndWxh ci50dGYiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJEYXRhL0ZvbnRzL0NvbWlj TmV1ZS1SZWd1bGFyLnR0ZiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzeW1saW5r ICMkKHRoaXMtcGFja2FnZS1uYXRpdmUtaW5wdXQgInJhcGlkanNvbiIpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJFeHRlcm5hbC9yYXBpZGpzb24tMS4x LjAiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICJ0YXIiICJ4dmYiCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJCh0aGlzLXBhY2th Z2UtbmF0aXZlLWlucHV0ICJhdmFsb250b29sa2l0LQo+IHNyYyIpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiLUMiICJFeHRlcm5hbC9BdmFsb25Ub29scyIp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzeW1saW5rICMkKHRoaXMtcGFja2FnZS1u YXRpdmUtaW5wdXQKPiAicmluZ2RlY29tcG9zZXJsaWItc3JjIikKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkV4dGVybmFsL1JpbmdGYW1pbGllcy9SaW5n RGVjb21wb3NlckxpYiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKWW91IG1p Z2h0IHdhbnQgdG8gdHJ5IHVuYnVuZGxpbmcgdGhvc2UuICBFaXRoZXIgd2F5LCB5b3Ugc2hvdWxk IGZpbmQgYQpzb2x1dGlvbiB0aGF0IGRvZXNuJ3QgZGVwZW5kIG9uIG5hdGl2ZS1pbnB1dCBsYWJl bHMuCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICdjb3B5LWV4dGVybmFsLWRlcGVu ZGVuY2llcyAncGF0Y2gtc291cmNlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBf Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh3aXRoLWRpcmVjdG9yeS1leGN1cnNpb24g IkV4dGVybmFsL0F2YWxvblRvb2xzIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGludm9rZSAicGF0Y2giICItcDAiICItaSIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAiQXZhbG9uVG9vbGtpdF8xLjJfcGF0Y2gudHh0IikpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiRXh0ZXJuYWwvWUFlSE1PUC9F SFRUb29scy5jcHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCI8eWFlaG1v cC90aWdodGJpbmQvYmluZC5oPiIpICI8eWFlaG1vcC9iaW5kLmg+IikpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICN0KSkKU2VlIG15IGNvbW1lbnQgb24geWFlaG1vcC4KPiArwqDCoMKg wqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAnY3JlYXRlLXNxbGl0ZS1kYXRhLWZpbGVz Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChpbnZva2UgInNxbGl0ZTMiICJEYXRhL1JERGF0YS5zcWx0Igo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi5yZWFkIHJka2l0L0RiYXNlL3Rl c3RfZGF0YS9SRERhdGEuc3FsaXRlIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGlu dm9rZSAic3FsaXRlMyIgIkRhdGEvUkRUZXN0cy5zcWx0Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi5yZWFkIHJka2l0L0RiYXNlL3Rlc3RfZGF0YS9SRFRl c3RzLnNxbGl0ZSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKRG8geW91IG9u bHkgbmVlZCB0aGlzIGZvciB0ZXN0cz8gIElmIHNvLCBkbyB0aGlzIGluIGEgcHJlLWNoZWNrIHBo YXNlLgo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAndW5wYWNrICdmaXgtaW5jaGkt aW5jbHVkZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogIkNvZGUvY21ha2UvTW9kdWxlcy9GaW5kSW5j aGkuY21ha2UiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJpbmNoaV9hcGku aC4qXFwpIikgImluY2hpL2luY2hpX2FwaS5oKSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoKCJJTkNISV9MSUJSQVJZIE5BTUVTLipcXCkiKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAiSU5DSElfTElCUkFSWSBOQU1FUyBpbmNoaSBQQVRIX1NVRkZJWEVT IGluY2hpKSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJmaW5kX2xpYnJh cnkiIHByZXYpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBw ZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImxpc3QoQVBQRU5EIENN QUtFX0ZJTkRfTElCUkFSWV9TVUZGSVhFUyAuc28uMSlcbiIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBwcmV2KSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChz dWJzdGl0dXRlKiAiRXh0ZXJuYWwvSU5DSEktQVBJL2luY2hpLmNwcCIKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICgoIjxpbmNoaV9hcGkuaD4iKSAiPGluY2hpL2luY2hpX2FwaS5o PiIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoCAoYWRkLWJlZm9yZSAnYnVpbGQgJ2VuYWJsZS1ieXRlY29kZS1kZXRlcm1pbmlzbQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChzZXRlbnYgIlBZVEhPTkhBU0hTRUVEIiAiMCIpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoc2V0ZW52ICJQWVRIT05ET05UV1JJVEVCWVRFQ09ERSIgIjEi KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI3QpKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqAgKGRlbGV0ZSAnY2hlY2spCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICdp bnN0YWxsICdjaGVjawo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEqICgjOmtleSBp bnB1dHMgb3V0cHV0cyB0ZXN0cz8gcGFyYWxsZWwtdGVzdHM/Cj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOmFsbG93LW90aGVyLWtleXMpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICh3aGVuIHRlc3RzPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGxldAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo KGpvYi1jb3VudCAobnVtYmVyLT5zdHJpbmcKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAob3IgKGFuZCBwYXJhbGxlbC10 ZXN0cz8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocGFyYWxsZWwtam9iLWNvdW50KSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIDEpKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHNldGVudiAiUkRCQVNFIiAoY2Fub25pY2FsaXplLXBhdGggIi4uL3NvdXJjZSIpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtaW5zdGFsbGVkLXB5dGhv bnBhdGggaW5wdXRzIG91dHB1dHMpClRoaXMgbGluZSBzaG91bGQgYWxzbyBiZSBwcmUtY2hlY2ss IG1heWJlIGV2ZW4gdGhlc2UgdHdvIGxpbmVzLgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChpbnZva2UgImN0ZXN0Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiLWoiIGpvYi1jb3VudAo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiLUUiIChzdHJpbmctYXBwZW5kCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIDs7IG5lZWQgcGlja2xlZCBkYXRhCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICIocHlEaXNjcmV0ZVZhbHVlVmVj dCIKPiAifHB5U3BhcnNlSW50VmVjdCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInxncmFwaG1vbHRlc3RQaWNrbGVyIgo+ ICJ8cHlQYXJ0aWFsQ2hhcmdlcyIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInxzdWJzdHJ1Y3RMaWJyYXJ5VGVzdCIKPiAi fHB5RmVhdHVyZXMiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICJ8cHl0aG9uVGVzdERpck1MIgo+ICJ8cHl0aG9uVGVzdERp ckNoZW0iCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIDs7IENhdGNoaW5nIFB5dGhvbiBleGNlcHRpb24gZmFpbHMKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgInxweVJhbmtlcikiKSkpKQpVc2Ugc3RyaW5nLWpvaW4gaW5zdGVhZC4KPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgI3QpKSkpKQo+ICvCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9y ZGtpdC5vcmcvIikKPiArwqDCoMKgIChzeW5vcHNpcyAiT3Blbi1Tb3VyY2UgQ2hlbWluZm9ybWF0 aWNzIFNvZnR3YXJlIikKIk9wZW4tU291cmNlIiBpcyBtZWFuaW5nbGVzcyBpbiBHdWl4Lgo+ICvC oMKgwqAgKGRlc2NyaXB0aW9uICJSREtpdCBpcyBhIGNvbGxlY3Rpb24gb2YgY2hlbWluZm9ybWF0 aWNzIGFuZAo+ICttYWNoaW5lLWxlYXJuaW5nIHNvZnR3YXJlIHdyaXR0ZW4gaW4gQysrIGFuZCBQ eXRob24uIikKTm90IHBhcnRpY3VsYXJseSBkZXNjcmlwdGl2ZSwgYnV0IHRoZW4gYWdhaW4sIG5l aXRoZXIgaXMgcmRraXQgaXRzZWxmLgoKQ2hlZXJzCg== From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 04 07:05:16 2022 Received: (at 58261) by debbugs.gnu.org; 4 Oct 2022 11:05:16 +0000 Received: from localhost ([127.0.0.1]:52640 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1offjf-0004K8-Bg for submit@debbugs.gnu.org; Tue, 04 Oct 2022 07:05:16 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:35204) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ofbrl-0003xQ-9L for 58261@debbugs.gnu.org; Tue, 04 Oct 2022 02:57:22 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MhT6471j5z3wcD; Tue, 4 Oct 2022 08:57:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1664866637; bh=ome/bZQc83EGCqjG2E+fpA+VcGR53Zu2UpdH0R4SNxU=; h=Subject:From:To:Date:In-Reply-To:References; b=kUoY9QABMCrSWw6FjziWzahfG8ZhT94RgWGGW2OknLZrSQVUrfx5TsBwPyjm9PUuj KJE+XhAZMIyC1d17QMR0ezC5dpQ+t305RyWRCoZVx3LwFW9OCLhown4a1jDSjnmu17 gErTFIyS0+bn9sNYC8cgpbOh8P1xkT1DsQYP78mI= Message-ID: <8bb83d6aed9a6ce7687e1f016a7bc0feb3acf754.camel@tugraz.at> Subject: Re: [PATCH 01/11] gnu: Add fast-float. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Tue, 04 Oct 2022 08:57:16 +0200 In-Reply-To: <36cffcc5a0f65b1ed2f8fe34efd31a8d08a56d55.1664725832.git.david.elsing@posteo.net> References: <36cffcc5a0f65b1ed2f8fe34efd31a8d08a56d55.1664725832.git.david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: G/VXY7/6zeyuAY/PU2/0qw X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-Mailman-Approved-At: Tue, 04 Oct 2022 07:05:12 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: > * gnu/packages/cpp.scm (fast-float): New variable. > --- > =C2=A0gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++ > =C2=A01 file changed, 24 insertions(+) >=20 > diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm > index d03e0bc7e1..e597dba40c 100644 > --- a/gnu/packages/cpp.scm > +++ b/gnu/packages/cpp.scm > @@ -29,6 +29,7 @@ > =C2=A0;;; Copyright =C2=A9 2022 muradm > =C2=A0;;; Copyright =C2=A9 2022 Attila Lendvai > =C2=A0;;; Copyright =C2=A9 2022 Arun Isaac > +;;; Copyright =C2=A9 2022 David Elsing > =C2=A0;;; > =C2=A0;;; This file is part of GNU Guix. > =C2=A0;;; > @@ -1907,3 +1908,26 @@ (define-public cpp-mustache > =C2=A0templated string type for compatibility with any STL-like string > (std::string, > =C2=A0std::wstring, etc).") > =C2=A0=C2=A0=C2=A0=C2=A0 (license license:boost1.0))) > + > +(define-public fast-float > +=C2=A0 (package > +=C2=A0=C2=A0=C2=A0 (name "fast-float") > +=C2=A0=C2=A0=C2=A0 (version "3.5.1") > +=C2=A0=C2=A0=C2=A0 (source (origin > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (method git-fetch) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (uri (git-reference > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/fastflo= at/fast_float") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" versi= on)))) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (file-name (git-file-name name version)) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 (sha256 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 (base32 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 > "0z3rxxd0pwvw70dbnv63rm67biw829vdqf50y16isxm6g3sbrz8g")))) > +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) > +=C2=A0=C2=A0=C2=A0 (arguments > +=C2=A0=C2=A0=C2=A0=C2=A0 ;; Tests require downloading a lot of additiona= l data > +=C2=A0=C2=A0=C2=A0=C2=A0 (list #:tests? #f)) I'm not quite sure how much you mean by "a lot" =E2=80=93 it seems to be on= e repo [1], but more importantly, you could try to disable the tests that require external fetches. > +=C2=A0=C2=A0=C2=A0 (home-page "https://github.com/fastfloat/fast_float") > +=C2=A0=C2=A0=C2=A0 (synopsis "Fast and exact implementation of the C++ f= rom_chars > functions") I'd call this a "Floating point number parser" or if you prefer the verb form "Parse floating point numbers". > +=C2=A0=C2=A0=C2=A0 (description "@code{fast_float} is a header-only C++ = library > which provides fast > +implementations of the from_chars functions for float and double > types.") "@code{fast_float} is a header-only C++ library for parsing floating point numbers from strings." If you want to mention its speed, add "Benchmarks show that it is several times faster than strtod." > +=C2=A0=C2=A0=C2=A0 (license (list license:asl2.0 license:expat)))) ; dua= l licensed Weird choice, but okay. Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:08:39 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:08:39 +0000 Received: from localhost ([127.0.0.1]:37088 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogoxr-0005LW-5q for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:08:39 -0400 Received: from mout01.posteo.de ([185.67.36.65]:38611) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogoxp-0005LH-8D for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:08:38 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 22AE8240026 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:08:28 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155311; bh=XwP9oRceT3o61UBLwqo/M7P9acpgjmKBHuv1ufmu6jU=; h=From:To:Subject:Date:From; b=XGrW89bP7aLVskBWcPY5rOYFLLZ6/C4Sen3nnigNgaUbPSlZBhqSbJ/AbxDMfLfrd Objs/lu0dt3bN2wyY8NmLKKNbrDnrv/x5xHQ37CNCNZ8uJzEUpXX7H7X2yZ9H8PY7I f9DjV8ZfsBeALwpZY/V8ysAR+M16I+M2Yl25+1blNzyu4gezkmZktOfXyDHUlHlXrz 4hF+aipOfTYUysfwtauMwffntLYF7HWhJKyL4c4eJ/gfKf72bDjfQb56g7I2QOvkfC pLs3EdabqzZf/4pjOLED+Rhu4h8hJdUS5rWvLsln8I1s4xz0bXBiPtUX6w4vSKMYT3 q/joJAq74F4yA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWsR5hpFz9rxP; Fri, 7 Oct 2022 17:08:27 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 01/11] gnu: Add fast-float. In-Reply-To: <8bb83d6aed9a6ce7687e1f016a7bc0feb3acf754.camel@tugraz.at> Date: Fri, 07 Oct 2022 15:08:27 +0000 Message-ID: <86ilkv6590.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: >> * gnu/packages/cpp.scm (fast-float): New variable. >> --- >> =C2=A0gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++ >> =C2=A01 file changed, 24 insertions(+) >>=20 >> diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm >> index d03e0bc7e1..e597dba40c 100644 >> --- a/gnu/packages/cpp.scm >> +++ b/gnu/packages/cpp.scm >> @@ -29,6 +29,7 @@ >> =C2=A0;;; Copyright =C2=A9 2022 muradm >> =C2=A0;;; Copyright =C2=A9 2022 Attila Lendvai >> =C2=A0;;; Copyright =C2=A9 2022 Arun Isaac >> +;;; Copyright =C2=A9 2022 David Elsing >> =C2=A0;;; >> =C2=A0;;; This file is part of GNU Guix. >> =C2=A0;;; >> @@ -1907,3 +1908,26 @@ (define-public cpp-mustache >> =C2=A0templated string type for compatibility with any STL-like string >> (std::string, >> =C2=A0std::wstring, etc).") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:boost1.0))) >> + >> +(define-public fast-float >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "fast-float") >> +=C2=A0=C2=A0=C2=A0 (version "3.5.1") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/fast= float/fast_float") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" ve= rsion)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "0z3rxxd0pwvw70dbnv63rm67biw829vdqf50y16isxm6g3sbrz8g")))) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 ;; Tests require downloading a lot of addition= al data >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list #:tests? #f)) > I'm not quite sure how much you mean by "a lot" =E2=80=93 it seems to be = one > repo [1], but more importantly, you could try to disable the tests that > require external fetches. It's 262 MiB, so not too much. Oh sorry, I didn't notice that it was just one test, but now I included the test data anyway. >> +=C2=A0=C2=A0=C2=A0 (home-page "https://github.com/fastfloat/fast_float") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Fast and exact implementation of the C++ = from_chars >> functions") > I'd call this a "Floating point number parser" or if you prefer the > verb form "Parse floating point numbers". >> +=C2=A0=C2=A0=C2=A0 (description "@code{fast_float} is a header-only C++= library >> which provides fast >> +implementations of the from_chars functions for float and double >> types.") > "@code{fast_float} is a header-only C++ library for parsing floating > point numbers from strings." If you want to mention its speed, add > "Benchmarks show that it is several times faster than strtod." Is it better now? I don't think it's necessary to mention speed. >> +=C2=A0=C2=A0=C2=A0 (license (list license:asl2.0 license:expat)))) ; du= al licensed > Weird choice, but okay. > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:10:21 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:10:21 +0000 Received: from localhost ([127.0.0.1]:37092 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogozU-0005OL-QH for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:10:21 -0400 Received: from mout01.posteo.de ([185.67.36.65]:51291) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogozT-0005O1-4s for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:10:20 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 984C4240028 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:10:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155413; bh=Oth8zNEt4nLhSrY6GShPbMGjRCOqZU3ND50Z0L0vzZA=; h=From:To:Subject:Date:From; b=lBe57c7vy8pXDd0vbp83JM2OFIHKqG1A8cgD3dmHqqp6WhrAUAh95XPZwaylemLn2 ABlHi2jJ5+UKGcrAyXyBG1CL0/IcFem+hlGxVXhFgZ2kHcDNSpn+B954EMNEg18VpS WDkqdh8qzmly7di/ygIaeXRkFG6RfEKwmOwMYoxxRMbBzzAm/NaT2ZYmdF2r77cGfi buHk3CAqiurG3shD4kQIm+YqT13DBXU499LcQwys1RpxrmtoUAxjnP1eGdQdJVvXiS MUgNfn+9Jg2fRI7oGUIyAcHeCUwTVVNfxf8Il6NRdxE5IWmoP+/jyK4d42c/9+WJgd Ln2EqHUgXD+Vg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWvT18MSz9rxF; Fri, 7 Oct 2022 17:10:13 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 02/11] gnu: Add pocketfft. In-Reply-To: <1458bec927ed2e86579d05af73d3daf5211fc7ff.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:10:12 +0000 Message-ID: <86h70f6563.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jhei5hdD4gd3Jp dGVzOg0KDQo+IEFtIE1vbnRhZywgZGVtIDAzLjEwLjIwMjIgdW0gMDA6MTkgKzAwMDAgc2Nocmll YiBEYXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtIChwb2NrZXRmZnQpOiBO ZXcgdmFyaWFibGUuDQo+PiAtLS0NCj4+IMKgZ251L3BhY2thZ2VzL2NwcC5zY20gfCAyNiArKysr KysrKysrKysrKysrKysrKysrKysrKw0KPj4gwqAxIGZpbGUgY2hhbmdlZCwgMjYgaW5zZXJ0aW9u cygrKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NwcC5zY20gYi9nbnUvcGFj a2FnZXMvY3BwLnNjbQ0KPj4gaW5kZXggZTU5N2RiYTQwYy4uNjVkZjMxNzEwMCAxMDA2NDQNCj4+ IC0tLSBhL2dudS9wYWNrYWdlcy9jcHAuc2NtDQo+PiArKysgYi9nbnUvcGFja2FnZXMvY3BwLnNj bQ0KPj4gQEAgLTE5MzEsMyArMTkzMSwyOSBAQCAoZGVmaW5lLXB1YmxpYyBmYXN0LWZsb2F0DQo+ PiDCoMKgwqDCoCAoZGVzY3JpcHRpb24gIkBjb2Rle2Zhc3RfZmxvYXR9IGlzIGEgaGVhZGVyLW9u bHkgQysrIGxpYnJhcnkNCj4+IHdoaWNoIHByb3ZpZGVzIGZhc3QNCj4+IMKgaW1wbGVtZW50YXRp b25zIG9mIHRoZSBmcm9tX2NoYXJzIGZ1bmN0aW9ucyBmb3IgZmxvYXQgYW5kIGRvdWJsZQ0KPj4g dHlwZXMuIikNCj4+IMKgwqDCoMKgIChsaWNlbnNlIChsaXN0IGxpY2Vuc2U6YXNsMi4wIGxpY2Vu c2U6ZXhwYXQpKSkpIDsgZHVhbCBsaWNlbnNlZA0KPj4gKw0KPj4gKyhkZWZpbmUtcHVibGljIHBv Y2tldGZmdA0KPj4gK8KgIChsZXQgKChjb21taXQgImRhYThiYjE4MzI3YmM1YzdkMjJjNjk0Mjhj MjVjZjVkYzY0MTY3ZDMiKQ0KPj4gKHJldmlzaW9uICIwIikpDQo+IFNwbGl0IGludG8gdHdvIGxp bmVzDQo+PiArwqDCoMKgIChwYWNrYWdlDQo+PiArwqDCoMKgwqDCoCAobmFtZSAicG9ja2V0ZmZ0 IikNCj4+ICvCoMKgwqDCoMKgICh2ZXJzaW9uIChnaXQtdmVyc2lvbiAiMC4wLjAiIHJldmlzaW9u IGNvbW1pdCkpDQo+IEknZCBzaW1wbHkgdXNlICIwIiwgYnV0IFlNTVYuDQo+PiArwqDCoMKgwqDC oCAoc291cmNlIChvcmlnaW4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1l dGhvZCBnaXQtZmV0Y2gpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkg KGdpdC1yZWZlcmVuY2UNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHVybCAiaHR0cHM6Ly9naXRodWIuY29tL21yZWluZWNrL3BvY2tldGZmdCIpDQo+IE5v dGUgdGhhdCB0aGVyZSdzIGFsc28gaHR0cHM6Ly9naXRsYWIubXBjZGYubXBnLmRlL210ci9wb2Nr ZXRmZnQgd2hpY2gNCj4gaXMgQzk5LWNvbXBsaWFudC4gIA0KSSByZW5hbWVkIGl0IHRvIHBvY2tl dGZmdC1jcHAsIGlzIHRoYXQgZmluZT8NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKGNvbW1pdCBjb21taXQpKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQ0KPj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2DQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqANCj4+ICIxZGJra3FrbWt4Z216MXFqcHNxemljNWlnM3F3MXBxbmRiYjNkdmpj N3hxNWYycmR6eXExIikpKSkNCj4+ICvCoMKgwqDCoMKgIChidWlsZC1zeXN0ZW0gY29weS1idWls ZC1zeXN0ZW0pDQo+PiArwqDCoMKgwqDCoCAoYXJndW1lbnRzDQo+PiArwqDCoMKgwqDCoMKgIChs aXN0DQo+PiArwqDCoMKgwqDCoMKgwqAgIzppbnN0YWxsLXBsYW4NCj4+ICvCoMKgwqDCoMKgwqDC oCAjficoKCJwb2NrZXRmZnRfaGRyb25seS5oIiAiaW5jbHVkZS8iKSkpKQ0KPj4gK8KgwqDCoMKg wqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9naXRodWIuY29tL21yZWluZWNrL3BvY2tldGZmdCIpDQo+ PiArwqDCoMKgwqDCoCAoc3lub3BzaXMgIkhlYXZpbHkgbW9kaWZpZWQgaW1wbGVtZW50YXRpb24g b2YgRkZUUGFjayBpbiBDKysiKQ0KPiBJJ2Qgd3JpdGUgb3V0ICJGYXN0IEZvdXJpZXIgVHJhbnNm b3JtYXRpb24iIGFuZCBwZXJoYXBzIG9uZSBvciB0d28NCj4gb3RoZXIgcHJvcGVydGllcywgZS5n LiAiSGVhZGVyLW9ubHkgRmFzdCBGb3VyaWVyIFRyYW5zZm9ybWF0aW9uDQo+IGxpYnJhcnkiLg0K Pj4gK8KgwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJUaGlzIHBhY2thZ2UgY29udGFpbnMgdGhlIHNp bmdsZS1oZWFkZXINCj4+IFBvY2tldEZGVCBsaWJyYXJ5LA0KPj4gK3doaWNoIGlzIGFuIHJlaW1w bGVtZW50YXRpb24gb2YgRkZUUGFjayB3aXRoIHNldmVyYWwgYWR2YW50YWdlcywNCj4+IHN1Y2gg YXMNCj4+ICttdWx0aWRpbWVuc2lvbmFsIGFsZ29yaXRobXMsIGRpZmZlcmVudCBkYXRhdHlwZXMg YW5kIHZlY3Rvcg0KPj4gaW5zdHJ1Y3Rpb25zLiIpDQo+ICJUaGlzIHBhY2thZ2UgcHJvdmlkZXMg YSBzaW5nbGUtaGVhZGVyIEMrKzExIGxpYnJhcnkgZm9yIGNvbXB1dGluZyBGYXN0DQo+IEZvdXJp ZXIgdHJhbnNmb3JtYXRpb25zLiAgSXQgc3VwcG9ydHMgbXVsdGlkaW1lbnNpb25hbCBhcnJheXMs DQo+IGRpZmZlcmVudCBmbG9hdGluZyBwb2ludCBzaXplcyBhbmQgY29tcGxleCB0cmFuc2Zvcm1h dGlvbnMuIiAgQXMgZm9yDQo+IHRoZSB2ZWN0b3IgaW5zdHJ1Y3Rpb25zLCB3ZSBzaG91bGQgY29u dmVydCB0aGUgI2lmbmRlZg0KPiBQT0NLRVRGRlRfTk9fVkVDVE9SUyBjaGVja3MgdG8gI2lmIFBP Q0tFVEZGVF9OT19WRUNUT1JTIGFuZCBpbnNlcnQgYQ0KPiBjaGVjayB0aGF0IGRlZmluZXMgaXQg dG8gMSBpZiB1bnNldCAoZm9yIHJlcHJvZHVjaWJpbGl0eSBvZiBvdGhlcg0KPiBwYWNrYWdlcyku DQpPaCB0aGF0J3MgYSBnb29kIHBvaW50ISBJIGFzc3VtZSB5b3UgbWVhbiAjaWYgIShQT0NLRVRG RlRfTk9fVkVDVE9SUyk/DQo+PiArwqDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNlOmJzZC0zKSkp KQ0KPg0KPiBDaGVlcnMNCg== From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:10:59 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:10:59 +0000 Received: from localhost ([127.0.0.1]:37096 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp07-0005PV-1A for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:10:59 -0400 Received: from mout01.posteo.de ([185.67.36.65]:37493) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp03-0005PE-Ij for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:10:56 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 0932C24002A for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:10:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155450; bh=EUibr5/MGqXpwvl8hCqxl7yRAFAKPBcUCNBD0+Y4zw0=; h=From:To:Subject:Date:From; b=H3ixGAUwl5HV3rTmf1YKvy91oaeqfX846yyCpTXpQ2s7oVH4cb5rYYXwXSS+gW2cg SeyXmTUzdMyP3eZqdofcSqCf8qHQEmnXh3UaIN6FYxb4WEffLWVLuPAfNMk7YDax7+ 7gqAFu0KuQ7797I+HS0pMA5R+Q2J2Pq9G/77OfpKC1AlgKU80fh0TnCrI0J7N986rE Ebc5uinkZdhMa06Gty01kjHdAk8rfn6UvsnKDe8EdLM3Jl7MD1mHw4iIEQm4GPpRff s1UvQZVaXAZWMw7I5chZu4V7UrcCED3sly3agby6uMMnVtuloY1QOk3Vi6onSqst+Q 1ZZrb3SjmUIxA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWw93bD0z9rxM; Fri, 7 Oct 2022 17:10:49 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 03/11] gnu: Add sajson. In-Reply-To: <61e7edbb4d21c916338e1433886b0abaf0732567.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:10:48 +0000 Message-ID: <86fsfz6553.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: >> * gnu/packages/cpp.scm (sajson): New variable. >> --- >> =C2=A0gnu/packages/cpp.scm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 63 >> +++++++++++++++++++ >> =C2=A0.../patches/sajson-parse_flags-linking.patch=C2=A0 | 45 ++++++++++= +++ >> =C2=A02 files changed, 108 insertions(+) >> =C2=A0create mode 100644 gnu/packages/patches/sajson-parse_flags- >> linking.patch >>=20 >> diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm >> index 65df317100..7bfa3d6cdf 100644 >> --- a/gnu/packages/cpp.scm >> +++ b/gnu/packages/cpp.scm >> @@ -57,6 +57,7 @@ (define-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (guix build-system gnu) >> =C2=A0=C2=A0 #:use-module (guix build-system meson) >> =C2=A0=C2=A0 #:use-module (guix build-system python) >> +=C2=A0 #:use-module (guix build-system scons) >> =C2=A0=C2=A0 #:use-module (guix modules) >> =C2=A0=C2=A0 #:use-module (guix gexp) >> =C2=A0=C2=A0 #:use-module (gnu packages) >> @@ -1957,3 +1958,65 @@ (define-public pocketfft >> =C2=A0which is an reimplementation of FFTPack with several advantages, >> such as >> =C2=A0multidimensional algorithms, different datatypes and vector >> instructions.") >> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3)))) >> + >> +(define-public sajson >> +=C2=A0 (let ((commit "ec644013e34f9984a3cc9ba568cab97a391db9cd") >> (revision "0")) >> +=C2=A0=C2=A0=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (name "sajson") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (version (git-version "0.0.0" revision c= ommit)) > Note that the swift FFI is advertised as 1.0 and there has been a > blogpost claiming it to be 1.0 in 2013. Ah ok, then I'll set it to 1.0. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://git= hub.com/chadaustin/sajson") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit commit))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (search-patches "sajson-parse_flags- >> linking.patch")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 >> "0fjag27w7gvkc5pdhq3ad7yc09rabpzahndw1sgsg04ipznidmmq")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (snippet '(delete-file-recursively "third-party")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (build-system scons-build-system) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-p= hases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add= -after 'unpack 'disable-other-builds >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (substitute* "SConstruct" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (("for name, tools in builds:") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "for name, tools in [('opt', [gcc, = opt])]:")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add= -after 'unpack 'use-external-unittest-cpp >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda* (#:key inputs #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (substitute* "SConscript" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (("unittestpp_env\\.Library") "_dummy =3D= ") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (("test_env =3D env.Clone\\(tools=3D\\[un= ittestpp, >> sajson\\]\\)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "test_env =3D env.Clone(tools= =3D[sajson])\n" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "test_env.Append(CPPPATH=3D'" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (search-input-directory inputs >> "/include/UnitTest++") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "', LIBPATH=3D'" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append #$(this-packag= e-native-input >> "unittest-cpp") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "/lib") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "', LIBS=3D['UnitTest++'])"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (rep= lace 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda* (#:key tests? #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke "build/opt/test") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke "build/opt/test_unsorted")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (rep= lace 'install >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (let ((out (string-append #$output "/include"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (install-file "include/sajson.h" out) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (install-file "include/sajson_ostream.h" = out)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #t))))) > You don't need the trailing #ts Oh thanks, I think I read something outdated. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (native-inputs (list unittest-cpp)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (home-page "https://github.com/chadausti= n/sajson") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (synopsis "Lightweight, extremely high-p= erformance JSON parser >> for C++11") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (description "sajson is a high-performan= ce, in-place JSON >> parser >> +header-only library.") > Cut down on the ads. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (license license:expat)))) >> diff --git a/gnu/packages/patches/sajson-parse_flags-linking.patch >> b/gnu/packages/patches/sajson-parse_flags-linking.patch >> new file mode 100644 >> index 0000000000..878706dc79 >> --- /dev/null >> +++ b/gnu/packages/patches/sajson-parse_flags-linking.patch >> @@ -0,0 +1,45 @@ >> +This patch is from the upstream pull request >> +https://github.com/chadaustin/sajson/pull/54. >> +It fixes linking with GCC. >> + >> +diff --git a/include/sajson.h b/include/sajson.h >> +index 8b4e05a..1bd045b 100644 >> +--- a/include/sajson.h >> ++++ b/include/sajson.h >> +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, >> size_t value) { >> + // header. This trick courtesy of Rich Geldreich's Purple JSON >> parser. >> + template >> + struct globals_struct { >> ++=C2=A0=C2=A0=C2=A0 static const unsigned char parse_flags[256]; >> ++}; >> ++typedef globals_struct<> globals; >> ++ >> + // clang-format off >> +=20 >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 0 (1) - set if: plain ASCII string char= acter >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 1 (2) - set if: whitespace >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 4 (0x10) - set if: 0-9 e E . >> +-=C2=A0=C2=A0=C2=A0 constexpr static const uint8_t parse_flags[256] =3D= { >> ++=C2=A0=C2=A0=C2=A0 template >> ++=C2=A0=C2=A0=C2=A0 const unsigned char globals_struct::parse_f= lags[256] =3D >> { >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // 0=C2=A0=C2=A0=C2=A0 1=C2=A0=C2=A0=C2= =A0 2=C2=A0=C2=A0=C2=A0 3=C2=A0=C2=A0=C2=A0 4=C2=A0=C2=A0=C2=A0 5=C2=A0=C2= =A0=C2=A0 6=C2=A0=C2=A0=C2=A0 7=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 8=C2=A0=C2=A0= =C2=A0 9=C2=A0=C2=A0=C2=A0 A=C2=A0=C2=A0=C2=A0 >> B=C2=A0=C2=A0=C2=A0 C=C2=A0=C2=A0=C2=A0 D=C2=A0=C2=A0=C2=A0 E=C2=A0=C2= =A0=C2=A0 F >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 2,=C2=A0=C2=A0 2,=C2=A0= =C2=A0 >> 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 2,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0, // 0 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0= =C2=A0 >> 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0, // 1 >> +@@ -162,15 +167,13 @@ struct globals_struct { >> +=C2=A0=C2=A0=C2=A0=C2=A0 }; >> +=20 >> + // clang-format on >> +-}; >> +-typedef globals_struct<> globals; >> +=20 >> +-constexpr inline bool is_plain_string_character(char c) { >> ++inline bool is_plain_string_character(char c) { >> +=C2=A0=C2=A0=C2=A0=C2=A0 // return c >=3D 0x20 && c <=3D 0x7f && c !=3D= 0x22 && c !=3D 0x5c; >> +=C2=A0=C2=A0=C2=A0=C2=A0 return (globals::parse_flags[static_cast(c)] & >> 1) !=3D 0; >> + } >> +=20 >> +-constexpr inline bool is_whitespace(char c) { >> ++inline bool is_whitespace(char c) { >> +=C2=A0=C2=A0=C2=A0=C2=A0 // return c =3D=3D '\r' || c =3D=3D '\n' || c = =3D=3D '\t' || c =3D=3D ' '; >> +=C2=A0=C2=A0=C2=A0=C2=A0 return (globals::parse_flags[static_cast(c)] & >> 2) !=3D 0; >> + } > Since this fixes an error that occurs when building with GCC 10, the > patch name should reflect that, e.g. "sajson-build-with-gcc10" (whether > you include or do not include a dash between gcc and 10 doesn't seem to > matter). > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:11:14 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:11:14 +0000 Received: from localhost ([127.0.0.1]:37101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp0L-0005QS-MO for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:11:14 -0400 Received: from mout02.posteo.de ([185.67.36.66]:53341) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp0J-0005QD-L3 for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:11:12 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B1D40240101 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:11:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155465; bh=P7GEeXfp/hVfxCvxHCEFTqs81I7h4vNFRJ5SN4gDIZY=; h=From:To:Subject:Date:From; b=a5gVRrpIC5iyJ5m9T2+ihTrKJMD10Bxs5iWidVLhEREdGr3rOS0Hoa5oQlZmBw0rN QmqsIeAomMHksenJf6ekXKMQpjAKh/YarHkKCFsGII+47VXaktOhf7lAjkLH/E4A9W 022VfeXNuszFtnl++3IiEieltsXwPXyEfmLyCNQts8grndZ92xeAfY6N+z3nCiJiks KksCCGfGRbRrfcwlRaq8GdSzpPWJhnIq5TUgm9amcxqCAr0OmWt5LOonjlpEXgLjbS uTFNw/suZwi0k6J9bL9ecCN3GqA7pT4KrgXu1e7e8wpY3IEY9fRwppzB04/3wm11++ CZ+UtlqXAx+Fw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWwS6jkMz9rxK; Fri, 7 Oct 2022 17:11:04 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 04/11] gnu: Add tinydir. In-Reply-To: Date: Fri, 07 Oct 2022 15:11:04 +0000 Message-ID: <86edvj654n.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jhei5hdD4gd3Jp dGVzOg0KDQo+IEFtIE1vbnRhZywgZGVtIDAzLjEwLjIwMjIgdW0gMDA6MTkgKzAwMDAgc2Nocmll YiBEYXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtICh0aW55ZGlyKTogTmV3 IHZhcmlhYmxlLg0KPj4gLS0tDQo+PiDCoGdudS9wYWNrYWdlcy9jcHAuc2NtIHwgMzggKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4+IMKgMSBmaWxlIGNoYW5nZWQsIDM4 IGluc2VydGlvbnMoKykNCj4+IA0KPj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jcHAuc2Nt IGIvZ251L3BhY2thZ2VzL2NwcC5zY20NCj4+IGluZGV4IDdiZmEzZDZjZGYuLjQ4MTlmMzYwNTIg MTAwNjQ0DQo+PiAtLS0gYS9nbnUvcGFja2FnZXMvY3BwLnNjbQ0KPj4gKysrIGIvZ251L3BhY2th Z2VzL2NwcC5zY20NCj4+IEBAIC0yMDIwLDMgKzIwMjAsNDEgQEAgKGRlZmluZS1wdWJsaWMgc2Fq c29uDQo+PiDCoMKgwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJzYWpzb24gaXMgYSBoaWdoLXBlcmZv cm1hbmNlLCBpbi1wbGFjZSBKU09ODQo+PiBwYXJzZXINCj4+IMKgaGVhZGVyLW9ubHkgbGlicmFy eS4iKQ0KPj4gwqDCoMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQpKSkpDQo+PiArDQo+ PiArKGRlZmluZS1wdWJsaWMgdGlueWRpcg0KPj4gK8KgIChwYWNrYWdlDQo+PiArwqDCoMKgIChu YW1lICJ0aW55ZGlyIikNCj4+ICvCoMKgwqAgKHZlcnNpb24gIjEuMi41IikNCj4+ICvCoMKgwqAg KHNvdXJjZSAob3JpZ2luDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBn aXQtZmV0Y2gpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJlZmVy ZW5jZQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwgImh0 dHBzOi8vZ2l0aHViLmNvbS9jeG9uZy90aW55ZGlyIikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IHZlcnNpb24pKSkNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpDQo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ng0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKGJhc2UzMg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oA0KPj4gIjFucHJnZGZ4NGk4d3pjMWlkdzZjaGFuNGZqZmE3NWI1bGw4a2doZGMwcTIyNzhwbnky NTkiKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1 aWxkIHV0aWxzKSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNuaXBwZXQgJyhk ZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidGVzdHMvY2JlaGF2ZSIpKSkpDQo+PiArwqDCoMKgIChi dWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQ0KPj4gK8KgwqDCoCAoYXJndW1lbnRzDQo+ PiArwqDCoMKgwqAgKGxpc3QNCj4+ICvCoMKgwqDCoMKgIDs7IFRlc3RzIHJlcXVpcmUgY2JlaGF2 ZSBhbmQgcmx1dGlsDQo+PiArwqDCoMKgwqDCoCAjOnRlc3RzPyAjZg0KPiBUaGVuIHRob3NlIHNo b3VsZCBiZSBwYWNrYWdlZC4NClRoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIHRlc3RzIGluY2x1ZGUg YSBub24tdHJpdmlhbGx5IG1vZGlmaWVkDQpmb3JrIG9mIGNiZWhhdmUsIHdoaWNoIHVzZXMgYW4g b2xkZXIgKGJ1bmRsZWQpIGNvcHkgb2Ygcmx1dGlsIGZvciBjb2xvcg0Kb3V0cHV0LiBIb3cgc2hv dWxkIEkgZGVhbCB3aXRoIHRoYXQ/DQo+PiArwqDCoMKgwqDCoCAjOnBoYXNlcw0KPj4gK8KgwqDC oMKgwqAgOzsgQnVpbGQgc2FtcGxlcyBpbnN0ZWFkIG9mIHRlc3RzDQo+PiArwqDCoMKgwqDCoCAj fihtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAg KGFkZC1hZnRlciAndW5wYWNrICdjaGRpcg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxh bWJkYSBfIChjaGRpciAic2FtcGxlcyIpICN0KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFk ZC1hZnRlciAnYnVpbGQgJ2NoZGlyLWJhY2sNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChs YW1iZGEgXyAoY2hkaXIgIi4uIikgI3QpKQ0KPiBXZSBkb24ndCB0eXBpY2FsbHkgYnVpbGQgc2Ft cGxlcy4NCkFoIG9rIDopDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdpbnN0YWxs DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8NCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxlICJ0aW55ZGlyLmgiIChzdHJpbmctYXBwZW5kICMk b3V0cHV0DQo+PiAiL2luY2x1ZGUiKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAj dCkpKSkpDQo+PiArwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vZ2l0aHViLmNvbS9jeG9uZy90 aW55ZGlyIikNCj4+ICvCoMKgwqAgKHN5bm9wc2lzICJMaWdodHdlaWdodCwgcG9ydGFibGUgYW5k IGVhc3kgdG8gaW50ZWdyYXRlIEMNCj4+IGRpcmVjdG9yeSBhbmQNCj4+ICtmaWxlIHJlYWRlciIp DQo+PiArwqDCoMKgIChkZXNjcmlwdGlvbiAidGlueWRpciBpcyBhIGhlYWRlci1vbmx5IEMgbGli cmFyeSB0byBwb3J0YWJseQ0KPj4gcmVhZCBmaWxlcw0KPj4gK2FuZCBkaXJlY3Rvcmllcy4iKQ0K PiBDdXQgZG93biBvbiB0aGUgYWRzLg0KPj4gK8KgwqDCoCAobGljZW5zZSBsaWNlbnNlOmJzZC0y KSkpDQo+DQo+IENoZWVycw0K From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:11:46 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:11:46 +0000 Received: from localhost ([127.0.0.1]:37104 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp0s-0005RB-3j for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:11:46 -0400 Received: from mout02.posteo.de ([185.67.36.66]:37591) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp0q-0005Qy-9M for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:11:44 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B9316240101 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:11:38 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155498; bh=ucBpnQmpoFQjjopZye0aKx9mazTwdmF713aP6kkp2WM=; h=From:To:Subject:Date:From; b=RUnZd/30Hci4yVgwa/x16hShK8jDhYG9VdDwGfxwTscbwFgQfYlyjNWJvXpnxb9YX GOl+rZ14Nzfuoh8SyUS3fNfDC0LpCCeffTRZ6nvtGDFQbuLBGTLbD70wRomaED98pT OP4fFVbgoHDK6FjMnfSEOf/7KHe+FZF9afdr+1zjojr+lMq7c6bTwWBPWQnevvm4ya Ci61Qf2VwwH2qaY+/FShYFnMSkL9f1JEZ0TDgLSxNNuxHi+U4gQ0NMqebVqjLfMKFQ 23745hs05UDjktBxhu4CmjjvaB+iYqOhdDiPQblyJgO6cJTxmMN+DlZot2HqQKpTfu M7EdQmfOu8rog== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWx62MC9z9rxB; Fri, 7 Oct 2022 17:11:38 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 05/11] gnu: Add optionparser. In-Reply-To: <0577bbf625f88200f6cedab444262f92b3834820.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:11:37 +0000 Message-ID: <86czb3653q.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jhei5hdD4gd3Jp dGVzOg0KDQo+IEFtIE1vbnRhZywgZGVtIDAzLjEwLjIwMjIgdW0gMDA6MTkgKzAwMDAgc2Nocmll YiBEYXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtIChvcHRpb25wYXJzZXIp OiBOZXcgdmFyaWFibGUuDQo+PiAtLS0NCj4+IMKgZ251L3BhY2thZ2VzL2NwcC5zY20gfCA1MA0K Pj4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4+IMKgMSBm aWxlIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKykNCj4+IA0KPj4gZGlmZiAtLWdpdCBhL2dudS9w YWNrYWdlcy9jcHAuc2NtIGIvZ251L3BhY2thZ2VzL2NwcC5zY20NCj4+IGluZGV4IDQ4MTlmMzYw NTIuLmIzMDIwNTEwOWUgMTAwNjQ0DQo+PiAtLS0gYS9nbnUvcGFja2FnZXMvY3BwLnNjbQ0KPj4g KysrIGIvZ251L3BhY2thZ2VzL2NwcC5zY20NCj4+IEBAIC0yMDU4LDMgKzIwNTgsNTMgQEAgKGRl ZmluZS1wdWJsaWMgdGlueWRpcg0KPj4gwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJ0aW55ZGlyIGlz IGEgaGVhZGVyLW9ubHkgQyBsaWJyYXJ5IHRvIHBvcnRhYmx5DQo+PiByZWFkIGZpbGVzDQo+PiDC oGFuZCBkaXJlY3Rvcmllcy4iKQ0KPj4gwqDCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMikp KQ0KPj4gKw0KPj4gKyhkZWZpbmUtcHVibGljIG9wdGlvbnBhcnNlcg0KPj4gK8KgIChwYWNrYWdl DQo+PiArwqDCoMKgIChuYW1lICJvcHRpb25wYXJzZXIiKQ0KPj4gK8KgwqDCoCAodmVyc2lvbiAi MS43IikNCj4+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2luDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKG1ldGhvZCB1cmwtZmV0Y2gpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKHVyaQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQN Cj4+ICJtaXJyb3I6Ly9zb3VyY2Vmb3JnZS9vcHRpb25wYXJzZXIvb3B0aW9ucGFyc2VyLSINCj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHZlcnNpb24gIi50YXIuZ3oiKSkNCj4gVGhlIGZvcm1hdHR0ZXIgZG9lc24ndCBrbm93IHRo aXMsIGJ1dCBJIHRoaW5rIGluIHRoaXMgY2FzZSBpdCBtaWdodCBiZQ0KPiB3aXNlciB0byBwdWxs IHRoZSAib3B0aW9ucGFyc2VyLSIgZG93biBhIGxpbmUgb24gdGhlIHNhbWUgb25lIHdpdGgNCj4g dmVyc2lvbiAiLnRhci5neiINCldoaWNoIGZvcm1hdHRlciBkbyB5b3UgbWVhbj8gSXMgaXQgb2sg aWYgSSBqdXN0IHVzZSBFbWFjcyB3aXRoIHRoZSBydWxlcw0KaW4gLmRpci1sb2NhbHMuZWwgYW5k IGd1aXggbGludD8gV2hlbiBJIHVzZWQgZ3VpeCBzdHlsZSwgbGluZXMgc29tZXRpbWVzDQpleGNl ZWQgODAgY2hhcmFjdGVycy4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2 DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyDQo+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgDQo+PiAiMDRnZnhyZHp3YWNheW5iOHNjc3o2cnI3bmg2NG42 eWs2dzlkaDJxZGhyeHc0Y2FxcjBkayIpKSkpDQo+PiArwqDCoMKgIChidWlsZC1zeXN0ZW0gZ251 LWJ1aWxkLXN5c3RlbSkNCj4+ICvCoMKgwqAgKGFyZ3VtZW50cw0KPj4gK8KgwqDCoMKgIChsaXN0 DQo+PiArwqDCoMKgwqDCoCAjOnBoYXNlcw0KPj4gK8KgwqDCoMKgwqAgI34obW9kaWZ5LXBoYXNl cyAlc3RhbmRhcmQtcGhhc2VzDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUgJ2NvbmZp Z3VyZSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1iZWZvcmUgJ2J1aWxkICdjaGRpcg0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfIChjaGRpciAic3JjIikgI3QpKQ0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAocmVwbGFjZSAnYnVpbGQNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChsYW1iZGEgXw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZv a2UgIm1ha2UiICItaiIgKG51bWJlci0+c3RyaW5nIChwYXJhbGxlbC1qb2ItDQo+PiBjb3VudCkp DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJleGFtcGxl X2FyZyIgInRlc3RwYXJzZSIgInRlc3RwcmludHVzYWdlIg0KPj4gInRlc3RvZHIiDQo+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJleGFtcGxlIikNCj4gIzpt YWtlLWZsYWdzIGV4aXN0LiAgQWxzbywgdGhpcyBpcyBhIGJhZCB3YXkgdG8gaGlkZSB0aGF0IHlv dSdyZQ0KPiBtaXNzaW5nIGRveHlnZW4uDQpPb3BzLCBJIGRvbid0IHJlbWVtYmVyIHdoeSBJIGRp ZCB0aGF0LCBpdCBpcyBlYXNpZXIgdG8ganVzdCBidWlsZCB0aGUNCmRvY3VtZW50YXRpb24uLi4N Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpDQo+PiArwqDCoMKgwqDCoMKgwqDC oMKgIChyZXBsYWNlICdjaGVjaw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSog KCM6a2V5IHRlc3RzPyAjOmFsbG93LW90aGVyLWtleXMpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGlmIHRlc3RzPw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGJlZ2luDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGlu dm9rZSAiLi9leGFtcGxlX2FyZyIpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGludm9rZSAiLi90ZXN0cGFyc2UiKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgIi4vdGVzdHByaW50dXNhZ2UiKQ0KPj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgIi4vdGVzdG9kciIpDQo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAiLi9leGFt cGxlIikpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZm9ybWF0ICN0 ICJ0ZXN0IHN1aXRlIG5vdCBydW5+JSIpKSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBs YWNlICdpbnN0YWxsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8NCj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxlICJvcHRpb25wYXJzZXIuaCIg KHN0cmluZy1hcHBlbmQgIyRvdXRwdXQNCj4+ICIvaW5jbHVkZSIpKQ0KPj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICN0KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAn aW5zdGFsbCAnY2hkaXItYmFjaw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBf IChjaGRpciAiLi4iKSAjdCkpKSkpDQo+IEknbSBwcmV0dHkgc3VyZSB0aGlzIHNob3VsZG4ndCBi ZSBuZWVkZWQuDQo+PiArwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vb3B0aW9ucGFyc2VyLnNv dXJjZWZvcmdlLm5ldC8iKQ0KPj4gK8KgwqDCoCAoc3lub3BzaXMgIkhlYWRlci1vbmx5IEMrKyBs aWJyYXJ5IHRvIHBhcnNlIGNvbW1hbmQgbGluZQ0KPj4gb3B0aW9ucyIpDQo+PiArwqDCoMKgIChk ZXNjcmlwdGlvbiAiVGhlIExlYW4gTWVhbiBDKysgT3B0aW9uIFBhcnNlciBoYW5kbGVzIHRoZQ0K Pj4gcHJvZ3JhbSdzDQo+PiArY29tbWFuZCBsaW5lIGFyZ3VtZW50cyAoYXJnYywgYXJndikuwqAg SXQgc3VwcG9ydHMgdGhlIHNob3J0IGFuZCBsb25nDQo+PiBvcHRpb24NCj4+ICtmb3JtYXRzIG9m IGdldG9wdCgpLCBnZXRvcHRfbG9uZygpIGFuZCBnZXRvcHRfbG9uZ19vbmx5KCkgYnV0IGhhcyBh DQo+PiBtb3JlDQo+PiArY29udmVuaWVudCBpbnRlcmZhY2UuIikNCj4gQXMgYWx3YXlzLCBjdXQg ZG93biBvbiB0aGUgYWRzIDopDQo+PiArwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQpKSkN Cj4NCj4gQ2hlZXJzDQo= From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:12:04 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:12:04 +0000 Received: from localhost ([127.0.0.1]:37107 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp18-0005Rn-KI for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:04 -0400 Received: from mout01.posteo.de ([185.67.36.65]:41733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp15-0005RQ-Cm for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:00 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id D2482240028 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:11:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155513; bh=H8wZWh/uJjtSGHfZOvN0cavm4GAH8YPQZEQj3kYINfg=; h=From:To:Subject:Date:From; b=RyzaV+3S2eclnQsj4B6QRZnlbDXeIZxBpGdPK+5Xz/uRJ9hEIHwO00hZNSqVQJepY cm7h5V0L6rmKQuQN9PKo7fhXdo1FrHyggka9bpEndcP3X2ld0jJBF3lc3jGcDrG0v1 R60aQ2dstvyHT5/nXiMMC3WIJFtRiqfy+Mfm3Xb4qBzdROF6Vlthr6oHvwZkPxZOs1 BGWXnjfwC++1LN9ciNoY+1HmFCHp90bZdaJk7xK+uwsSe2CzzUNXhJhTy0HNrptXL6 8rR9i/dq3Moj/5gyUJWXacsEN0Yeux5YByIOCZjZeX+aKuhJcLa+9V7ysxAV80+n6Q VmlfzTuZKEDvg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWxP2kfGz9rxH; Fri, 7 Oct 2022 17:11:53 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 06/11] gnu: Add gemmi. In-Reply-To: <7cc7f87c99df0b7f9701779fdae7b6c4d888c2ee.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:11:52 +0000 Message-ID: <86bkqn653b.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (gemmi): New variable. >> --- >> =C2=A0gnu/packages/chemistry.scm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 122 +++++++++++ >> =C2=A0.../patches/gemmi-fix-sajson-types.patch=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 |=C2=A0 11 + >> =C2=A0.../sajson-for-gemmi-numbers-as-strings.patch | 195 >> ++++++++++++++++++ >> =C2=A03 files changed, 328 insertions(+) >> =C2=A0create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.pat= ch >> =C2=A0create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-a= s- >> strings.patch >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index c517610fe8..f8fd85814f 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -6,6 +6,7 @@ >> =C2=A0;;; Copyright =C2=A9 2020 Bj=C3=B6rn H=C3=B6fling >> >> =C2=A0;;; Copyright =C2=A9 2020 Vincent Legoll >> =C2=A0;;; Copyright =C2=A9 2021 Ricardo Wurmus >> +;;; Copyright =C2=A9 2022 David Elsing >> =C2=A0;;; >> =C2=A0;;; This file is part of GNU Guix. >> =C2=A0;;; >> @@ -23,6 +24,7 @@ >> =C2=A0;;; along with GNU Guix.=C2=A0 If not, see >> . >> =C2=A0 >> =C2=A0(define-module (gnu packages chemistry) >> +=C2=A0 #:use-module (guix gexp) >> =C2=A0=C2=A0 #:use-module (guix packages) >> =C2=A0=C2=A0 #:use-module (guix utils) >> =C2=A0=C2=A0 #:use-module ((guix licenses) #:prefix license:) >> @@ -35,6 +37,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages boost) >> =C2=A0=C2=A0 #:use-module (gnu packages check) >> =C2=A0=C2=A0 #:use-module (gnu packages compression) >> +=C2=A0 #:use-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> @@ -50,8 +53,10 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages qt) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> +=C2=A0 #:use-module (gnu packages stb) >> =C2=A0=C2=A0 #:use-module (gnu packages xml) >> =C2=A0=C2=A0 #:use-module (guix build-system cmake) >> +=C2=A0 #:use-module (guix build-system copy) >> =C2=A0=C2=A0 #:use-module (guix build-system gnu) >> =C2=A0=C2=A0 #:use-module (guix build-system python)) >> =C2=A0 >> @@ -566,3 +571,120 @@ (define-public python-pymol >> =C2=A0used to prepare publication-quality figures, to share interactive >> results with >> =C2=A0your colleagues, or to generate pre-rendered animations.") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3))) >> + >> +(define sajson-for-gemmi >> +=C2=A0 (package/inherit sajson >> +=C2=A0=C2=A0=C2=A0 (name "sajson-for-gemmi") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (inherit (package-source sajson)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches (cons >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (sear= ch-patch >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= "sajson-for-gemmi-numbers-as- >> strings.patch") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (orig= in-patches (package-source sajson)))))) >> +=C2=A0=C2=A0=C2=A0 (build-system copy-build-system) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:install-plan >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~'(("include/sajson.h" "include/") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("include/sajson= _ostream.h" "include/")))))) > These are technically two packages; therefore two patches. > You should reuse as much as you can from sajson. Since this patch is > likely to break tests, you might use an appropriately annotated > #:tests? #f to convey this information. > You mean to copy the GCC10 patch? Building the tests also fails, but the rest works. :) Should I put it in a separate commit? >> +(define-public gemmi >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "gemmi") >> +=C2=A0=C2=A0=C2=A0 (version "0.5.7") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/proj= ect-gemmi/gemmi") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" ve= rsion)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "00km5q726bslrw7xbfwb3f3mrsk19qbimfnl3hvr4wi1y3z8i18a")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (search-patches "gemmi-fix-sajson-types.patch")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 '(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively >> "include/gemmi/third_party") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively "third_party") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #t)))) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (native-inputs (list optionparser pybind11)) >> +=C2=A0=C2=A0=C2=A0 (propagated-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list fast-float >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pocketfft >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sajson-for= -gemmi >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 stb-sprintf >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pegtl >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tinydir)) > Refrain from propagating inputs. Ah ok. >> +=C2=A0=C2=A0=C2=A0 (inputs (list zlib python)) >> +=C2=A0=C2=A0=C2=A0 (outputs '("out" "bin" "python")) >> +=C2=A0=C2=A0=C2=A0 (arguments > The usual sequence is outputs, build-system, arguments, *inputs. Is there also a usual sequence for the *inputs? >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(let* ((python-lib >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 #$output:python "/lib/python" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(version-major+minor (package-version python)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "/site-packages"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (list "-DUSE_PYT= HON=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (string-append "-DPYTHON_INSTALL_DIR=3D" python-lib))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'patch-includes >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/sprintf.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/dirwalk.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/tinydir.h\"") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/cif.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/tao/pegtl.hpp\"") >> "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/json.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/sajson.h\"") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "python/gemmi.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* '("include/gemmi/atof.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 "include/gemmi/numb.hpp") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/fast_float.h\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/fourier.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/pocketfft_hdronly.h\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'patc= h-includes 'patch-cif >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/cif.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (((string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "^.*using analyze_t =3D pegtl::anal= ysis::generic" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ";= .*$")) "") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("TAOCPP_PEGTL_") "TAO_PEGTL_")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'change-bin-prefix >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "CMakeLists.txt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("install\\(TARGETS program DESTINATION bin\\)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "install(TARGETS program DESTINATION " >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$output:bin "/bin)"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (replace 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key tests? #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (with-directory-excursion "../source" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONPATH" "../build") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke "python3" "-m" "unittest" "discov= er" "-v" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "-s" "tests")))))))) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://gemmi.readthedocs.io/en/latest/") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Macromolecular crystallography library and >> utilities") >> +=C2=A0=C2=A0=C2=A0 (description "GEMMI is a C++ library for macromolecu= lar >> crystallography. >> +It can be used for working with >> +@enumerate >> +@item macromolecular models (content of PDB, PDBx/mmCIF and mmJSON >> files), >> +@item refinement restraints (CIF files), >> +@item reflection data (MTZ and mmCIF formats), >> +@item data on a 3D grid (electron density maps, masks, MRC/CCP4 >> format) >> +@item crystallographic symmetry. >> +@end enumerate") >> +=C2=A0=C2=A0=C2=A0 (license license:mpl2.0))) >> diff --git a/gnu/packages/patches/gemmi-fix-sajson-types.patch >> b/gnu/packages/patches/gemmi-fix-sajson-types.patch >> new file mode 100644 >> index 0000000000..9633ddac8b >> --- /dev/null >> +++ b/gnu/packages/patches/gemmi-fix-sajson-types.patch >> @@ -0,0 +1,11 @@ >> +diff -ur a/include/gemmi/json.hpp b/include/gemmi/json.hpp >> +--- a/include/gemmi/json.hpp >> ++++ b/include/gemmi/json.hpp >> +@@ -38,6 +38,7 @@ >> +=20 >> + inline std::string as_cif_value(const sajson::value& val) { >> +=C2=A0=C2=A0 switch (val.get_type()) { >> ++=C2=A0=C2=A0=C2=A0 case sajson::TYPE_INTEGER: >> +=C2=A0=C2=A0=C2=A0=C2=A0 case sajson::TYPE_DOUBLE: >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return val.as_string(); >> +=C2=A0=C2=A0=C2=A0=C2=A0 case sajson::TYPE_NULL: >> diff --git a/gnu/packages/patches/sajson-for-gemmi-numbers-as- >> strings.patch b/gnu/packages/patches/sajson-for-gemmi-numbers-as- >> strings.patch >> new file mode 100644 >> index 0000000000..6f476b8583 >> --- /dev/null >> +++ b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch >> @@ -0,0 +1,195 @@ >> +Patch for gemmi: Keep numbers in JSON file as strings. >> + >> +Adapted from this commit of the bundled fork of sajson in gemmi: >> + >> https://github.com/project-gemmi/gemmi/commit/fccbca4f6040364ba708613e >> 1429c2251872240d >> + >> +diff -ur a/include/sajson.h b/include/sajson.h >> +--- a/include/sajson.h >> ++++ b/include/sajson.h >> +@@ -411,43 +411,6 @@ >> + }; >> + } // namespace internal >> +=20 >> +-namespace integer_storage { >> +-enum { word_length =3D 1 }; >> +- >> +-inline int load(const size_t* location) { >> +-=C2=A0=C2=A0=C2=A0 int value; >> +-=C2=A0=C2=A0=C2=A0 memcpy(&value, location, sizeof(value)); >> +-=C2=A0=C2=A0=C2=A0 return value; >> +-} >> +- >> +-inline void store(size_t* location, int value) { >> +-=C2=A0=C2=A0=C2=A0 // NOTE: Most modern compilers optimize away this c= onstant-size >> +-=C2=A0=C2=A0=C2=A0 // memcpy into a single instruction. If any don't, = and treat >> +-=C2=A0=C2=A0=C2=A0 // punning through a union as legal, they can be sp= ecial-cased. >> +-=C2=A0=C2=A0=C2=A0 static_assert( >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sizeof(value) <=3D sizeof(*= location), >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "size_t must not be smaller= than int"); >> +-=C2=A0=C2=A0=C2=A0 memcpy(location, &value, sizeof(value)); >> +-} >> +-} // namespace integer_storage >> +- >> +-namespace double_storage { >> +-enum { word_length =3D sizeof(double) / sizeof(size_t) }; >> +- >> +-inline double load(const size_t* location) { >> +-=C2=A0=C2=A0=C2=A0 double value; >> +-=C2=A0=C2=A0=C2=A0 memcpy(&value, location, sizeof(double)); >> +-=C2=A0=C2=A0=C2=A0 return value; >> +-} >> +- >> +-inline void store(size_t* location, double value) { >> +-=C2=A0=C2=A0=C2=A0 // NOTE: Most modern compilers optimize away this c= onstant-size >> +-=C2=A0=C2=A0=C2=A0 // memcpy into a single instruction. If any don't, = and treat >> +-=C2=A0=C2=A0=C2=A0 // punning through a union as legal, they can be sp= ecial-cased. >> +-=C2=A0=C2=A0=C2=A0 memcpy(location, &value, sizeof(double)); >> +-} >> +-} // namespace double_storage >> +- >> + /// Represents a JSON value.=C2=A0 First, call get_type() to check its >> type, >> + /// which determines which methods are available. >> + /// >> +@@ -585,70 +548,10 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return length; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +-=C2=A0=C2=A0=C2=A0 /// If a numeric value was parsed as a 32-bit integ= er, returns >> it. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER. >> +-=C2=A0=C2=A0=C2=A0 int get_integer_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::integer); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return integer_storage::loa= d(payload); >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// If a numeric value was parsed as a double, retu= rns it. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 double get_double_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return double_storage::load= (payload); >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// Returns a numeric value as a double-precision f= loat. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER or TYP= E_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 double get_number_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_2(tag::integer, = tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (value_tag =3D=3D tag::i= nteger) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn get_integer_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } else { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn get_double_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// Returns true and writes to the output argument = if the >> numeric value >> +-=C2=A0=C2=A0=C2=A0 /// fits in a 53-bit integer.=C2=A0 This is useful = for timestamps >> and other >> +-=C2=A0=C2=A0=C2=A0 /// situations where integral values with greater t= han 32-bit >> precision >> +-=C2=A0=C2=A0=C2=A0 /// are used, as 64-bit values are not understood b= y all JSON >> +-=C2=A0=C2=A0=C2=A0 /// implementations or languages. >> +-=C2=A0=C2=A0=C2=A0 /// Returns false if the value is not an integer or= not in >> range. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER or TYP= E_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 bool get_int53_value(int64_t* out) const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // Make sure the output var= iable is always defined to avoid >> any >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // possible situation like >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // >> https://gist.github.com/chadaustin/2c249cb850619ddec05b23ca42cf7a18 >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *out =3D 0; >> +- >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_2(tag::integer, = tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 switch (value_tag) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 case tag::integer: >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *ou= t =3D get_integer_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn true; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 case tag::double_: { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dou= ble v =3D get_double_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (v < -(1LL << 53) || v > (1LL << 53)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int= 64_t as_int =3D static_cast(v); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (as_int !=3D v) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *ou= t =3D as_int; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn true; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 default: >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Returns the length of the string. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 size_t get_string_length() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return payload[1] - pa= yload[0]; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +@@ -659,7 +562,7 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// embedded NULs. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 const char* as_cstring() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return text + payload[= 0]; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +@@ -667,7 +570,7 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Returns a string's value as a std::string. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 std::string as_string() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return std::string(tex= t + payload[0], text + payload[1]); >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> + #endif >> +@@ -690,6 +593,10 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert(e1 =3D=3D value= _tag || e2 =3D=3D value_tag); >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> ++=C2=A0=C2=A0=C2=A0 void assert_tag_3(tag e1, tag e2, tag e3) const { >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert(e1 =3D=3D value_tag = || e2 =3D=3D value_tag || e3 =3D=3D >> value_tag); >> ++=C2=A0=C2=A0=C2=A0 } >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0 void assert_in_bounds(size_t i) const { assert= (i < >> get_length()); } >> +=20 >> +=C2=A0=C2=A0=C2=A0=C2=A0 const tag value_tag; >> +@@ -2059,6 +1966,8 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 std::pair parse_number(c= har* p) { >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 using internal::tag; >> +=20 >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0size_t start =3D p - input.get_dat= a(); >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // Assume 32-bit, two'= s complement integers. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 static constexpr unsig= ned RISKY =3D INT_MAX / 10u; >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned max_digit_aft= er_risky =3D INT_MAX % 10u; >> +@@ -2235,23 +2144,18 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 u =3D 0u - u; >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 } >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> ++ >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bool success; >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 size_t* out =3D allocator.r= eserve(2, &success); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (SAJSON_UNLIKELY(!succes= s)) { >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn std::make_pair(oom(p, "number"), tag::null); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 out[0] =3D start; >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 out[1] =3D p - input.get_da= ta(); >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (try_double) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 boo= l success; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 siz= e_t* out >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =3D allocator.reserve(double_storage::word_length, >> &success); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (SAJSON_UNLIKELY(!success)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return std::make_pair(oom(p, "double"), tag::null); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dou= ble_storage::store(out, d); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 return std::make_pair(p, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } else { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 boo= l success; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 siz= e_t* out >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =3D allocator.reserve(integer_storage::word_length, >> &success); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (SAJSON_UNLIKELY(!success)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return std::make_pair(oom(p, "integer"), >> tag::null); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int= eger_storage::store(out, static_cast(u)); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 return std::make_pair(p, tag::integer); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=C2=A0=C2=A0=C2=A0=C2=A0 } > Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:12:35 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:12:35 +0000 Received: from localhost ([127.0.0.1]:37112 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1b-0005Sr-L6 for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:34 -0400 Received: from mout01.posteo.de ([185.67.36.65]:38003) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1L-0005SO-6N for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:30 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id A2766240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:12:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155529; bh=w8cefKOJU4mryE1ho2DHJhXTU2Fvq6og5q8+/+XzU88=; h=From:To:Subject:Date:From; b=GSsguEzRtEQm6Do3fLt33dHwAz8re6EiNf7tC2yIUQurPmadrmx9DB/+dOMyIB0A2 F4oH1WEVYdCeJ7RlKz/Xac5PN3S5TOOgPIYsqyLYBMUl+H3qRhjTsvR+TL7cDaU6wH w6tR8NUCDQXH0i8mvMG4+5pkNn7BQ64VoxUkjQfo+LEDQZX26WsfAjwaz40IG7AVf+ pBXzmWCcZAjISXWzBf9PcPDitHWg4vz6+pbQPaQ/vrnZqqFeG7qV/dtQga5y1oumOa fEMn+nb78KOOd2/aPs6ThmtRS1RCWVxMKU+xFBJ58co8lugGwUR3ssyH1bXM/AqHhq rORbyFEoO+olA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWxj0wB9z9rxD; Fri, 7 Oct 2022 17:12:09 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 07/11] gnu: Add freesasa. In-Reply-To: <66e6c9657b6e9ffe23201e7bcc294ee42634a335.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:12:08 +0000 Message-ID: <86a667652v.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (freesasa): New variable. >> --- >> =C2=A0gnu/packages/chemistry.scm | 81 >> ++++++++++++++++++++++++++++++++++++++ >> =C2=A01 file changed, 81 insertions(+) >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index f8fd85814f..223a27a20d 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -34,11 +34,13 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages algebra) >> =C2=A0=C2=A0 #:use-module (gnu packages autotools) >> =C2=A0=C2=A0 #:use-module (gnu packages backup) >> +=C2=A0 #:use-module (gnu packages bison) >> =C2=A0=C2=A0 #:use-module (gnu packages boost) >> =C2=A0=C2=A0 #:use-module (gnu packages check) >> =C2=A0=C2=A0 #:use-module (gnu packages compression) >> =C2=A0=C2=A0 #:use-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> +=C2=A0 #:use-module (gnu packages flex) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> =C2=A0=C2=A0 #:use-module (gnu packages graphviz) >> @@ -54,6 +56,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> =C2=A0=C2=A0 #:use-module (gnu packages stb) >> +=C2=A0 #:use-module (gnu packages web) >> =C2=A0=C2=A0 #:use-module (gnu packages xml) >> =C2=A0=C2=A0 #:use-module (guix build-system cmake) >> =C2=A0=C2=A0 #:use-module (guix build-system copy) >> @@ -688,3 +691,81 @@ (define-public gemmi >> =C2=A0@item crystallographic symmetry. >> =C2=A0@end enumerate") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:mpl2.0))) >> + >> +(define-public freesasa >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "freesasa") >> +=C2=A0=C2=A0=C2=A0 (version "2.1.2") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/mitt= inatten/freesasa") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit version))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "07wdnahf3g355ryaiqvfxd5f4rl54wv8jwxcbn0nia89fqysbv0f")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 '(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove C files generated by Flex and B= ison >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (for-each delete-file >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 '("src/parser.c" "src/parser.h" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "src/lexer.c" "src/lexer.h")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #t)))) >> +=C2=A0=C2=A0=C2=A0 (build-system gnu-build-system) >> +=C2=A0=C2=A0=C2=A0 (inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list gemmi json-c libxml2)) >> +=C2=A0=C2=A0=C2=A0 (native-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list bison flex check autoconf automake pkg-c= onfig doxygen >> perl libtool)) >> +=C2=A0=C2=A0=C2=A0 (outputs '("out" "doc")) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(list "--enable-check" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 "--enable-parser-generator" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 "CXXFLAGS=3D-std=3Dc++17" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 "--enable-doxygen") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'remove-libc++-linking >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "src/Makefile.am" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("-lc\\+\\+") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) > Why? If it's because you're building a shared library, do this in the > next phase. This is libc++ from LLVM and the linking against the standard library is automatic anyway, right? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'build-shared-library >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "src/Makefile.am" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("lib_LIBRARIES") "lib_LTLIBRARIES") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("libfreesasa\\.a") "libfreesasa.la") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("freesasa_LDADD \\+=3D libfreesasa\\.la" prev) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append prev "\nlibfreesasa_la_LIBADD" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 " =3D -ljson-c ${libxml2_LIBS}\n= ")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("_a_SOURCES") "_la_SOURCES")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "configure.ac" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("AC_PROG_INSTALL" inst) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "AM_PROG_LIBTOOL\n" inst))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "tests/Makefile.am" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("libfreesasa\\.a") "libfreesasa.la")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-before 'bui= ld 'build-lexer-and-parser >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (with-directory-excursion "src" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "make" "lexer.h") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "make" "parser.h")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) > You can do this in one make. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all 'install-doc >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (copy-recursively >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 "doc/html" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (string-append #$output:doc "/share/doc/" #$name "-" >> #$version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t))))) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://freesasa.github.io/") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Library for calculating the solvent acces= sible >> surface area >> +(SASA) of molecules") > "Calculate the..." >> +=C2=A0=C2=A0=C2=A0 (description "FreeSASA is a command line tool and C-= library for >> +calculating solvent accessible surface areas (SASA).=C2=A0 By default L= ee >> & > Use @abbr. I get the error "warning: invalid Texinfo markup", do you have an idea why? >> +Richards' algorithm is used, but Shrake & Rupley's is also >> available.=C2=A0 Both can >> +be parameterized to arbitrary precision, and for high resolution >> versions of >> +the algorithms, the calculations give identical results.") >> +=C2=A0=C2=A0=C2=A0 (license license:expat))) > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:12:35 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:12:35 +0000 Received: from localhost ([127.0.0.1]:37115 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1f-0005T2-1v for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:35 -0400 Received: from mout02.posteo.de ([185.67.36.66]:50145) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1b-0005Sg-U1 for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:32 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 634F0240105 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:12:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155546; bh=MJ8CucK25SSMtYL3fJiSb7JEfG5OEdjC84zPEqWMGWI=; h=From:To:Subject:Date:From; b=VCGVI1ABuklCoNDghFZwfJSa5pAjMzTIoY5roDqUC8zSaaYDNd1XVhPTo8OiP+IJi i+899fHt+3sIvMca7NJ2EQnp1lrsMsYuwHkfeccu56km8cjWubAGeYEAEaLDNf4xHM 5UAxnySEV9WlVPtIXN4r1latrXwMOqfQGr83iYqzdriQf9hXOj5kG9TdzPRk0Wime9 bjlPx1m2FKYYFEN1upfUqF+1n0GkeFXdGNoawY8k7vXIIY5o83YbSzxkgoR84AjIvi XcKP5bTvdsnQl5XjUNEW7dOfmHGiZ4qM0PbE8T+My4k8XznyQQG4zE3tHaqI4DeJc4 RYFvsDbzQ4APg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWy16dFDz9rxD; Fri, 7 Oct 2022 17:12:25 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 10/11] gnu: Add yaehmop-tightbind. In-Reply-To: <1c289b3e66423599bf20a2cd49521e0e803a8345.camel@ist.tugraz.at> Date: Fri, 07 Oct 2022 15:12:25 +0000 Message-ID: <868rlr652e.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jhei5hdD4gd3Jp dGVzOg0KDQo+IEFtIE1vbnRhZywgZGVtIDAzLjEwLjIwMjIgdW0gMDA6MTkgKzAwMDAgc2Nocmll YiBEYXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtICh5YWVobW9w LXRpZ2h0YmluZCk6IE5ldyB2YXJpYWJsZS4NCj4+IC0tLQ0KPj4gwqBnbnUvcGFja2FnZXMvY2hl bWlzdHJ5LnNjbSB8IDgyDQo+PiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Kw0KPj4gwqAxIGZpbGUgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKQ0KPj4gDQo+PiBkaWZmIC0t Z2l0IGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbQ0KPj4gaW5kZXggY2MyNmFhMzI5YS4uYTM5ZGVmZjRiZiAxMDA2NDQNCj4+IC0tLSBhL2du dS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtDQo+PiArKysgYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbQ0KPj4gQEAgLTQyLDYgKzQyLDcgQEAgKGRlZmluZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBj aGVtaXN0cnkpDQo+PiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGRvY3VtZW50YXRp b24pDQo+PiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZsZXgpDQo+PiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZvbnR1dGlscykNCj4+ICvCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBnY2MpDQo+PiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGds KQ0KPj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBncmFwaHZpeikNCj4+IMKgwqAg Izp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ3YpDQo+PiBAQCAtODE3LDMgKzgxOCw4NCBAQCAo ZGVmaW5lLXB1YmxpYyBjb29yZGdlbmxpYnMNCj4+IMKgwqDCoMKgIChkZXNjcmlwdGlvbiAiQGNv ZGV7Y29vcmRnZW5saWJzfSBjb250YWlucyBhbGdvcml0aG1zIHRvDQo+PiBnZW5lcmF0ZSAyRA0K Pj4gwqBjb29yZGluYXRlcy7CoCBJdCBoYXMgYW4gZW1waGFzaXMgb24gcXVhbGl0eSByYXRoZXIg dGhhbiBzcGVlZC4iKQ0KPj4gwqDCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKQ0KPj4g Kw0KPj4gKyhkZWZpbmUtcHVibGljIHlhZWhtb3AtdGlnaHRiaW5kDQo+PiArwqAgKHBhY2thZ2UN Cj4+ICvCoMKgwqAgKG5hbWUgInlhZWhtb3AtdGlnaHRiaW5kIikNCj4+ICvCoMKgwqAgKHZlcnNp b24gIjIwMjIuMDkuMSIpDQo+PiArwqDCoMKgIChzb3VyY2UgKG9yaWdpbg0KPj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChtZXRob2QgZ2l0LWZldGNoKQ0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAodXJsICJodHRwczovL2dpdGh1Yi5jb20vZ3JlZ2xhbmRydW0v eWFlaG1vcCIpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNv bW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ng0KPj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGJhc2UzMg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoA0K Pj4gIjF4MGQ3NW0xaGdkYjQxMWZpdjdjNWJ3cTFuNHkwc3dybGwwZ2lnaDh2NWM3M2tqeHJqYTAi KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxk IHV0aWxzKSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNuaXBwZXQNCj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICcoYmVnaW4NCj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAiZG9jcyIpDQo+IFRo aXMgb25lIGxvb2tzIHN1c3BpY2lvdXMuDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgImV4YW1wbGVzIikNCj4gQXMgZG9lcyB0 aGlzLg0KPiBXaGF0IGdpdmVzPw0KSSBkaWQgbm90IHdhbnQgdG8gY2hlY2sgdGhlIGRvY3VtZW50 YXRpb24gaW4gZGV0YWlsIGFuZCB0aGUgZXhhbXBsZXMNCmNvbnRhaW4gc29tZSBjb3JydXB0ZWQg ImNvbXByZXNzIiBhcmNoaXZlcyBvZiBwcm9ncmFtIG91dHB1dHMuIDopDQpCdXQgbm93IEkgYnVp bGQgdGhlIGRvY3VtZW50YXRpb24gaW5zdGVhZCBhbmQgcmVtb3ZlIHRoZSBhcmNoaXZlcy4NClRo ZXJlIHN0aWxsIGlzIG9uZSBwcm9ibGVtOiBFdmVuIHRob3VnaCBJIHNldCBGT1JDRV9TT1VSQ0Vf REFURT0xLCB0aGUNCm91dHB1dCBvZiBwZGZsYXRleCBpcyBzdGlsbCBub3QgcmVwcm9kdWNpYmxl LiBEbyB5b3UgaGF2ZSBhbiBpZGVhIHdoeQ0KdGhhdCBjb3VsZCBiZT8gVGhlcmUgYXJlIG9ubHkg MyBieXRlcyBkaWZmZXJlbnQgaW4gdGhlIHBkZi4NCkFsdGVybmF0aXZlbHksIEkgY291bGQganVz dCBub3QgYnVpbGQgdGhlIGRvY3VtZW50YXRpb24gYXMgaXQgaXMNCmluZGVwZW5kZW50IG9mIHRo ZSBidWlsZCBzY3JpcHRzIGFueXdheS4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidmlld2tlbCIpDQo+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInRpZ2h0 YmluZC9mMmNfZmlsZXMiKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGRlbGV0ZS1maWxlICJ0aWdodGJpbmQvZGlhZy5jIikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5kL2Nib3Jpcy5jIikNCj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5k L2FiZm5zLmMiKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0 ZS1maWxlICJ0aWdodGJpbmQvbG92bGFwLmMiKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgI3QpKSkpDQo+PiArwqDCoMKgIChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQt c3lzdGVtKQ0KPj4gK8KgwqDCoCAobmF0aXZlLWlucHV0cyAobGlzdCBnZm9ydHJhbikpDQo+PiAr wqDCoMKgIChpbnB1dHMgKGxpc3Qgb3BlbmJsYXMpKQ0KPj4gK8KgwqDCoCAoYXJndW1lbnRzDQo+ PiArwqDCoMKgwqAgKGxpc3QNCj4+ICvCoMKgwqDCoMKgICM6Y29uZmlndXJlLWZsYWdzDQo+PiAr wqDCoMKgwqDCoCAjfihsaXN0DQo+PiArwqDCoMKgwqDCoMKgwqDCoCAiLURVU0VfQkxBU19MQVBB Q0s9T04iDQo+PiArwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCAiLURQQVJNX0ZJTEVf TE9DPSIgIyRvdXRwdXQNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICIvc2hhcmUvIiAjJG5hbWUgIi0iICMkdmVyc2lvbg0KPj4gIi9laHRfcGFybXMu ZGF0IikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgICItREJJTkRfRVhFX05BTUU9eWFlaG1vcC1iaW5k IikNCj4+ICvCoMKgwqDCoMKgICM6cGhhc2VzDQo+PiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhh c2VzICVzdGFuZGFyZC1waGFzZXMNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAn dW5wYWNrICdjaGRpcg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoZGlyICJ0aWdodGJpbmQiKQ0KPj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1h ZnRlciAnY2hkaXIgJ3BhdGNoLWZvcnRyYW4tZnVuY3Rpb25zDQo+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAobGFtYmRhIF8NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3Rp dHV0ZSogJygibW92LmMiICJwcm90b3R5cGVzLmgiKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoKCJsb3ZsYXBcXCgiKSAibG92bGFwXygiKQ0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoKCJhYmZuc1xcKCIpICJhYmZuc18oIikpDQo+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgI3QpKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVy ICdjaGRpciAncGF0Y2gtY21ha2UNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEg Xw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiQ01ha2VMaXN0 cy50eHQiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInByb2plY3RcXCh5 YWVobW9wIENcXCkiKSAicHJvamVjdCh5YWVobW9wIEMNCj4+IEZvcnRyYW4pIikNCj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiYWJmbnMuYyIpICJmb3J0cmFuNzcvYWJmbnMu ZiIpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImxvdmxhcC5jIikgImZv cnRyYW43Ny9sb3ZsYXAuZiIpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgo IihzZXRcXChQQVJNX0ZJTEVfTE9DLiopXFwpIiBhbGwgaW5pdCkNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBpbml0ICIgQ0FDSEUgU1RSSU5HIFwi XCIpIikpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImFkZF9saWJyYXJ5 XFwoeWFlaG1vcF9laHQiIGxpYikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc3RyaW5nLWFwcGVuZCBsaWIgIiBTSEFSRUQgIikpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICgoInRhcmdldF9saW5rX2xpYnJhcmllc1xcKHRlc3RfZWh0DQo+PiBcXCRc XHtMQVBBQ0tfTElCUkFSSUVTXFx9LioiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBhbGwpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmlu Zy1hcHBlbmQgYWxsDQo+PiAiXG50YXJnZXRfbGlua19saWJyYXJpZXMoeWFlaG1vcF9laHQgIg0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICIke0xBUEFDS19MSUJSQVJJRVN9KVxuIikpKQ0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICN0KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAnaW5z dGFsbCAnaW5zdGFsbC1laHQtcGFybXMNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1i ZGEgXw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUgIi4uL3Rp Z2h0YmluZC9laHRfcGFybXMuZGF0Ig0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dCAiL3NoYXJl LyINCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyRuYW1lICItIiAjJHZlcnNpb24p KQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqAgKGRlbGV0ZSAnY2hlY2spDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIg J2luc3RhbGwtZWh0LXBhcm1zICdjaGVjaw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxh bWJkYSogKCM6a2V5IHRlc3RzPyAjOmFsbG93LW90aGVyLWtleXMpDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHdoZW4gdGVzdHM/DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChpbnZva2UgIi4vdGVzdF9laHQiKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAjdCkpKSkpDQo+PiArwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vZ2l0aHViLmNvbS9n cmVnbGFuZHJ1bS95YWVobW9wIikNCj4+ICvCoMKgwqAgKHN5bm9wc2lzICJZZXQgQW5vdGhlciBl eHRlbmRlZCBIdWVja2VsIE1vbGVjdWxhciBPcmJpdGFsDQo+PiBQYWNrYWdlIikNCj4+ICvCoMKg wqAgKGRlc2NyaXB0aW9uICJAY29kZXtZQWVITU9QfSBjb250YWlucyBhIHByb2dyYW0gYW5kIGxp YnJhcnkgZm9yDQo+PiBwZXJmb3JtaW5nDQo+PiArZXh0ZW5kZWQgSMO8Y2tlbCBjYWxjdWxhdGlv bnMuIikNCj4+ICvCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMikpKQ0KPiBMb29raW5nIGF0 IHRoaXMgaXQgc2VlbXMgdW5jbGVhciB3aGV0aGVyIHlvdSBhcmUgYnVpbGRpbmcgeWFlaG1vcCBv cg0KPiB0aWdodGJpbmQuICBXaGF0J3MgZ29pbmcgb24/DQpJJ20gYnVpbGRpbmcgdGhlIHlhZWht b3AgbGlicmFyeSAod2l0aCB0aGUgc291cmNlIGNvZGUgaW4gdGlnaHRiaW5kLykNCmFuZCB0aGUg ImJpbmQiIHByb2dyYW0gKHdoaWNoIEkgY2FsbGVkIHlhZWhtb3AtYmluZCkgdGhhdCB1c2VzIHRo ZSBsaWJyYXJ5Lg0KSXMgaXQgYmV0dGVyIHRvIGp1c3QgY2FsbCB0aGUgcGFja2FnZSAieWFlaG1v cCIgKHdoaWNoIEkgbm93IGRpZCk/DQpUaGUgc291cmNlIGFsc28gaW5jbHVkZXMgYSBzZXBhcmF0 ZSB2aXN1YWxpemF0aW9uIHByb2dyYW0gInZpZXdrZWwiLA0Kd2hpY2ggZG9lcyBub3QgdXNlIHRo ZSBsaWJyYXJ5IGFuZCB3b3VsZCBiZWxvbmcgaW4gYW5vdGhlciBwYWNrYWdlIGluIG15DQpvcGlu aW9uLg0K From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:12:54 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:12:54 +0000 Received: from localhost ([127.0.0.1]:37118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1x-0005Tc-MT for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:54 -0400 Received: from mout01.posteo.de ([185.67.36.65]:48391) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp1v-0005TP-8G for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:12:52 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B064F240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:12:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665155565; bh=gVHU4AzXtF7IRRHQw5C3zOGWW27sBBLBzHCcPJ5nbKE=; h=From:To:Subject:Date:From; b=jSabw5tLiDfqw6PGqOjDVqvMaTpk1bdJziQSgP3rJC9tUr0D30XUtUxCuck/uRuzd r4eJol300X+g3ekAXxoGHtAeJK3hSGTCOw9Nvgy6MH1oL+IbIbK5J/p18qzicBSshY hmE/NXI56KzmDYY7nwrxqbWOT44x1yLY+Vz0vfl19PiedgJKV+MfxAt0nVkT5rUVqR rs2AR1vUFrWGVJDVVrSsi+bLtbXmfSkUtCQVDEdesOsSZMYM5gH1zcCGYbkBSPOGWY UoDfsKnj+jeTBC27ZHI2Q7z9tIZVYvh2HQY7dibD6VkrJbP4LSCAMx98f9efzPIlAv lXcnp/n8E36aw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkWyP1gzhz9rxF; Fri, 7 Oct 2022 17:12:45 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH 11/11] gnu: Add rdkit. In-Reply-To: Date: Fri, 07 Oct 2022 15:12:44 +0000 Message-ID: <867d1b651v.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Montag, dem 03.10.2022 um 00:19 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (rdkit): New variable. >> --- >> =C2=A0gnu/packages/chemistry.scm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 198 >> ++++++++++++++++++ >> =C2=A0.../rdkit-cmake-external-dependencies.patch=C2=A0=C2=A0 | 102 ++++= +++++ >> =C2=A02 files changed, 300 insertions(+) >> =C2=A0create mode 100644 gnu/packages/patches/rdkit-cmake-external- >> dependencies.patch >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index a39deff4bf..869cf264e3 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -34,6 +34,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages algebra) >> =C2=A0=C2=A0 #:use-module (gnu packages autotools) >> =C2=A0=C2=A0 #:use-module (gnu packages backup) >> +=C2=A0 #:use-module (gnu packages base) >> =C2=A0=C2=A0 #:use-module (gnu packages bison) >> =C2=A0=C2=A0 #:use-module (gnu packages boost) >> =C2=A0=C2=A0 #:use-module (gnu packages check) >> @@ -41,10 +42,12 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> =C2=A0=C2=A0 #:use-module (gnu packages flex) >> +=C2=A0 #:use-module (gnu packages fonts) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> =C2=A0=C2=A0 #:use-module (gnu packages gcc) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> =C2=A0=C2=A0 #:use-module (gnu packages graphviz) >> +=C2=A0 #:use-module (gnu packages gtk) >> =C2=A0=C2=A0 #:use-module (gnu packages gv) >> =C2=A0=C2=A0 #:use-module (gnu packages image) >> =C2=A0=C2=A0 #:use-module (gnu packages maths) >> @@ -56,6 +59,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages qt) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> +=C2=A0 #:use-module (gnu packages sqlite) >> =C2=A0=C2=A0 #:use-module (gnu packages stb) >> =C2=A0=C2=A0 #:use-module (gnu packages web) >> =C2=A0=C2=A0 #:use-module (gnu packages xml) >> @@ -899,3 +903,197 @@ (define-public yaehmop-tightbind >> =C2=A0=C2=A0=C2=A0=C2=A0 (description "@code{YAeHMOP} contains a program= and library for >> performing >> =C2=A0extended H=C3=BCckel calculations.") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-2))) >> + >> +(define-public rdkit >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "rdkit") >> +=C2=A0=C2=A0=C2=A0 (version "2022.03.5") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/rdki= t/rdkit") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "Release_" (strin= g-replace-substring version >> "." "_"))))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "19idgilabh04cbr1qj6zgrgsfjm248mmfz6fsr0smrd68d0xnml9")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (search-patches "rdkit-cmake-external- >> dependencies.patch")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 #~(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove pickle files (only used i= n tests), >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; as they are compiled programs >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (for-each >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lambda (name) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (display (string-= append name "\n")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file name= )) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (find-files "." "\\.pkl(\\.gz= )?$")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove SQLite data files (can be= generated) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "Data/RDData.sqlt") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "Data/RDTests.sqlt") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #t)))) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (native-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 `(("bison" ,bison) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("boost" ,boost) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("catch2" ,catch2) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("eigen" ,eigen) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("flex" ,flex) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("freesasa" ,freesasa) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("pkg-config" ,pkg-config) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("rapidjson" ,rapidjson) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("tar" ,tar) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("avalontoolkit-src" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ,(let ((version "1.2.0")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (method url-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (uri (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 >> "http://sourceforge.net/projects/avalontoolkit/files/" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "AvalonToolkit_" (substring version= 0 3) >> "/AvalonToolkit_" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 version ".source.tar")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 >> "0rnnyy6axs2da7aa4q6l30ldavbk49v6l22llj1adn74h1i67bpv")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (modules '((guix build utils) (ice-9 ftw) (srfi srfi- >> 26))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #~(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (chdir "..") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively "StandardFiles") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively >> "SourceDistribution/java") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #t))))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("ringdecomposerlib-src" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ,(let ((version "1.1.3")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url >> "https://github.com/rareylab/RingDecomposerLib") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" version = "_rdkit")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 >> "1rxzs2wpkkdi40wdzxc4sn0brk7dm7ivgqyfh38gf2f5c7pbg0wi"))))))) >> +=C2=A0=C2=A0=C2=A0 (inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list cairo >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 coordgenli= bs >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 font-comic= -neue >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 freetype >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inchi >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 maeparser >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 python >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sqlite >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 yaehmop-ti= ghtbind)) >> +=C2=A0=C2=A0=C2=A0 (propagated-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list python-numpy python-cairocffi python-pil= low)) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:imported-modules (append %cmake-build-= system-modules >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 '((guix build python-build- >> system))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:modules '((guix build cmake-build-syst= em) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (guix build utils) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ((guix build python-build-system) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:select (add-installed-pythonpath)= )) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_AVALON_SU= PPORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_CAIRO_SUP= PORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_CPP_TESTS= =3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_FREESASA_= SUPPORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_INCHI_SUP= PORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_YAEHMOP_S= UPPORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "-DCATC= H_DIR=3D" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(th= is-package-native-input "catch2") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "/inc= lude/catch2") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_DEV_COM= PONENT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_INTREE= =3DOFF" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_STATIC_= LIBS=3DOFF" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_OPTIMIZE_= POPCNT=3D" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(let ((system = (or (%current-target-system) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (%current-system)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (cond >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 ((string-prefix? "x86_64" system) "ON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 ((string-prefix? "i686" system) "ON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (else "OFF")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_USE_BOOST_IOSTR= EAMS=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_USE_FLEXBISON= =3DON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'copy-external-dependencies >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (symlink >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #$(this-package-input "font-comic-neue") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 "/share/fonts/truetype/ComicNeue-Regular.ttf") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 "Data/Fonts/ComicNeue-Regular.ttf") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (symlink #$(this-package-native-input "rapidjson") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "External/r= apidjson-1.1.0") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (invoke "tar" "xvf" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(this-package-n= ative-input "avalontoolkit- >> src") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-C" "External/Av= alonTools") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (symlink #$(this-package-native-input >> "ringdecomposerlib-src") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "External/R= ingFamilies/RingDecomposerLib") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) > You might want to try unbundling those. Either way, you should find a > solution that doesn't depend on native-input labels. Ok, I unbundled them, but the package definitions became a bit long. :) Do you think it is ok like that? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'copy= -external-dependencies 'patch-source >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (with-directory-excursion "External/AvalonTools" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "patch" "-p0" "-i" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "Aval= onToolkit_1.2_patch.txt")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "External/YAeHMOP/EHTTools.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) > See my comment on yaehmop. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'create-sqlite-data-files >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (invoke "sqlite3" "Data/RDData.sqlt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".read rdkit/Dbas= e/test_data/RDData.sqlite") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (invoke "sqlite3" "Data/RDTests.sqlt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".read rdkit/Dbas= e/test_data/RDTests.sqlite") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) > Do you only need this for tests? If so, do this in a pre-check phase. Ok. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'fix-inchi-include >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "Code/cmake/Modules/FindInchi.cmake" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("inchi_api.h.*\\)") "inchi/inchi_api.h)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("INCHI_LIBRARY NAMES.*\\)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)= ") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("find_library" prev) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES = .so.1)\n" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 prev))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "External/INCHI-API/inchi.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-before 'bui= ld 'enable-bytecode-determinism >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONHASHSEED" "0") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONDONTWRITEBYTECODE" "1") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #t)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete 'check) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key inputs outputs tests? parallel-tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:allow-other-key= s) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (let >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ((job-count (number->string >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (or (and parallel-tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (parallel-job-count)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1)= ))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (setenv "RDBASE" (canonicalize-path "../s= ource")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-installed-pythonpath inputs outputs) > This line should also be pre-check, maybe even these two lines. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke "ctest" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "-j" job-count >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "-E" (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; need pickled data >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "(pyDiscreteValueVect" >> "|pySparseIntVect" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "|graphmoltestPickler" >> "|pyPartialCharges" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "|substructLibraryTest" >> "|pyFeatures" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "|pythonTestDirML" >> "|pythonTestDirChem" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Catching Python exception fai= ls >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "|pyRanker)")))) > Use string-join instead. Thanks! >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 #t))))) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://rdkit.org/") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Open-Source Cheminformatics Software") > "Open-Source" is meaningless in Guix. >> +=C2=A0=C2=A0=C2=A0 (description "RDKit is a collection of cheminformati= cs and >> +machine-learning software written in C++ and Python.") > Not particularly descriptive, but then again, neither is rdkit itself. > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:14:06 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:14:06 +0000 Received: from localhost ([127.0.0.1]:37125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp37-0005W8-NL for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:14:05 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:8637) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp34-0005VY-DS for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:14:04 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MkWzn3NjVz3wcT; Fri, 7 Oct 2022 17:13:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1665155638; bh=KAhTiQnU6bt0syY6jgjJvVQfNmPV+nFH7ZokEGu1ZV8=; h=Subject:From:To:Date:In-Reply-To:References; b=HTOJLk2ZFTh1KVRl2hmAOqOyNTuoTBd+CoBYyV1IziONjNBtHqvb2TCFdlgdAIECu 2HBUEcJcuqHwp+45Zu+7KlpwZumWQy+lwppzZ7664XmUaTWqfg+YADBbDXkelNAmE8 aoIkSOFTU9zE01U6s/Mb+FrPovgHpCFfC4Sla42c= Message-ID: <1e23b05dedf8f87f90c3cb1694d1bfd12ab3e2c2.camel@ist.tugraz.at> Subject: Re: [PATCH 04/11] gnu: Add tinydir. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 07 Oct 2022 17:13:56 +0200 In-Reply-To: <86edvj654n.fsf@posteo.net> References: <86edvj654n.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MTEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jh ei5hdD4gd3JpdGVzOgo+IAo+ID4gQW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAo dGlueWRpcik6IE5ldyB2YXJpYWJsZS4KPiA+ID4gLS0tCj4gPiA+IMKgZ251L3BhY2thZ2VzL2Nw cC5zY20gfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gPiDC oDEgZmlsZSBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0 IGEvZ251L3BhY2thZ2VzL2NwcC5zY20gYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ID4gPiBpbmRl eCA3YmZhM2Q2Y2RmLi40ODE5ZjM2MDUyIDEwMDY0NAo+ID4gPiAtLS0gYS9nbnUvcGFja2FnZXMv Y3BwLnNjbQo+ID4gPiArKysgYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ID4gPiBAQCAtMjAyMCwz ICsyMDIwLDQxIEBAIChkZWZpbmUtcHVibGljIHNhanNvbgo+ID4gPiDCoMKgwqDCoMKgwqAgKGRl c2NyaXB0aW9uICJzYWpzb24gaXMgYSBoaWdoLXBlcmZvcm1hbmNlLCBpbi1wbGFjZSBKU09OCj4g PiA+IHBhcnNlcgo+ID4gPiDCoGhlYWRlci1vbmx5IGxpYnJhcnkuIikKPiA+ID4gwqDCoMKgwqDC oMKgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQpKSkpCj4gPiA+ICsKPiA+ID4gKyhkZWZpbmUtcHVi bGljIHRpbnlkaXIKPiA+ID4gK8KgIChwYWNrYWdlCj4gPiA+ICvCoMKgwqAgKG5hbWUgInRpbnlk aXIiKQo+ID4gPiArwqDCoMKgICh2ZXJzaW9uICIxLjIuNSIpCj4gPiA+ICvCoMKgwqAgKHNvdXJj ZSAob3JpZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9kIGdpdC1m ZXRjaCkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVu Y2UKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwgImh0 dHBzOi8vZ2l0aHViLmNvbS9jeG9uZy90aW55ZGlyIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjb21taXQgdmVyc2lvbikpKQo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24p KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ngo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAKPiA+ID4gIjFucHJnZGZ4NGk4d3pjMWlkdzZjaGFuNGZqZmE3NWI1bGw4a2do ZGMwcTIyNzhwbnkyNTkiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1 bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzbmlwcGV0ICcoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkKPiA+ID4gInRlc3RzL2NiZWhh dmUiKSkpKQo+ID4gPiArwqDCoMKgIChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQo+ ID4gPiArwqDCoMKgIChhcmd1bWVudHMKPiA+ID4gK8KgwqDCoMKgIChsaXN0Cj4gPiA+ICvCoMKg wqDCoMKgIDs7IFRlc3RzIHJlcXVpcmUgY2JlaGF2ZSBhbmQgcmx1dGlsCj4gPiA+ICvCoMKgwqDC oMKgICM6dGVzdHM/ICNmCj4gPiBUaGVuIHRob3NlIHNob3VsZCBiZSBwYWNrYWdlZC4KPiBUaGUg cHJvYmxlbSBpcyB0aGF0IHRoZSB0ZXN0cyBpbmNsdWRlIGEgbm9uLXRyaXZpYWxseSBtb2RpZmll ZAo+IGZvcmsgb2YgY2JlaGF2ZSwgd2hpY2ggdXNlcyBhbiBvbGRlciAoYnVuZGxlZCkgY29weSBv ZiBybHV0aWwgZm9yCj4gY29sb3Igb3V0cHV0LiBIb3cgc2hvdWxkIEkgZGVhbCB3aXRoIHRoYXQ/ Cj4gPiAKWW91IGNvdWxkIHRyeSB0byBtYWtlIHRoZSB0ZXN0cyBydW4gd2l0aCB0aGUgdXBzdHJl YW0gdmVyc2lvbiBhbmQKZGlzYWJsZSB0aG9zZSB0aGF0IGRvbid0LiAgQWx0ZXJuYXRpdmVseSwg eW91IGNvdWxkIHBhY2thZ2UgImZvci0KdGlueWRpciIgdmFyaWFudHMgb2YgdGhvc2UgcGFja2Fn ZXMsIHdoaWNoIGluaGVyaXQgYXMgbXVjaCBmcm9tCnVwc3RyZWFtIGFzIHBvc3NpYmxlLgoKQ2hl ZXJzCg== From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:18:05 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:18:05 +0000 Received: from localhost ([127.0.0.1]:37129 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp6y-0005cL-C5 for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:18:04 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:46995) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp6w-0005bz-8c for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:18:03 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MkX4R4LzBz1LZXc; Fri, 7 Oct 2022 17:17:59 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MkX4R4LzBz1LZXc DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1665155879; bh=qxJ6m7RG9kR8nFdkUIukD2TMvn83FvbLPxyRdykqsoo=; h=Subject:From:To:Date:In-Reply-To:References:From; b=BQJiYtscito62vjK/B1rlB98ts2hgIJDOYlOcz+2ivbR5lE+gP5b7hU0RWNhLlpY1 e0EjEuwLmCnUYH97+hzIrQdc3lu0zLw3g40806lM8qISI7rUzNM3HZjmRBaoWa1vFr 1D4jM0cX9orvEz87u9S4YlXXDAyW2uLlUx2nNU38= Message-ID: <3bf0663ff85fda967d3d049413ac9ec005cb7a4d.camel@ist.tugraz.at> Subject: Re: [PATCH 06/11] gnu: Add gemmi. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 07 Oct 2022 17:17:58 +0200 In-Reply-To: <86bkqn653b.fsf@posteo.net> References: <86bkqn653b.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MTEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jh ei5hdD4gd3JpdGVzOgo+IAo+ID4gQW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAoZ2VtbWkpOiBOZXcgdmFyaWFibGUuCj4gPiA+IC0tLQo+ID4gPiDCoGdudS9wYWNrYWdl cy9jaGVtaXN0cnkuc2NtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAx MjIgKysrKysrKysrKysKPiA+ID4gwqAuLi4vcGF0Y2hlcy9nZW1taS1maXgtc2Fqc29uLXR5cGVz LnBhdGNowqDCoMKgwqDCoCB8wqAgMTEgKwo+ID4gPiDCoC4uLi9zYWpzb24tZm9yLWdlbW1pLW51 bWJlcnMtYXMtc3RyaW5ncy5wYXRjaCB8IDE5NQo+ID4gPiArKysrKysrKysrKysrKysrKysKPiA+ ID4gwqAzIGZpbGVzIGNoYW5nZWQsIDMyOCBpbnNlcnRpb25zKCspCj4gPiA+IMKgY3JlYXRlIG1v ZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL2dlbW1pLWZpeC1zYWpzb24tCj4gPiA+IHR5 cGVzLnBhdGNoCj4gPiA+IMKgY3JlYXRlIG1vZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVz L3NhanNvbi1mb3ItZ2VtbWktCj4gPiA+IG51bWJlcnMtYXMtCj4gPiA+IHN0cmluZ3MucGF0Y2gK PiA+ID4gCj4gPiA+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ID4g PiBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gPiA+IGluZGV4IGM1MTc2MTBmZTguLmY4 ZmQ4NTgxNGYgMTAwNjQ0Cj4gPiA+IC0tLSBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4g PiA+ICsrKyBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gPiA+IEBAIC02LDYgKzYsNyBA QAo+ID4gPiDCoDs7OyBDb3B5cmlnaHQgwqkgMjAyMCBCasO2cm4gSMO2ZmxpbmcKPiA+ID4gPGJq b2Vybi5ob2VmbGluZ0Biam9lcm5ob2VmbGluZy5kZT4KPiA+ID4gwqA7OzsgQ29weXJpZ2h0IMKp IDIwMjAgVmluY2VudCBMZWdvbGwgPHZpbmNlbnQubGVnb2xsQGdtYWlsLmNvbT4KPiA+ID4gwqA7 OzsgQ29weXJpZ2h0IMKpIDIwMjEgUmljYXJkbyBXdXJtdXMgPHJla2Fkb0BlbGVwaGx5Lm5ldD4K PiA+ID4gKzs7OyBDb3B5cmlnaHQgwqkgMjAyMiBEYXZpZCBFbHNpbmcgPGRhdmlkLmVsc2luZ0Bw b3N0ZW8ubmV0Pgo+ID4gPiDCoDs7Owo+ID4gPiDCoDs7OyBUaGlzIGZpbGUgaXMgcGFydCBvZiBH TlUgR3VpeC4KPiA+ID4gwqA7OzsKPiA+ID4gQEAgLTIzLDYgKzI0LDcgQEAKPiA+ID4gwqA7Ozsg YWxvbmcgd2l0aCBHTlUgR3VpeC7CoCBJZiBub3QsIHNlZQo+ID4gPiA8aHR0cDovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLz4uCj4gPiA+IMKgCj4gPiA+IMKgKGRlZmluZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBjaGVtaXN0cnkpCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggZ2V4cCkKPiA+ID4g wqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggcGFja2FnZXMpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxl IChndWl4IHV0aWxzKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoKGd1aXggbGljZW5zZXMpICM6 cHJlZml4IGxpY2Vuc2U6KQo+ID4gPiBAQCAtMzUsNiArMzcsNyBAQCAoZGVmaW5lLW1vZHVsZSAo Z251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBib29zdCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjaGVjaykK PiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjb21wcmVzc2lvbikKPiA+ID4g K8KgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBkb2N1bWVudGF0aW9uKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIGZvbnR1dGlscykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBnbCkKPiA+ID4gQEAgLTUwLDggKzUzLDEwIEBAIChkZWZpbmUtbW9kdWxlIChnbnUgcGFj a2FnZXMgY2hlbWlzdHJ5KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHF0 KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNlcmlhbGl6YXRpb24pCj4g PiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3BoaW54KQo+ID4gPiArwqAgIzp1 c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3RiKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIHhtbCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVt IGNtYWtlKQo+ID4gPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBjb3B5KQo+ ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gZ251KQo+ID4gPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gcHl0aG9uKSkKPiA+ID4gwqAKPiA+ID4g QEAgLTU2NiwzICs1NzEsMTIwIEBAIChkZWZpbmUtcHVibGljIHB5dGhvbi1weW1vbAo+ID4gPiDC oHVzZWQgdG8gcHJlcGFyZSBwdWJsaWNhdGlvbi1xdWFsaXR5IGZpZ3VyZXMsIHRvIHNoYXJlCj4g PiA+IGludGVyYWN0aXZlCj4gPiA+IHJlc3VsdHMgd2l0aAo+ID4gPiDCoHlvdXIgY29sbGVhZ3Vl cywgb3IgdG8gZ2VuZXJhdGUgcHJlLXJlbmRlcmVkIGFuaW1hdGlvbnMuIikKPiA+ID4gwqDCoMKg wqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKQo+ID4gPiArCj4gPiA+ICsoZGVmaW5lIHNhanNv bi1mb3ItZ2VtbWkKPiA+ID4gK8KgIChwYWNrYWdlL2luaGVyaXQgc2Fqc29uCj4gPiA+ICvCoMKg wqAgKG5hbWUgInNhanNvbi1mb3ItZ2VtbWkiKQo+ID4gPiArwqDCoMKgIChzb3VyY2UgKG9yaWdp bgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluaGVyaXQgKHBhY2thZ2Utc291 cmNlIHNhanNvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocGF0Y2hlcyAo Y29ucwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc2VhcmNoLXBhdGNoCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgInNhanNvbi1mb3ItZ2VtbWktbnVtYmVycy1hcy0KPiA+ID4gc3RyaW5n cy5wYXRjaCIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChvcmlnaW4tcGF0Y2hlcyAocGFja2FnZS1zb3VyY2UKPiA+ID4gc2Fqc29uKSkpKSkp Cj4gPiA+ICvCoMKgwqAgKGJ1aWxkLXN5c3RlbSBjb3B5LWJ1aWxkLXN5c3RlbSkKPiA+ID4gK8Kg wqDCoCAoYXJndW1lbnRzCj4gPiA+ICvCoMKgwqDCoCAobGlzdAo+ID4gPiArwqDCoMKgwqDCoCAj Omluc3RhbGwtcGxhbgo+ID4gPiArwqDCoMKgwqDCoCAjficoKCJpbmNsdWRlL3NhanNvbi5oIiAi aW5jbHVkZS8iKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgICgiaW5jbHVkZS9zYWpzb25fb3N0 cmVhbS5oIiAiaW5jbHVkZS8iKSkpKSkpCj4gPiBUaGVzZSBhcmUgdGVjaG5pY2FsbHkgdHdvIHBh Y2thZ2VzOyB0aGVyZWZvcmUgdHdvIHBhdGNoZXMuCj4gPiBZb3Ugc2hvdWxkIHJldXNlIGFzIG11 Y2ggYXMgeW91IGNhbiBmcm9tIHNhanNvbi7CoCBTaW5jZSB0aGlzIHBhdGNoCj4gPiBpcwo+ID4g bGlrZWx5IHRvIGJyZWFrIHRlc3RzLCB5b3UgbWlnaHQgdXNlIGFuIGFwcHJvcHJpYXRlbHkgYW5u b3RhdGVkCj4gPiAjOnRlc3RzPyAjZiB0byBjb252ZXkgdGhpcyBpbmZvcm1hdGlvbi4KPiA+IAo+ IFlvdSBtZWFuIHRvIGNvcHkgdGhlIEdDQzEwIHBhdGNoPwo+IEJ1aWxkaW5nIHRoZSB0ZXN0cyBh bHNvIGZhaWxzLCBidXQgdGhlIHJlc3Qgd29ya3MuIDopCj4gU2hvdWxkIEkgcHV0IGl0IGluIGEg c2VwYXJhdGUgY29tbWl0PwpPbmUgY29tbWl0IGZvciBzYWpzb24tZm9yLWdlbW1pLCBvbmUgY29t bWl0IGZvciBnZW1taS4KIlJldXNlIGFzIG11Y2ggYXMgcG9zc2libGUiIHBhcnRpY3VsYXJseSBt ZWFucyByZXVzZSB0aGUgYnVpbGQgc3lzdGVtLApidXQgaGlnaGxpZ2h0IHRoYXQgIzp0ZXN0cz8g bmVlZCB0byBiZSBzZXQgdG8gI2YuICAoQWxzbywgdXNlCnN1YnN0aXR1dGUta2V5d29yZC1hcmd1 bWVudHMgdG8gYWN0dWFsbHkgc2V0IGl0IHRvICNmLikKCj4gPiA+ICsoZGVmaW5lLXB1YmxpYyBn ZW1taQo+ID4gPiArwqAgKHBhY2thZ2UKPiA+ID4gK8KgwqDCoCAobmFtZSAiZ2VtbWkiKQo+ID4g PiArwqDCoMKgICh2ZXJzaW9uICIwLjUuNyIpCj4gPiA+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2lu Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwKPiA+ID4gImh0dHBz Oi8vZ2l0aHViLmNvbS9wcm9qZWN0LWdlbW1pL2dlbW1pIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjb21taXQgKHN0cmluZy1hcHBlbmQgInYiIHZlcnNp b24pKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQt ZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc2hhMjU2Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChiYXNlMzIKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ID4gPiAiMDBrbTVxNzI2YnNscnc3 eGJmd2IzZjNtcnNrMTlxYmltZm5sM2h2cjR3aTF5M3o4aTE4YSIpKQo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKHBhdGNoZXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHNlYXJjaC1wYXRjaGVzICJnZW1taS1maXgtc2Fqc29uLXR5cGVzLnBhdGNoIikpCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0 aWxzKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc25pcHBldAo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseQo+ID4gPiAiaW5j bHVkZS9nZW1taS90aGlyZF9wYXJ0eSIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidGhpcmRfcGFydHkiKQo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkKPiA+ID4gK8KgwqDCoCAo YnVpbGQtc3lzdGVtIGNtYWtlLWJ1aWxkLXN5c3RlbSkKPiA+ID4gK8KgwqDCoCAobmF0aXZlLWlu cHV0cyAobGlzdCBvcHRpb25wYXJzZXIgcHliaW5kMTEpKQo+ID4gPiArwqDCoMKgIChwcm9wYWdh dGVkLWlucHV0cwo+ID4gPiArwqDCoMKgwqAgKGxpc3QgZmFzdC1mbG9hdAo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqAgcG9ja2V0ZmZ0Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBzYWpz b24tZm9yLWdlbW1pCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdGItc3ByaW50Zgo+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGVndGwKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg IHRpbnlkaXIpKQo+ID4gUmVmcmFpbiBmcm9tIHByb3BhZ2F0aW5nIGlucHV0cy4KPiBBaCBvay4K PiA+ID4gK8KgwqDCoCAoaW5wdXRzIChsaXN0IHpsaWIgcHl0aG9uKSkKPiA+ID4gK8KgwqDCoCAo b3V0cHV0cyAnKCJvdXQiICJiaW4iICJweXRob24iKSkKPiA+ID4gK8KgwqDCoCAoYXJndW1lbnRz Cj4gPiBUaGUgdXN1YWwgc2VxdWVuY2UgaXMgb3V0cHV0cywgYnVpbGQtc3lzdGVtLCBhcmd1bWVu dHMsICppbnB1dHMuCj4gSXMgdGhlcmUgYWxzbyBhIHVzdWFsIHNlcXVlbmNlIGZvciB0aGUgKmlu cHV0cz8KSUlSQyBpdCdzIHBsYWluLCBwcm9wYWdhdGVkLCBuYXRpdmUuCj4gPiAKCkNoZWVycwo= From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:19:39 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:19:39 +0000 Received: from localhost ([127.0.0.1]:37139 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp8V-0005ep-5c for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:19:39 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:48386) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogp8P-0005ed-SQ for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:19:38 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MkX6B4zf0z3wh7; Fri, 7 Oct 2022 17:19:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1665155970; bh=T77kKvsHMAmMz/90BnXtXvCZUNZ8irjsbc5v+RuEwsE=; h=Subject:From:To:Date:In-Reply-To:References; b=LFyR9GYMDqfOPG0gbeB+V3sRgSmxGYPjseKlzZ+ZlwBtP51aiC2OcMfRrfZyTgnU9 Ue823qdOxgsjNHj/LHckxZcY1VKxk6eZuJ0df74WM6FB9mSlWkn44szQFv2AyHLSqF ebvKLjY8uXvbkVyow1aGiTWcTrDyihXwQ5zHyeA0= Message-ID: <31ac136d8b0db255c168500abea1390c1da5e53a.camel@ist.tugraz.at> Subject: Re: [PATCH 07/11] gnu: Add freesasa. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 07 Oct 2022 17:19:29 +0200 In-Reply-To: <86a667652v.fsf@posteo.net> References: <86a667652v.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -0.4 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.116 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MTIgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jh ei5hdD4gd3JpdGVzOgo+IAo+ID4gQW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAoZnJlZXNhc2EpOiBOZXcgdmFyaWFibGUuCj4gPiA+IC0tLQo+ID4gPiDCoGdudS9wYWNr YWdlcy9jaGVtaXN0cnkuc2NtIHwgODEKPiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKPiA+ID4gwqAxIGZpbGUgY2hhbmdlZCwgODEgaW5zZXJ0aW9ucygrKQo+ID4g PiAKPiA+ID4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gPiA+IGIv Z251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gaW5kZXggZjhmZDg1ODE0Zi4uMjIzYTI3 YTIwZCAxMDA2NDQKPiA+ID4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4g KysrIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gQEAgLTM0LDExICszNCwxMyBA QCAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4gwqDCoCAjOnVz ZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBhbGdlYnJhKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIGF1dG90b29scykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBiYWNrdXApCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBiaXNvbikK PiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBib29zdCkKPiA+ID4gwqDCoCAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjaGVjaykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBjb21wcmVzc2lvbikKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBjcHApCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZG9jdW1l bnRhdGlvbikKPiA+ID4gK8KgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZsZXgpCj4gPiA+ IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZm9udHV0aWxzKQo+ID4gPiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIGdyYXBodml6KQo+ID4gPiBAQCAtNTQsNiArNTYsNyBAQCAoZGVmaW5lLW1vZHVs ZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBzZXJpYWxpemF0aW9uKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIHNwaGlueCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzdGIpCj4g PiA+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB3ZWIpCj4gPiA+IMKgwqAgIzp1c2Ut bW9kdWxlIChnbnUgcGFja2FnZXMgeG1sKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBi dWlsZC1zeXN0ZW0gY21ha2UpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5 c3RlbSBjb3B5KQo+ID4gPiBAQCAtNjg4LDMgKzY5MSw4MSBAQCAoZGVmaW5lLXB1YmxpYyBnZW1t aQo+ID4gPiDCoEBpdGVtIGNyeXN0YWxsb2dyYXBoaWMgc3ltbWV0cnkuCj4gPiA+IMKgQGVuZCBl bnVtZXJhdGUiKQo+ID4gPiDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNlOm1wbDIuMCkpKQo+ID4g PiArCj4gPiA+ICsoZGVmaW5lLXB1YmxpYyBmcmVlc2FzYQo+ID4gPiArwqAgKHBhY2thZ2UKPiA+ ID4gK8KgwqDCoCAobmFtZSAiZnJlZXNhc2EiKQo+ID4gPiArwqDCoMKgICh2ZXJzaW9uICIyLjEu MiIpCj4gPiA+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICh1cmwKPiA+ID4gImh0dHBzOi8vZ2l0aHViLmNvbS9taXR0aW5hdHRl bi9mcmVlc2FzYSIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoY29tbWl0IHZlcnNpb24pKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChm aWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGJhc2UzMgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCj4gPiA+ICIw N3dkbmFoZjNnMzU1cnlhaXF2ZnhkNWY0cmw1NHd2OGp3eGNibjBuaWE4OWZxeXNidjBmIikpCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0 aWxzKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc25pcHBldAo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFJlbW92ZSBDIGZpbGVzIGdlbmVyYXRlZCBieSBGbGV4 IGFuZCBCaXNvbgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZm9y LWVhY2ggZGVsZXRlLWZpbGUKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKCJzcmMvcGFyc2VyLmMiICJzcmMvcGFyc2VyLmgiCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICJzcmMvbGV4ZXIuYyIgInNyYy9sZXhlci5oIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkpKQo+ID4gPiArwqDCoMKgIChidWlsZC1zeXN0ZW0g Z251LWJ1aWxkLXN5c3RlbSkKPiA+ID4gK8KgwqDCoCAoaW5wdXRzCj4gPiA+ICvCoMKgwqDCoCAo bGlzdCBnZW1taSBqc29uLWMgbGlieG1sMikpCj4gPiA+ICvCoMKgwqAgKG5hdGl2ZS1pbnB1dHMK PiA+ID4gK8KgwqDCoMKgIChsaXN0IGJpc29uIGZsZXggY2hlY2sgYXV0b2NvbmYgYXV0b21ha2Ug cGtnLWNvbmZpZyBkb3h5Z2VuCj4gPiA+IHBlcmwgbGlidG9vbCkpCj4gPiA+ICvCoMKgwqAgKG91 dHB1dHMgJygib3V0IiAiZG9jIikpCj4gPiA+ICvCoMKgwqAgKGFyZ3VtZW50cwo+ID4gPiArwqDC oMKgwqAgKGxpc3QKPiA+ID4gK8KgwqDCoMKgwqAgIzpjb25maWd1cmUtZmxhZ3MKPiA+ID4gK8Kg wqDCoMKgwqAgI34obGlzdCAiLS1lbmFibGUtY2hlY2siCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAiLS1lbmFibGUtcGFyc2VyLWdlbmVyYXRvciIKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICJDWFhGTEFHUz0tc3RkPWMrKzE3Igo+ID4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIi0tZW5hYmxlLWRveHlnZW4iKQo+ID4gPiArwqDCoMKgwqDCoCAjOnBo YXNlcwo+ID4gPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ3JlbW92ZS1saWJj KystbGlua2luZwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAic3JjL01ha2VmaWxlLmFt Igo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIi1sY1xcK1xcKyIpICIi KSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKPiA+IFdoeT/CoCBJZiBp dCdzIGJlY2F1c2UgeW91J3JlIGJ1aWxkaW5nIGEgc2hhcmVkIGxpYnJhcnksIGRvIHRoaXMgaW4K PiA+IHRoZQo+ID4gbmV4dCBwaGFzZS4KPiBUaGlzIGlzIGxpYmMrKyBmcm9tIExMVk0gYW5kIHRo ZSBsaW5raW5nIGFnYWluc3QgdGhlIHN0YW5kYXJkIGxpYnJhcnkKPiBpcwo+IGF1dG9tYXRpYyBh bnl3YXksIHJpZ2h0Pwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFj ayAnYnVpbGQtc2hhcmVkLWxpYnJhcnkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxh bWJkYSBfCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogInNy Yy9NYWtlZmlsZS5hbSIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJs aWJfTElCUkFSSUVTIikgImxpYl9MVExJQlJBUklFUyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKCgibGliZnJlZXNhc2FcXC5hIikgImxpYmZyZWVzYXNhLmxhIikKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJmcmVlc2FzYV9MREFERCBcXCs9 IGxpYmZyZWVzYXNhXFwubGEiIHByZXYpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBwcmV2ICJcbmxpYmZyZWVzYXNhX2xhX0xJQkFERCIKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICIgPSAtbGpzb24tYwo+ID4gPiAke2xpYnhtbDJfTElCU31cbiIpKQo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIl9hX1NPVVJDRVMiKSAiX2xhX1NPVVJD RVMiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiY29u ZmlndXJlLmFjIgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIkFDX1BS T0dfSU5TVEFMTCIgaW5zdCkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChzdHJpbmctYXBwZW5kICJBTV9QUk9HX0xJQlRPT0xcbiIgaW5zdCkpKQo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJ0ZXN0cy9NYWtlZmlsZS5hbSIKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJsaWJmcmVlc2FzYVxcLmEiKSAi bGliZnJlZXNhc2EubGEiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWJlZm9yZSAnYnVpbGQgJ2J1aWxkLWxleGVy LWFuZC1wYXJzZXIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAod2l0aC1kaXJlY3RvcnktZXhjdXJzaW9uICJz cmMiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAibWFrZSIg ImxleGVyLmgiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2Ug Im1ha2UiICJwYXJzZXIuaCIpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI3Qp KQo+ID4gWW91IGNhbiBkbyB0aGlzIGluIG9uZSBtYWtlLgo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgIChhZGQtYWZ0ZXIgJ2luc3RhbGwgJ2luc3RhbGwtZG9jCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNv cHktcmVjdXJzaXZlbHkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImRvYy9o dG1sIgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCAj JG91dHB1dDpkb2MgIi9zaGFyZS9kb2MvIiAjJG5hbWUKPiA+ID4gIi0iCj4gPiA+ICMkdmVyc2lv bikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkpCj4gPiA+ICvCoMKg wqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9mcmVlc2FzYS5naXRodWIuaW8vIikKPiA+ID4gK8KgwqDC oCAoc3lub3BzaXMgIkxpYnJhcnkgZm9yIGNhbGN1bGF0aW5nIHRoZSBzb2x2ZW50IGFjY2Vzc2li bGUKPiA+ID4gc3VyZmFjZSBhcmVhCj4gPiA+ICsoU0FTQSkgb2YgbW9sZWN1bGVzIikKPiA+ICJD YWxjdWxhdGUgdGhlLi4uIgo+ID4gPiArwqDCoMKgIChkZXNjcmlwdGlvbiAiRnJlZVNBU0EgaXMg YSBjb21tYW5kIGxpbmUgdG9vbCBhbmQgQy1saWJyYXJ5Cj4gPiA+IGZvcgo+ID4gPiArY2FsY3Vs YXRpbmcgc29sdmVudCBhY2Nlc3NpYmxlIHN1cmZhY2UgYXJlYXMgKFNBU0EpLsKgIEJ5IGRlZmF1 bHQKPiA+ID4gTGVlCj4gPiA+ICYKPiA+IFVzZSBAYWJici4KPiBJIGdldCB0aGUgZXJyb3IgIndh cm5pbmc6IGludmFsaWQgVGV4aW5mbyBtYXJrdXAiLCBkbyB5b3UgaGF2ZSBhbgo+IGlkZWEgd2h5 Pwo+ID4gClR5cG8nZD8gIEBhYmJye1NBU0EsIHNvbHZlbnQgYWNjZXNzaWJsZSBzdXJmYWNlIGFy ZWFzfQo= From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:04 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:04 +0000 Received: from localhost ([127.0.0.1]:37146 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAq-0005je-0Y for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:04 -0400 Received: from mout02.posteo.de ([185.67.36.66]:39063) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAn-0005iy-G7 for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:02 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 65557240105 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:21:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156115; bh=sKJS6rLCEVhnZekRcFBZ3cQi8C4GnyiOvgzu/tmGFho=; h=From:To:Cc:Subject:Date:From; b=RqLdCxWGh2mIsTNq3TahDtvqXrafUiwKpAbqWZiII5hejIg79lHcCANdQ3432tyid tUk5mO+7Fc4mASJnyRArdHBgKk3A9A9wInWMEEnS3iHDLVg+11vubJGJK/xXn/Rw56 yMWPD88uj+Qvv1ANkyTT761RhCf2S9MZka/2QX6Y+oC1qk9d9Sl/749SI89CS9ZSBM ceX4r5F/OR8Jc+i6W2vhKFebr/9L63ur9Xu+MvqT5SUZprEeMKdOKCmLRbC/jwgqMB +2OQy7dFZxVISpjfjrtXodv6R6oGLd1fbMfn5ucHBIhDRTCrXjgLV21qj6zLTA1Qxa KLtkcYiFsJ8Dw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX8x5bVfz6tpj; Fri, 7 Oct 2022 17:21:51 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 00/13] Add rdkit v2. Date: Fri, 7 Oct 2022 15:21:37 +0000 Message-Id: <20221007152148.32591-1-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Thanks a lot for your comments, they are very helpful! Sorry about the descriptions, I took them mostly from upstream. :) Are they still too short? I still have the following problems: * The tests of tinydir contain a bundled fork of cbehave which uses a (bundled) copy of rlutil, so I left them disabled for now. * Building the documentation of yaehmop with pdflatex is not reproducible even though I set FORCE_SOURCE_DATE=1. Is it even necessary to build the documentation? * Using @abbr in the description does not work (I also did not find it in any other package). Greetings, David David Elsing (13): gnu: Add fast-float. gnu: Add pocketfft. gnu: Add sajson. gnu: Add tinydir. gnu: Add optionparser. gnu: Add gemmi. gnu: Add freesasa. gnu: Add maeparser. gnu: Add coordgenlibs. gnu: Add yaehmop-tightbind. gnu: Add avalontoolkit. gnu: Add ringdecomposerlib. gnu: Add rdkit. gnu/packages/chemistry.scm | 713 ++++++++++++++++++ gnu/packages/cpp.scm | 232 ++++++ .../patches/gemmi-fix-sajson-types.patch | 11 + .../rdkit-cmake-external-dependencies.patch | 102 +++ .../patches/sajson-build-with-gcc10.patch | 45 ++ .../sajson-for-gemmi-build-with-gcc10.patch | 45 ++ .../sajson-for-gemmi-numbers-as-strings.patch | 195 +++++ 7 files changed, 1343 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch create mode 100644 gnu/packages/patches/rdkit-cmake-external-dependencies.patch create mode 100644 gnu/packages/patches/sajson-build-with-gcc10.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:08 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:08 +0000 Received: from localhost ([127.0.0.1]:37153 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAt-0005kH-EE for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:08 -0400 Received: from mout02.posteo.de ([185.67.36.66]:44819) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAp-0005j1-AT for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:04 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id C12BA240104 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:21:57 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156117; bh=1M7M0xQUFQToKJlxyyH48OGhvjG9GqpCTD3qYoiJaEU=; h=From:To:Cc:Subject:Date:From; b=KAfSRoa3vTGOycsZ1Wg/faLz+vlpAISBmjLQcrmSD3JGAOsRcIDn2vg7X+LxwU0Jb TzxNQAXU31fvjnQegH/XbTDMTw+HT6yRy90HVwYLpj6cvvetgy/33ubGkiOA7LwvX+ JOTk3xGvwjAnNFySvnKsG77QTkZUejlbWkV+P3ZuZqeBRdCPORGuQa5TkK8oWKBlsG ylLxo0McdLGNkrEPwVNQEDZOEuQMwUu5P2koN6d+6djAOtVerqV3wgqGgdoG80XrDs oM+JlATVUlwtjdIegflOei7xP8WSwHxVD/2sXiA065wGalNoWWWI4UBBCjRzJaT5Fu BPxVZakYiEZ3A== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX912Xv8z6tnN; Fri, 7 Oct 2022 17:21:57 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 01/13] gnu: Add fast-float. Date: Fri, 7 Oct 2022 15:21:38 +0000 Message-Id: <20221007152148.32591-2-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (fast-float): New variable. --- gnu/packages/cpp.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index d03e0bc7e1..a7404df563 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2022 muradm ;;; Copyright © 2022 Attila Lendvai ;;; Copyright © 2022 Arun Isaac +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -1907,3 +1908,56 @@ (define-public cpp-mustache templated string type for compatibility with any STL-like string (std::string, std::wstring, etc).") (license license:boost1.0))) + +(define-public fast-float + (package + (name "fast-float") + (version "3.5.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fastfloat/fast_float") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0z3rxxd0pwvw70dbnv63rm67biw829vdqf50y16isxm6g3sbrz8g")))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list + "-DFASTFLOAT_TEST=ON" + "-DSYSTEM_DOCTEST=ON") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-cmake-tests + (lambda _ + (substitute* "tests/CMakeLists.txt" + (("FetchContent_GetProperties\\(supplemental_test_files.*") + "") + (("if\\(NOT supplemental_test_files_POPULATED.*") + (string-append + "set(supplemental_test_files_BINARY_DIR " + #$(this-package-native-input "test-data") "/data" + ")\nif(0)\n")))))))) + (native-inputs + `(("test-data" + ,(let ((commit "97a0b2e638feb479387554cf253e346500541e7e")) + (origin + (method git-fetch) + (uri (git-reference + (url + "https://github.com/fastfloat/supplemental_test_files.git") + (commit commit))) + (file-name (git-file-name "fast_float_test-data" commit)) + (sha256 + (base32 + "0dxbiyzyh7i847i89ablfzypfc3ckhm7f74w98jsh73v1mppmxlf"))))) + ("doctest" ,doctest))) + (home-page "https://github.com/fastfloat/fast_float") + (synopsis "Floating point number parser for C++") + (description "@code{fast_float} is a header-only C++ library for parsing +floating point numbers from strings. It implements the C++ from_chars +functions for the float and double types.") + (license (list license:asl2.0 license:expat)))) ; dual licensed -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:09 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:09 +0000 Received: from localhost ([127.0.0.1]:37156 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAu-0005kM-3V for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:09 -0400 Received: from mout01.posteo.de ([185.67.36.65]:48777) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAq-0005j3-Ne for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:05 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 9E2FC240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:21:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156118; bh=FZvur5fTxCpkf2Q4cyc4gY/50D8SYXjcK3UpSQc8qHM=; h=From:To:Cc:Subject:Date:From; b=DOiwOSCSt8YjxVlONOFakUEdmGGF/EZYMvV0mvta81AugOMFvNebTjkF4/fP94y10 saXYjI056U0zD5r2+Qt1nPIPthV4V8WNyD3mES1qRif2t8H1UtDSVZaovIo/fktokW iMZpLlizzxz8hE1CvBgd6r8uSOybQe1nmgV/UJOvnqMzW+Nw1OoSkNBU33esbX7RM1 Or26TqrYbXvI4lI1JC9mf89aGflK/QU1SdJveVIKrfuywLNebXGiOt9XH/Cu5qQzw+ TpUMCAQbTkx4HkLHgj857f7KF4upbdI85GZx4Mx1yhO3Q6W5BrbUHkpKrSOKLCgK+3 jIDl/ax/Pz+4Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX920Dddz6tr5; Fri, 7 Oct 2022 17:21:58 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 02/13] gnu: Add pocketfft. Date: Fri, 7 Oct 2022 15:21:39 +0000 Message-Id: <20221007152148.32591-3-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (pocketfft): New variable. --- gnu/packages/cpp.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index a7404df563..38a2a9e829 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -1961,3 +1961,47 @@ (define-public fast-float floating point numbers from strings. It implements the C++ from_chars functions for the float and double types.") (license (list license:asl2.0 license:expat)))) ; dual licensed + +(define-public pocketfft-cpp + (let ((commit "daa8bb18327bc5c7d22c69428c25cf5dc64167d3") + (revision "0")) + (package + (name "pocketfft-cpp") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mreineck/pocketfft") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dbkkqkmkxgmz1qjpsqzic5ig3qw1pqndbb3dvjc7xq5f2rdzyq1")))) + (build-system copy-build-system) + (arguments + (list + #:install-plan + #~'(("pocketfft_hdronly.h" "include/")) + #:phases + #~(modify-phases %standard-phases + (add-before 'install 'patch-novectors + (lambda _ + (substitute* "pocketfft_hdronly.h" + (("#ifndef POCKETFFT_NO_VECTORS") + "#if !(POCKETFFT_NO_VECTORS)") + (("#if defined\\(POCKETFFT_NO_VECTORS\\)") + "#if POCKETFFT_NO_VECTORS") + (("#define POCKETFFT_NO_VECTORS") + "#define POCKETFFT_NO_VECTORS 1") + (("#\\s*undef POCKETFFT_NO_VECTORS") + "#define POCKETFFT_NO_VECTORS 0") + (("#define POCKETFFT_HDRONLY_H.*" orig) + (string-append + orig "\n#ifndef POCKETFFT_NO_VECTORS\n" + "#define POCKETFFT_NO_VECTORS 1\n" "#endif\n")))))))) + (home-page "https://github.com/mreineck/pocketfft") + (synopsis "C++11 header-only Fast Fourier Transform library") + (description "This package provides a single-header C++11 library for +computing Fast Fourier transformations. It supports multidimensional arrays, +different floating point sizes and complex transformations.") + (license license:bsd-3)))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:10 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:10 +0000 Received: from localhost ([127.0.0.1]:37160 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAv-0005kf-4y for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:10 -0400 Received: from mout01.posteo.de ([185.67.36.65]:59881) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAq-0005j5-OK for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:05 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 1F0C224002B for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:21:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156119; bh=Zg2glYJ3DFrHbdoMHdNxlIjQ6Z8Xr/DS2dw5v/EuThk=; h=From:To:Cc:Subject:Date:From; b=Je7l/8ZV5J6CpH8s9ZTieLyUZYpBmSr/+kxuXlFl+63oytbudSnETBo9gTTE1R1V5 8VS4dTi1IV8/iznSnEMsbHkMtDCBkr5GFSYkqA2BBqdoDDOxIrDcnysh7RAx04OP1B exdW2zovrEsm8jXkG+3fV8Z/gru0BnMa9k30v86pTrG7/7MS2nbQ9MaSAZChxS6OgJ 2ulg+jRIzVGTTjZMREBbHzbmVruO8sv4xRukhBQYdQIVGH9hFMw2fsZmZBuMylaMHZ s7v9HVSoONFdFbcZ+szf4KTW9MoVQbBpDpmOdKamj/fkHW0q3kjyzJgWLsB+eUTCZh cKB90uvf1bjfA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX9251vjz6tqx; Fri, 7 Oct 2022 17:21:58 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 03/13] gnu: Add sajson. Date: Fri, 7 Oct 2022 15:21:40 +0000 Message-Id: <20221007152148.32591-4-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (sajson): New variable. --- gnu/packages/cpp.scm | 60 +++++++++++++++++++ .../patches/sajson-build-with-gcc10.patch | 45 ++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 gnu/packages/patches/sajson-build-with-gcc10.patch diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 38a2a9e829..dca0245df5 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -57,6 +57,7 @@ (define-module (gnu packages cpp) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (guix build-system scons) #:use-module (guix modules) #:use-module (guix gexp) #:use-module (gnu packages) @@ -2005,3 +2006,62 @@ (define-public pocketfft-cpp computing Fast Fourier transformations. It supports multidimensional arrays, different floating point sizes and complex transformations.") (license license:bsd-3)))) + +(define-public sajson + (let ((commit "ec644013e34f9984a3cc9ba568cab97a391db9cd") + (revision "0")) + (package + (name "sajson") + (version (git-version "1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chadaustin/sajson") + (commit commit))) + (file-name (git-file-name name version)) + (patches + (search-patches "sajson-build-with-gcc10.patch")) + (sha256 + (base32 + "0fjag27w7gvkc5pdhq3ad7yc09rabpzahndw1sgsg04ipznidmmq")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "third-party")))) + (build-system scons-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-other-builds + (lambda _ + (substitute* "SConstruct" + (("for name, tools in builds:") + "for name, tools in [('opt', [gcc, opt])]:")))) + (add-after 'unpack 'use-external-unittest-cpp + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "SConscript" + (("unittestpp_env\\.Library") "_dummy = ") + (("test_env = env.Clone\\(tools=\\[unittestpp, sajson\\]\\)") + (string-append + "test_env = env.Clone(tools=[sajson])\n" + "test_env.Append(CPPPATH='" + (search-input-directory inputs "/include/UnitTest++") + "', LIBPATH='" + (string-append #$(this-package-native-input "unittest-cpp") + "/lib") + "', LIBS=['UnitTest++'])"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "build/opt/test") + (invoke "build/opt/test_unsorted")))) + (replace 'install + (lambda _ + (let ((out (string-append #$output "/include"))) + (install-file "include/sajson.h" out) + (install-file "include/sajson_ostream.h" out))))))) + (native-inputs (list unittest-cpp)) + (home-page "https://github.com/chadaustin/sajson") + (synopsis "C++11 header-only, in-place JSON parser") + (description "@code{sajson} is an in-place JSON parser with support for +parsing with only a single memory allocation.") + (license license:expat)))) diff --git a/gnu/packages/patches/sajson-build-with-gcc10.patch b/gnu/packages/patches/sajson-build-with-gcc10.patch new file mode 100644 index 0000000000..878706dc79 --- /dev/null +++ b/gnu/packages/patches/sajson-build-with-gcc10.patch @@ -0,0 +1,45 @@ +This patch is from the upstream pull request +https://github.com/chadaustin/sajson/pull/54. +It fixes linking with GCC. + +diff --git a/include/sajson.h b/include/sajson.h +index 8b4e05a..1bd045b 100644 +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, size_t value) { + // header. This trick courtesy of Rich Geldreich's Purple JSON parser. + template + struct globals_struct { ++ static const unsigned char parse_flags[256]; ++}; ++typedef globals_struct<> globals; ++ + // clang-format off + + // bit 0 (1) - set if: plain ASCII string character + // bit 1 (2) - set if: whitespace + // bit 4 (0x10) - set if: 0-9 e E . +- constexpr static const uint8_t parse_flags[256] = { ++ template ++ const unsigned char globals_struct::parse_flags[256] = { + // 0 1 2 3 4 5 6 7 8 9 A B C D E F + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2, 0, 0, // 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 1 +@@ -162,15 +167,13 @@ struct globals_struct { + }; + + // clang-format on +-}; +-typedef globals_struct<> globals; + +-constexpr inline bool is_plain_string_character(char c) { ++inline bool is_plain_string_character(char c) { + // return c >= 0x20 && c <= 0x7f && c != 0x22 && c != 0x5c; + return (globals::parse_flags[static_cast(c)] & 1) != 0; + } + +-constexpr inline bool is_whitespace(char c) { ++inline bool is_whitespace(char c) { + // return c == '\r' || c == '\n' || c == '\t' || c == ' '; + return (globals::parse_flags[static_cast(c)] & 2) != 0; + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:10 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:11 +0000 Received: from localhost ([127.0.0.1]:37163 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAw-0005l1-IS for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:10 -0400 Received: from mout02.posteo.de ([185.67.36.66]:60883) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAr-0005j6-99 for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:05 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id B8261240105 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:21:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156119; bh=eshfzIHqLgiTYmOKXt03OJtgkcF4BeSfoS/lhWvM+d8=; h=From:To:Cc:Subject:Date:From; b=W2TAYksphgjA6x7O+DYor6SIJ7IbBM0VCNkWPI3ALleuW+E+d6T+3eJHjG0lHd3AU nPFdV0+nLd6fJFo55tYnv9dnGllQhgE/Z1zHeRGbIDm5Q/CaF+8LlPFRP7d1uKnqeP 1RmQN+6DOxGhfrHbFicbqDzUHARtbw+5VkLPte/HDpc55pDzWzaHx9yProC5OOMyei mHBXo5mHXlAYJdkDxg4FilEcNeZ28rW5h4gdFFmH5XIQFv4BcJWT9fJESkh8Yj0RAP HpalWubCT9qUBsBXsGWZBlENVEplH0/zReDYNVCWhJDQddyUh2TbTX6LBSHp5kICUh 1wjoMAtBBhY0w== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX932TPyz6tng; Fri, 7 Oct 2022 17:21:59 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 04/13] gnu: Add tinydir. Date: Fri, 7 Oct 2022 15:21:41 +0000 Message-Id: <20221007152148.32591-5-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (tinydir): New variable. --- gnu/packages/cpp.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index dca0245df5..e99fdcecd8 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2065,3 +2065,30 @@ (define-public sajson (description "@code{sajson} is an in-place JSON parser with support for parsing with only a single memory allocation.") (license license:expat)))) + +(define-public tinydir + (package + (name "tinydir") + (version "1.2.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cxong/tinydir") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1nprgdfx4i8wzc1idw6chan4fjfa75b5ll8kghdc0q2278pny259")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "tests/cbehave")))) + (build-system copy-build-system) + (arguments + (list + ;; TODO: Tests contain a private fork of cbehave and a bundled copy of rlutil + #:install-plan + #~'(("tinydir.h" "include/")))) + (home-page "https://github.com/cxong/tinydir") + (synopsis "C header-only directory and file reader") + (description "@code{tinydir} is a header-only C library to portably read +files and directories.") + (license license:bsd-2))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:11 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:11 +0000 Received: from localhost ([127.0.0.1]:37165 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAw-0005l9-Ue for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:11 -0400 Received: from mout01.posteo.de ([185.67.36.65]:34415) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAs-0005j8-1W for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:06 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 7CCD6240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156120; bh=/c7J4GMpg3EpigGCGZauj5uHD1O8xyh2KTKaI4b9bmY=; h=From:To:Cc:Subject:Date:From; b=O0OgDJ57WpzKDQ3QUaAlDEIMNP+gtZsWoJF4dunBCsi7BjOAN0JI637hsqkOetZJc NnB435EBnoO60C5V7fgJEX2GsWALzLmZxRhpvHx8AOS9MDNqy3y4tEUw540pWsH185 dcM3siQyCATvWjb2aCZNN4HhzfbZy6UbQxHLxv/vFZwvokJdq5ii4GG21fkN71kG1b 77IotxHpzAlrMzKd8HOE/oKlhgoKMYEBnQ3bxu4MRe99klk7EFcRys018STZOB2ANT VFG5Dh5ybcvvJcjwPUksi2egpQzViX51+Lm0Yo7et4Kz+jWXyQVJgC6NM8dQ46JVWe tEHeSGfknc7Mg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX940CRVz6tmq; Fri, 7 Oct 2022 17:22:00 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 05/13] gnu: Add optionparser. Date: Fri, 7 Oct 2022 15:21:42 +0000 Message-Id: <20221007152148.32591-6-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (optionparser): New variable. --- gnu/packages/cpp.scm | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index e99fdcecd8..d1c580a1fc 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2092,3 +2092,50 @@ (define-public tinydir (description "@code{tinydir} is a header-only C library to portably read files and directories.") (license license:bsd-2))) + +(define-public optionparser + (package + (name "optionparser") + (version "1.7") + (source (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/optionparser/" + "optionparser-" version ".tar.gz")) + (sha256 + (base32 + "04gfxrdzwacaynb8scsz6rr7nh64n6yk6w9dh2qdhrxw4caqr0dk")))) + (outputs '("out" "doc")) + (build-system gnu-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'chdir + (lambda _ (chdir "src"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (begin + (invoke "./example_arg") + (invoke "./testparse") + (invoke "./testprintusage") + (invoke "./testodr") + (invoke "./example"))))) + (replace 'install + (lambda _ + (install-file "optionparser.h" (string-append #$output "/include")))) + (add-after 'install 'install-doc + (lambda _ + (copy-recursively + "../html" + (string-append #$output:doc "/share/doc/optionparser/html"))))))) + (native-inputs (list doxygen)) + (home-page "https://optionparser.sourceforge.net/") + (synopsis "Header-only C++ library to parse command line options") + (description "This library can be used to handle the command line +arguments of a C++ program. It supports the short and long option formats of +getopt(), getopt_long() and getopt_long_only(), but has a more convenient +interface.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:35 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:35 +0000 Received: from localhost ([127.0.0.1]:37168 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpB6-0005la-G2 for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:35 -0400 Received: from mout02.posteo.de ([185.67.36.66]:55293) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAs-0005jJ-OS for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:08 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 3572C240104 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156121; bh=+zY64/EXHOrUVP92IqpDsqm5VWuZJPfOEbdmROSpLiY=; h=From:To:Cc:Subject:Date:From; b=Ww63MyUbhrBwXlFaOuUKSPRKGNUsx1B6D8ka+Q7Wy/ODyCuficx4cGdyS9VvaUCIw ve2njL6CVCkDO0bboJY5kQ1bPFuTjgX3j3/RW1T8QNtYk3g9+zFuhaf1s3zMGB6gaN HKD1Q1sRjX7thShACZO9HF8SnvArMKWhOPg2RIljoly9j1UVSa6kws2lARBmg5F9do m3aBvRj2a98Brr6zQgSUaYHCj6etKwMm6DY4n6TNAUPQMamezVnEP7P5dw1O4Twes9 Q7wqY+m/J1d8fG2l1GWvZtjKp0ND2u9GoSketdQT9UhRXldThzhwQFnf22//Cj29iG YU/jFfGRTevyw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX945FCRz6tmq; Fri, 7 Oct 2022 17:22:00 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 06/13] gnu: Add gemmi. Date: Fri, 7 Oct 2022 15:21:43 +0000 Message-Id: <20221007152148.32591-7-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/chemistry.scm (gemmi): New variable. --- gnu/packages/chemistry.scm | 118 +++++++++++ .../patches/gemmi-fix-sajson-types.patch | 11 + .../sajson-for-gemmi-build-with-gcc10.patch | 45 ++++ .../sajson-for-gemmi-numbers-as-strings.patch | 195 ++++++++++++++++++ 4 files changed, 369 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index c517610fe8..d8f1608a3a 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2020 Björn Höfling ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2021 Ricardo Wurmus +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages chemistry) + #:use-module (guix gexp) #:use-module (guix packages) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) @@ -35,6 +37,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) @@ -50,8 +53,10 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages stb) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system python)) @@ -566,3 +571,116 @@ (define-public python-pymol used to prepare publication-quality figures, to share interactive results with your colleagues, or to generate pre-rendered animations.") (license license:bsd-3))) + +(define-public sajson-for-gemmi + (package/inherit sajson + (name "sajson-for-gemmi") + (source (origin + (inherit (package-source sajson)) + (patches (search-patches + "sajson-for-gemmi-numbers-as-strings.patch" + "sajson-for-gemmi-build-with-gcc10.patch")))) + (arguments + (substitute-keyword-arguments (package-arguments sajson) + ((#:tests? _ #f) #f) + ((#:phases phases) + #~(modify-phases #$phases + (delete 'build))))))) + +(define-public gemmi + (package + (name "gemmi") + (version "0.5.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/project-gemmi/gemmi") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00km5q726bslrw7xbfwb3f3mrsk19qbimfnl3hvr4wi1y3z8i18a")) + (patches + (search-patches "gemmi-fix-sajson-types.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "include/gemmi/third_party") + (delete-file-recursively "third_party"))))) + (outputs '("out" "bin" "python")) + (build-system cmake-build-system) + (native-inputs + (list fast-float + optionparser + pegtl + pocketfft-cpp + pybind11 + sajson-for-gemmi + stb-sprintf + tinydir)) + (inputs (list python zlib)) + (arguments + (list + #:configure-flags + #~(let* ((python-lib + (string-append + #$output:python "/lib/python" + #$(version-major+minor (package-version python)) + "/site-packages"))) + (list "-DUSE_PYTHON=ON" + (string-append "-DPYTHON_INSTALL_DIR=" python-lib))) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-includes + (lambda _ + (substitute* "include/gemmi/sprintf.hpp" + (("") "")) + (substitute* "include/gemmi/dirwalk.hpp" + (("\"third_party/tinydir.h\"") "")) + (substitute* "include/gemmi/cif.hpp" + (("\"third_party/tao/pegtl.hpp\"") "")) + (substitute* "include/gemmi/json.hpp" + (("\"third_party/sajson.h\"") "")) + (substitute* "python/gemmi.cpp" + (("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"") + "")) + (substitute* '("include/gemmi/atof.hpp" + "include/gemmi/numb.hpp") + (("\"third_party/fast_float.h\"") + "")) + (substitute* "include/gemmi/fourier.hpp" + (("\"third_party/pocketfft_hdronly.h\"") + "")))) + (add-after 'patch-includes 'patch-cif + (lambda _ + (substitute* "include/gemmi/cif.hpp" + (((string-append + "^.*using analyze_t = pegtl::analysis::generic" + ";.*$")) "") + (("TAOCPP_PEGTL_") "TAO_PEGTL_")))) + (add-after 'unpack 'change-bin-prefix + (lambda _ + (substitute* "CMakeLists.txt" + (("install\\(TARGETS program DESTINATION bin\\)") + (string-append + "install(TARGETS program DESTINATION " + #$output:bin "/bin)"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "../source" + (setenv "PYTHONPATH" "../build") + (invoke "python3" "-m" "unittest" "discover" "-v" + "-s" "tests")))))))) + (home-page "https://gemmi.readthedocs.io/en/latest/") + (synopsis "Macromolecular crystallography library and utilities") + (description "GEMMI is a C++ library for macromolecular crystallography. +It can be used for working with +@enumerate +@item macromolecular models (content of PDB, PDBx/mmCIF and mmJSON files), +@item refinement restraints (CIF files), +@item reflection data (MTZ and mmCIF formats), +@item data on a 3D grid (electron density maps, masks, MRC/CCP4 format) +@item crystallographic symmetry. +@end enumerate") + (license license:mpl2.0))) diff --git a/gnu/packages/patches/gemmi-fix-sajson-types.patch b/gnu/packages/patches/gemmi-fix-sajson-types.patch new file mode 100644 index 0000000000..9633ddac8b --- /dev/null +++ b/gnu/packages/patches/gemmi-fix-sajson-types.patch @@ -0,0 +1,11 @@ +diff -ur a/include/gemmi/json.hpp b/include/gemmi/json.hpp +--- a/include/gemmi/json.hpp ++++ b/include/gemmi/json.hpp +@@ -38,6 +38,7 @@ + + inline std::string as_cif_value(const sajson::value& val) { + switch (val.get_type()) { ++ case sajson::TYPE_INTEGER: + case sajson::TYPE_DOUBLE: + return val.as_string(); + case sajson::TYPE_NULL: diff --git a/gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch b/gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch new file mode 100644 index 0000000000..878706dc79 --- /dev/null +++ b/gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch @@ -0,0 +1,45 @@ +This patch is from the upstream pull request +https://github.com/chadaustin/sajson/pull/54. +It fixes linking with GCC. + +diff --git a/include/sajson.h b/include/sajson.h +index 8b4e05a..1bd045b 100644 +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, size_t value) { + // header. This trick courtesy of Rich Geldreich's Purple JSON parser. + template + struct globals_struct { ++ static const unsigned char parse_flags[256]; ++}; ++typedef globals_struct<> globals; ++ + // clang-format off + + // bit 0 (1) - set if: plain ASCII string character + // bit 1 (2) - set if: whitespace + // bit 4 (0x10) - set if: 0-9 e E . +- constexpr static const uint8_t parse_flags[256] = { ++ template ++ const unsigned char globals_struct::parse_flags[256] = { + // 0 1 2 3 4 5 6 7 8 9 A B C D E F + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2, 0, 0, // 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 1 +@@ -162,15 +167,13 @@ struct globals_struct { + }; + + // clang-format on +-}; +-typedef globals_struct<> globals; + +-constexpr inline bool is_plain_string_character(char c) { ++inline bool is_plain_string_character(char c) { + // return c >= 0x20 && c <= 0x7f && c != 0x22 && c != 0x5c; + return (globals::parse_flags[static_cast(c)] & 1) != 0; + } + +-constexpr inline bool is_whitespace(char c) { ++inline bool is_whitespace(char c) { + // return c == '\r' || c == '\n' || c == '\t' || c == ' '; + return (globals::parse_flags[static_cast(c)] & 2) != 0; + } diff --git a/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch new file mode 100644 index 0000000000..6f476b8583 --- /dev/null +++ b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch @@ -0,0 +1,195 @@ +Patch for gemmi: Keep numbers in JSON file as strings. + +Adapted from this commit of the bundled fork of sajson in gemmi: +https://github.com/project-gemmi/gemmi/commit/fccbca4f6040364ba708613e1429c2251872240d + +diff -ur a/include/sajson.h b/include/sajson.h +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -411,43 +411,6 @@ + }; + } // namespace internal + +-namespace integer_storage { +-enum { word_length = 1 }; +- +-inline int load(const size_t* location) { +- int value; +- memcpy(&value, location, sizeof(value)); +- return value; +-} +- +-inline void store(size_t* location, int value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- static_assert( +- sizeof(value) <= sizeof(*location), +- "size_t must not be smaller than int"); +- memcpy(location, &value, sizeof(value)); +-} +-} // namespace integer_storage +- +-namespace double_storage { +-enum { word_length = sizeof(double) / sizeof(size_t) }; +- +-inline double load(const size_t* location) { +- double value; +- memcpy(&value, location, sizeof(double)); +- return value; +-} +- +-inline void store(size_t* location, double value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- memcpy(location, &value, sizeof(double)); +-} +-} // namespace double_storage +- + /// Represents a JSON value. First, call get_type() to check its type, + /// which determines which methods are available. + /// +@@ -585,70 +548,10 @@ + return length; + } + +- /// If a numeric value was parsed as a 32-bit integer, returns it. +- /// Only legal if get_type() is TYPE_INTEGER. +- int get_integer_value() const { +- assert_tag(tag::integer); +- return integer_storage::load(payload); +- } +- +- /// If a numeric value was parsed as a double, returns it. +- /// Only legal if get_type() is TYPE_DOUBLE. +- double get_double_value() const { +- assert_tag(tag::double_); +- return double_storage::load(payload); +- } +- +- /// Returns a numeric value as a double-precision float. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- double get_number_value() const { +- assert_tag_2(tag::integer, tag::double_); +- if (value_tag == tag::integer) { +- return get_integer_value(); +- } else { +- return get_double_value(); +- } +- } +- +- /// Returns true and writes to the output argument if the numeric value +- /// fits in a 53-bit integer. This is useful for timestamps and other +- /// situations where integral values with greater than 32-bit precision +- /// are used, as 64-bit values are not understood by all JSON +- /// implementations or languages. +- /// Returns false if the value is not an integer or not in range. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- bool get_int53_value(int64_t* out) const { +- // Make sure the output variable is always defined to avoid any +- // possible situation like +- // https://gist.github.com/chadaustin/2c249cb850619ddec05b23ca42cf7a18 +- *out = 0; +- +- assert_tag_2(tag::integer, tag::double_); +- switch (value_tag) { +- case tag::integer: +- *out = get_integer_value(); +- return true; +- case tag::double_: { +- double v = get_double_value(); +- if (v < -(1LL << 53) || v > (1LL << 53)) { +- return false; +- } +- int64_t as_int = static_cast(v); +- if (as_int != v) { +- return false; +- } +- *out = as_int; +- return true; +- } +- default: +- return false; +- } +- } +- + /// Returns the length of the string. + /// Only legal if get_type() is TYPE_STRING. + size_t get_string_length() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return payload[1] - payload[0]; + } + +@@ -659,7 +562,7 @@ + /// embedded NULs. + /// Only legal if get_type() is TYPE_STRING. + const char* as_cstring() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return text + payload[0]; + } + +@@ -667,7 +570,7 @@ + /// Returns a string's value as a std::string. + /// Only legal if get_type() is TYPE_STRING. + std::string as_string() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return std::string(text + payload[0], text + payload[1]); + } + #endif +@@ -690,6 +593,10 @@ + assert(e1 == value_tag || e2 == value_tag); + } + ++ void assert_tag_3(tag e1, tag e2, tag e3) const { ++ assert(e1 == value_tag || e2 == value_tag || e3 == value_tag); ++ } ++ + void assert_in_bounds(size_t i) const { assert(i < get_length()); } + + const tag value_tag; +@@ -2059,6 +1966,8 @@ + std::pair parse_number(char* p) { + using internal::tag; + ++ size_t start = p - input.get_data(); ++ + // Assume 32-bit, two's complement integers. + static constexpr unsigned RISKY = INT_MAX / 10u; + unsigned max_digit_after_risky = INT_MAX % 10u; +@@ -2235,23 +2144,18 @@ + u = 0u - u; + } + } ++ ++ bool success; ++ size_t* out = allocator.reserve(2, &success); ++ if (SAJSON_UNLIKELY(!success)) { ++ return std::make_pair(oom(p, "number"), tag::null); ++ } ++ out[0] = start; ++ out[1] = p - input.get_data(); ++ + if (try_double) { +- bool success; +- size_t* out +- = allocator.reserve(double_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "double"), tag::null); +- } +- double_storage::store(out, d); + return std::make_pair(p, tag::double_); + } else { +- bool success; +- size_t* out +- = allocator.reserve(integer_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "integer"), tag::null); +- } +- integer_storage::store(out, static_cast(u)); + return std::make_pair(p, tag::integer); + } + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:36 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:36 +0000 Received: from localhost ([127.0.0.1]:37170 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBL-0005lu-JV for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:35 -0400 Received: from mout01.posteo.de ([185.67.36.65]:43585) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAu-0005jb-3x for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:09 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 904D7240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:02 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156122; bh=BFlnFQcV4yZCs/PmTqzfgB7TdPqRqQobZ/Lec/u/Mvk=; h=From:To:Cc:Subject:Date:From; b=m+6ajeSUJm0oG1ovjIiyx6jxuOzhjcZSqiXsxfkZFxWn0T+VhP1X0RxU4J3ENhy4V 8Hyn1QW9V/eUP2wuoSgsfm8AbCCzQDc1c9Q4Vl9BzEh0FxODWcYC201TqaE2MkGxQ+ bwbvX2Klg1vhIwV8hFefXV6o3l4deDynXXcdFSfJh8YxX0qRv58Bc/zi/YvY0sQeZz wSgOpfaEQRvxYCyp4K2s2e9jCekwAXbzaQG6PhIrgjwY4wFTRezvm2i/hLAALQbV5i aKjrJZ89LkOxz1h0E5bLQD09NYAykZNYfffVmxf/fRsYJLpaQopsUusOxaE1UzQX6H zsEwQssGGQNXQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX960z9Dz6tpd; Fri, 7 Oct 2022 17:22:02 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 08/13] gnu: Add maeparser. Date: Fri, 7 Oct 2022 15:21:45 +0000 Message-Id: <20221007152148.32591-9-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (maeparser): New variable. --- gnu/packages/chemistry.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 681e026186..6eb1e4a694 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -770,3 +770,24 @@ (define-public freesasa parameterized to arbitrary precision, and for high resolution versions of the algorithms, the calculations give identical results.") (license license:expat))) + +(define-public maeparser + (package + (name "maeparser") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/maeparser") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1yv4y5hn49fhylziigsg922bb244lb57p69r7vg9q899zd3l5b7l")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list zlib)) + (home-page "https://github.com/schrodinger/maeparser") + (synopsis "Maestro file parser") + (description "maeparser is a parser for Schrodinger Maestro files.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:36 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:36 +0000 Received: from localhost ([127.0.0.1]:37172 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBM-0005m2-1p for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:36 -0400 Received: from mout02.posteo.de ([185.67.36.66]:42689) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAt-0005jU-EK for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:09 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id DCD96240101 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156121; bh=V/+UamU9jZNmy4/FY2xLkfGYxoDNKMb22lxoM/B1zRQ=; h=From:To:Cc:Subject:Date:From; b=iYSP6oVj1JlCRe2iAFan3ZxaHDBuhioryjktnttYkhs9f0rYmTPFwUcYKIELwgIxo MeXwKZhsvclt4Rf6pnvJqSNl2Ax0e0WgIA4mrBDJFC+sY44VkmHlZ4egwoMDjtWVuX WL4bo5d6UcDdPSQepr3JcNgq+mt2ghPLiKo80eRufuL1eyE4nyeRD/XQQcq2YAGgWb kxwyHRw3eLAOw+U+nB94pF0R5eDUgWP5hX4EX4Ap2vOMAs2VCd4reMSK7hoQSJ2+jg qMi0PsaoLfXxH0PxEzL3OzSOdkm+C4tTEqsCUke+Uyn6jvgMo0P8y+tMPp8IUfIi6r Ic7ZPrtt1SAfQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX953BLFz6tpX; Fri, 7 Oct 2022 17:22:01 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 07/13] gnu: Add freesasa. Date: Fri, 7 Oct 2022 15:21:44 +0000 Message-Id: <20221007152148.32591-8-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (freesasa): New variable. --- gnu/packages/chemistry.scm | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index d8f1608a3a..681e026186 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,11 +34,13 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) + #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) @@ -54,6 +56,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages stb) + #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) #:use-module (guix build-system copy) @@ -684,3 +687,86 @@ (define-public gemmi @item crystallographic symmetry. @end enumerate") (license license:mpl2.0))) + +(define-public freesasa + (package + (name "freesasa") + (version "2.1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mittinatten/freesasa") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07wdnahf3g355ryaiqvfxd5f4rl54wv8jwxcbn0nia89fqysbv0f")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove C files generated by Flex and Bison + (for-each delete-file + '("src/parser.c" "src/parser.h" + "src/lexer.c" "src/lexer.h")))))) + (outputs '("out" "doc")) + (build-system gnu-build-system) + (arguments + (list + #:configure-flags + #~(list "--enable-check" + "--enable-parser-generator" + "CXXFLAGS=-std=c++17" + "--enable-doxygen") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-libc++-linking + (lambda _ + (substitute* "src/Makefile.am" + (("-lc\\+\\+") "")))) + (add-after 'unpack 'build-shared-library + (lambda _ + (substitute* "src/Makefile.am" + (("lib_LIBRARIES") "lib_LTLIBRARIES") + (("libfreesasa\\.a") "libfreesasa.la") + (("freesasa_LDADD \\+= libfreesasa\\.la" prev) + (string-append prev "\nlibfreesasa_la_LIBADD" + " = -ljson-c ${libxml2_LIBS}\n")) + (("_a_SOURCES") "_la_SOURCES")) + (substitute* "configure.ac" + (("AC_PROG_INSTALL" inst) + (string-append "AM_PROG_LIBTOOL\n" inst))) + (substitute* "tests/Makefile.am" + (("libfreesasa\\.a") "libfreesasa.la")))) + (add-before 'build 'build-lexer-and-parser + (lambda _ + (with-directory-excursion "src" + (invoke "make" "lexer.h" "parser.h")))) + (add-after 'install 'install-doc + (lambda _ + (copy-recursively + "doc/html" + (string-append #$output:doc "/share/doc/" #$name "-" #$version))))))) + (native-inputs + (list autoconf + automake + bison + check + doxygen + fast-float + flex + libtool + pegtl + perl + pkg-config)) + (inputs + (list gemmi json-c libxml2)) + (home-page "https://freesasa.github.io/") + (synopsis "Calculate the solvent accessible surface area (SASA) of +molecules") + ;; TODO: @abbr + (description "FreeSASA is a command line tool and C-library for +calculating solvent accessible surface areas. By default Lee & Richards' +algorithm is used, but Shrake & Rupley's is also available. Both can be +parameterized to arbitrary precision, and for high resolution versions of the +algorithms, the calculations give identical results.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:36 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:36 +0000 Received: from localhost ([127.0.0.1]:37174 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBM-0005m9-Ij for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:36 -0400 Received: from mout02.posteo.de ([185.67.36.66]:41527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAu-0005jc-QH for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:09 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 42B2A240101 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:03 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156123; bh=pB071cOl1ykWfjP9O9texf802w2wv0JYtFgP5biOukg=; h=From:To:Cc:Subject:Date:From; b=qqaBUmnc1EhCLR/9WVquu71x6eIn6Tk8hI2u7KsmSYUwushF2rhCcZw0Lz+2oIVaD QE5uWrL6Kqj6EX4EsKH8Kk4W4wIPks5wSnxUx06GYppCYJnw20AqLAnlxscmWnCxRn IG6Y0k3HcsXETEkVMdwvT5t3Wz1HRw6blBzcAJSU61Vgwpv/fmvHj8cbSvlJGCe9Ob V9X0N/BuSq0lsle+QXI/1k/4SpFkGbZewUTC7/HP5pW5OYzcJO9/B0DAFpuJLqA/c0 I+I6IemM/ZrjI3f4zLgxCU+czOZXl8cnAt8JZDaxZhZy2eZv3Qse0UUNNGBbqbNTWF EdTSq26x8Gj5Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX965zlSz6tmq; Fri, 7 Oct 2022 17:22:02 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 09/13] gnu: Add coordgenlibs. Date: Fri, 7 Oct 2022 15:21:46 +0000 Message-Id: <20221007152148.32591-10-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (coordgenlibs): New variable. --- gnu/packages/chemistry.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 6eb1e4a694..1510cbab41 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -791,3 +791,30 @@ (define-public maeparser (synopsis "Maestro file parser") (description "maeparser is a parser for Schrodinger Maestro files.") (license license:expat))) + +(define-public coordgenlibs + (package + (name "coordgenlibs") + (version "3.0.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/coordgenlibs/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0d09x3v38i9y184bml020bq7xizdrdwng38qmdxlplzfhqkjdidv")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list maeparser)) + (arguments + (list + #:configure-flags + #~(list "-DCOORDGEN_RIGOROUS_BUILD=OFF" + "-DCOORDGEN_USE_MAEPARSER=ON"))) + (home-page "https://github.com/schrodinger/coordgenlibs/") + (synopsis "2D coordinate generation") + (description "@code{coordgenlibs} contains algorithms to generate 2D +coordinates. It has an emphasis on quality rather than speed.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:37 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:37 +0000 Received: from localhost ([127.0.0.1]:37176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBM-0005mG-S9 for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:37 -0400 Received: from mout01.posteo.de ([185.67.36.65]:36203) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAv-0005jk-GJ for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:10 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id EBB68240027 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:03 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156124; bh=rF+T+ebEQ8GJtiCG7HcOOn6TsritUuf1oh+O53gXy74=; h=From:To:Cc:Subject:Date:From; b=ODtplfdFahvzIoqX39K9p3eno6Q9Mb3SM6Clm03PFM6D4rjQVMF4bgaffrIMSqAnq 5sqsM+0MO0rXW88eaX0qNn05MyBJXPM0ssxzwaN3VY23NEe2WR5lJRqiW/9DwkQy6l kmjKDgY9rc5LOtIW5gtIXI8fHPRjCBfrJO1jaNxvtG2Zk9MtR/QNtdoh9rx8fRrYhw wCz2aXsKc1Bb1XOVThaq6w9VMTHHCEMJqs3lDoCDRtIwMTg7Lxt9O9Zv02xnA3Z2bY 9jGPSFhErKRVIiwkBOLSkKbWMivrF2OKkDjDsoTVZ9nyAAHAhsKB3UDPcyudqwiAJd 3aU+ILC920lww== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX973gqdz6tmq; Fri, 7 Oct 2022 17:22:03 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 10/13] gnu: Add yaehmop-tightbind. Date: Fri, 7 Oct 2022 15:21:47 +0000 Message-Id: <20221007152148.32591-11-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (yaehmop-tightbind): New variable. --- gnu/packages/chemistry.scm | 110 +++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 1510cbab41..68d28a52c3 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -42,6 +42,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) + #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages gv) @@ -56,6 +57,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages stb) + #:use-module (gnu packages tex) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) @@ -818,3 +820,111 @@ (define-public coordgenlibs (description "@code{coordgenlibs} contains algorithms to generate 2D coordinates. It has an emphasis on quality rather than speed.") (license license:bsd-3))) + +(define-public yaehmop + (package + (name "yaehmop") + (version "2022.09.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/greglandrum/yaehmop") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x0d75m1hgdb411fiv7c5bwq1n4y0swrll0gigh8v5c73kjxrja0")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Separate program + (delete-file-recursively "viewkel") + ;; Remove example output (some are corrupted) + (for-each delete-file (find-files "examples" "\\.Z$")) + ;; Documentation outputs + (for-each delete-file (find-files "docs" "\\.(ps|pdf)$")) + ;; These are transpiled from Fortran to C, but we build the + ;; Fortran code instead + (delete-file-recursively "tightbind/f2c_files") + (delete-file "tightbind/diag.c") + (delete-file "tightbind/cboris.c") + (delete-file "tightbind/abfns.c") + (delete-file "tightbind/lovlap.c"))))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list + "-DUSE_BLAS_LAPACK=ON" + (string-append "-DPARM_FILE_LOC=" #$output + "/share/" #$name "-" #$version "/eht_parms.dat") + "-DBIND_EXE_NAME=yaehmop-bind") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "tightbind"))) + (add-after 'chdir 'patch-fortran-functions + (lambda _ + (substitute* '("mov.c" "prototypes.h") + (("lovlap\\(") "lovlap_(") + (("abfns\\(") "abfns_(")))) + (add-after 'chdir 'patch-cmake + (lambda _ + (substitute* "CMakeLists.txt" + (("project\\(yaehmop C\\)") "project(yaehmop C Fortran)") + (("abfns.c") "fortran77/abfns.f") + (("lovlap.c") "fortran77/lovlap.f") + (("(set\\(PARM_FILE_LOC.*)\\)" all init) + (string-append init " CACHE STRING \"\")")) + (("add_library\\(yaehmop_eht" lib) + (string-append lib " SHARED ")) + (("target_link_libraries\\(test_eht \\$\\{LAPACK_LIBRARIES\\}.*" + all) + (string-append all "\ntarget_link_libraries(yaehmop_eht " + "${LAPACK_LIBRARIES})\n"))))) + (add-after 'build 'fix-latex + (lambda _ + (chdir "../docs") + (substitute* "bind_manual.tex" + (("\\\\usepackage\\{bindpage\\}") + (string-append + "\\usepackage[left=2cm,right=2cm,top=4cm,bottom=2cm]" + "{geometry}"))) + (substitute* "Zmat_appendix.tex" + (("file=dihedral\\.eps") + "file=figs/dihedral.eps")))) + (add-after 'fix-latex 'build-doc + (lambda _ + ;; TODO: not reproducible + (setenv "FORCE_SOURCE_DATE" "1") + ;; Needs to run twice to compile completely + (invoke "pdflatex" "bind_manual.tex") + (invoke "pdflatex" "bind_manual.tex") + (chdir "../build"))) + (add-after 'install 'install-eht-parms + (lambda _ + (install-file "../tightbind/eht_parms.dat" + (string-append #$output "/share/" + #$name "-" #$version)))) + (add-after 'install-eht-parms 'install-doc + (lambda _ + (install-file "../docs/bind_manual.pdf" + (string-append #$output "/share/doc/" + #$name "-" #$version)))) + (delete 'check) + (add-after 'install-doc 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "./test_eht"))))))) + (native-inputs + `(("gfortran" ,gfortran) + ("texlive" ,(texlive-updmap.cfg (list texlive-fonts-ec + texlive-latex-graphics + texlive-latex-geometry))))) + (inputs (list openblas)) + (home-page "https://github.com/greglandrum/yaehmop") + (synopsis "Yet Another extended Hueckel Molecular Orbital Package") + (description "@code{YAeHMOP} contains a program and library for performing +extended Hückel calculations.") + (license license:bsd-2))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:37 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:37 +0000 Received: from localhost ([127.0.0.1]:37178 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBN-0005mO-Cj for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:37 -0400 Received: from mout01.posteo.de ([185.67.36.65]:34903) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpAx-0005jy-1b for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:12 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id A21CE240029 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156124; bh=v2j+aXjcM887Xx6boUeYaigLN92Up1Ev0/tIWhWAoj0=; h=From:To:Cc:Subject:Date:From; b=XEd5vwtRAEcItEf7NITZ1qsqdvkOosr/g0BXEuRPnnJ+FUHT9lsn7JVx0qEY/0mDg xH8rh7Ge7J9iWtlJ7vpOo6dU47Ia9AuoTr8pSfe0EBttB/lrxj5YMNlWXCIHc0WrSk MVFuB3bNftvLAbDKRcnsnhHwxwXZcUK9/0ykOtTA6MdG7h8eXNjSpdRgt0pKa5vdSZ TOR3H7D3xnhI2GguK2SopI/NQEESGTzwxjCsjs6o+fEWz0REoakBvGQDUD3z0cTTaL u9aueyugM42ijEYMNO7yUJV/Zl53+lE9Et+rp6cSN5GU4K8eASC4yjTF2YUW6TWv9F +p9+1+J3WwABg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX981Pvkz6tpn; Fri, 7 Oct 2022 17:22:04 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 11/13] gnu: Add avalontoolkit. Date: Fri, 7 Oct 2022 15:21:48 +0000 Message-Id: <20221007152148.32591-12-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (avalontoolkit): New variable. --- gnu/packages/chemistry.scm | 93 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 68d28a52c3..e52dd2f3b6 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -928,3 +928,96 @@ (define-public yaehmop (description "@code{YAeHMOP} contains a program and library for performing extended Hückel calculations.") (license license:bsd-2))) + +(define-public avalontoolkit + (package + (name "avalontoolkit") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/avalontoolkit/" + "AvalonToolkit_" (substring version 0 3) "/AvalonToolkit_" + version ".source.tar")) + (sha256 + (base32 + "0rnnyy6axs2da7aa4q6l30ldavbk49v6l22llj1adn74h1i67bpv")) + (modules '((guix build utils) (ice-9 ftw))) + (snippet + #~(begin + (chdir "..") + (delete-file-recursively "SourceDistribution/java"))))) + (build-system gnu-build-system) + (arguments + (list + ;; There are no tests + #:tests? #f + #:phases + #~(let ((programs '("canonizer" "matchtest" "smi2mol" "struchk"))) + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'remove-free + (lambda _ + ;; Remove incorrect free of getenv result (patch also in rdkit) + (substitute* "common/reaccsio.c" + (("MyFree.*tempdir.*") "")))) + (replace 'build + (lambda _ + (chdir "common") + (let* ((parts + (list + "aacheck" "casutils" "denormal" "depictutil" + "didepict" "fixcharges" "forio" "geometry" "graph" + "hashcode" "layout" "local" "patclean" "pattern" + "perceive" "reaccsio" "rtutils" "set" "shortcut" + "sketch" "ssmatch" "stereo" "symbol_lists" + "symboltable" "utilities")) + (objects (map (lambda (name) (string-append name ".o")) + parts))) + (for-each + (lambda (name) + (display (string-append "Compiling " name ".c\n")) + (invoke "gcc" "-c" "-fPIC" "-O2" + (string-append name ".c") + "-o" (string-append name ".o"))) + parts) + (display "Building shared library\n") + (apply invoke "gcc" "-fPIC" "-shared" "-lm" + "-o" "libavalontoolkit.so" + "canonizer.c" "smi2mol.c" "struchk.c" objects) + (for-each + (lambda (program) + (display (string-append "Building " program "\n")) + (invoke "gcc" "-L." "-lavalontoolkit" "-lm" "-O2" + (string-append "-Wl,-rpath=" #$output "/lib") + "-DMAIN" (string-append program ".c") "-o" program)) + programs)))) + (replace 'install + (lambda _ + ;; Executables + (for-each + (lambda (program) + (install-file program (string-append #$output "/bin"))) + programs) + (for-each + (lambda (name) + (symlink (string-append #$output "/bin/smi2mol") + (string-append #$output "/bin/" name))) + '("mol2smi" "rdf2smi" "mol2tbl" "mol2sma" "smi2rdf")) + ;; Library + (install-file "libavalontoolkit.so" (string-append #$output "/lib")) + (for-each + (lambda (file) + (install-file file (string-append #$output + "/include/avalontoolkit"))) + (find-files "." "\\.h$")) + (install-file "../license.txt" + (string-append #$output "/share/doc/" + #$name "-" #$version "/")))))))) + (home-page "https://sourceforge.net/projects/avalontoolkit/") + (synopsis "Tools for SMILES and MOL files and for structure fingerprinting") + (description "This package contains a library and programs for +canonicalization of SMILES and MOL files, molecular structure fingerprinting +and rendering molecules.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:40 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:40 +0000 Received: from localhost ([127.0.0.1]:37181 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBP-0005mk-SS for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:40 -0400 Received: from mout02.posteo.de ([185.67.36.66]:36595) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBO-0005lp-0M for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:38 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 7418E240104 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:32 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156152; bh=xvgASLRbXDSfjtdTbobV4JS9ZDc96rJe/74SX55eKkk=; h=From:To:Cc:Subject:Date:From; b=qG4wzsmenGmdG1DPTytmwLNp24CcSd10RZNI4I+HThLBoBpm7O4h5XI8V0cc8AQGU gtPYMqYs04JCiH+CeLq2pJSpMG6JsRmoQfYWA5euZOZCJ1bPeNazaUojS4ERzGrBu3 sfT9IQETHXWX6bVnC5iMCvtpqBs6FE+IgDShACC4vN3dj0ukWujKwFgjK/VZFknHIZ 5namZvqreklsK+TAaWT+7I1FNffZNtJ5Z3zStUj6/lso8+q21lE9xLqQs2KcXIZ2gr R7fSreNpOBhJ58UhUTGVxORK7txpg5MLtMZFxwt50vjLcil9hTr1a+qKcpZ7Xav18G z0ThcYqlXtcJg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX9g6zBGz9rxP; Fri, 7 Oct 2022 17:22:31 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 12/13] gnu: Add ringdecomposerlib. Date: Fri, 7 Oct 2022 15:22:25 +0000 Message-Id: <20221007152226.362-1-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (ringdecomposerlib): New variable. --- gnu/packages/chemistry.scm | 80 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index e52dd2f3b6..43953238cd 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -1021,3 +1021,83 @@ (define-public avalontoolkit canonicalization of SMILES and MOL files, molecular structure fingerprinting and rendering molecules.") (license license:bsd-3))) + +(define-public ringdecomposerlib + (package + (name "ringdecomposerlib") + (version "1.1.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rareylab/RingDecomposerLib") + (commit (string-append "v" version "_rdkit")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rxzs2wpkkdi40wdzxc4sn0brk7dm7ivgqyfh38gf2f5c7pbg0wi")))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list "-DBUILD_PYTHON_WRAPPER=ON" + "-DPYTHON_EXECUTABLE=python3" + (string-append "-DPYTHON_FLAGS=;--prefix=" #$output ";--root=/")) + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (add-installed-pythonpath))) + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'patch-cmake + (lambda _ + (substitute* (list "src/Test/CMakeLists.txt" + "src/RingDecomposerLib/CMakeLists.txt") + (("build_.*STATIC") "#")) + (substitute* "test/CMakeLists.txt" + (("STATIC_TEST") "SHARED_TEST")) + ;; Link Python library against shared library + (substitute* "src/python/CMakeLists.txt" + (("RingDecomposerLibStatic") "RingDecomposerLib")) + (substitute* "src/python/setup.py.in" + (("static_libs =.*") "static_libs = []\n") + (("shared_libs\\s*=.*") + (string-append + "shared_libs = ['RingDecomposerLib']")) + (("library_dirs\\s*=\\s*\\[\\]") + "library_dirs = ['${CMAKE_BINARY_DIR}/src/RingDecomposerLib']") + (("extra_objects=.*") + (string-append "extra_link_args=['-Wl,-rpath=" #$output "/lib'],\n"))))) + (add-after 'build 'build-doc + (lambda _ + ;; Disable redundant LaTeX documentation + (substitute* "../source/documentation/sphinx/conf.py" + (("^(subprocess.*latex|shutil).*") "")) + (substitute* "../source/documentation/doxygen.cfg" + (("GENERATE_LATEX.*YES") "GENERATE_LATEX = NO")) + ;; Build HTML documentation + (invoke "sphinx-build" "-b" "html" + "../source/documentation/sphinx" "html"))) + (add-after 'install 'install-doc + (lambda _ + ;; Not reproducible + (delete-file-recursively "html/.doctrees") + (copy-recursively "html" + (string-append #$output "/share/doc/" + #$name "-" #$version "/html")))) + (delete 'check) + (add-after 'install 'check + (assoc-ref %standard-phases 'check)) + (add-before 'check 'set-pythonpath + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs)))))) + (inputs (list python)) + (native-inputs (list doxygen python python-cython python-sphinx)) + (home-page "https://github.com/rareylab/RingDecomposerLib") + (synopsis "Library for calculating ring topology descriptions such as +unique ring families") + (description "ringdecomposerlib is a library for the calculation of +unique ring families, relevant cycles, the smallest set of smallest rings and +other ring topology descriptions.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:22:45 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:22:45 +0000 Received: from localhost ([127.0.0.1]:37184 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBU-0005n1-Cr for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:45 -0400 Received: from mout01.posteo.de ([185.67.36.65]:53329) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpBS-0005mM-8n for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:22:43 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B50B1240028 for <58261@debbugs.gnu.org>; Fri, 7 Oct 2022 17:22:36 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665156156; bh=UO0TEB24lbPfq5qh5fHxSQUZxOutbmYY9XFml3nPFg0=; h=From:To:Cc:Subject:Date:From; b=c/haFPVSCprujF/carsC0xml/jjtN9CgVdpjo5MJ0Q0tD4QCB/BgI/Cm3UVlyh7jl 1Or0o67cp/Q0KTEnQwNmfqCBE+ExiYEkWHKylKM6AXNgb2nyg949AX48DTQs1blpvY +N1dlIgFWPRkT/ZhLpluEKqDn93OtOWamI81vw2KqJckfz6DkBdOnRLKOQjerLdWt2 Oxjc5Gtxe5MmfsBKOVlh6X6c/oD3+PKghEh7+UtWAONtv2uyKIwGQx49+9r1vSbEjr zfq0TXRt3L6Z7ZhZNA8q+IakfM9OnEItyLjcKtd9IUj7POgbIllpW6sYsqnbSB9kgp DcTFCfGmVvMEQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MkX9m1Ff1z9rxP; Fri, 7 Oct 2022 17:22:36 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v2 13/13] gnu: Add rdkit. Date: Fri, 7 Oct 2022 15:22:26 +0000 Message-Id: <20221007152226.362-2-david.elsing@posteo.net> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (rdkit): New variable. --- gnu/packages/chemistry.scm | 178 ++++++++++++++++++ .../rdkit-cmake-external-dependencies.patch | 102 ++++++++++ 2 files changed, 280 insertions(+) create mode 100644 gnu/packages/patches/rdkit-cmake-external-dependencies.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 43953238cd..4b34a38797 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,6 +34,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -41,10 +42,12 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages gv) #:use-module (gnu packages image) #:use-module (gnu packages maths) @@ -56,6 +59,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages sqlite) #:use-module (gnu packages stb) #:use-module (gnu packages tex) #:use-module (gnu packages web) @@ -1101,3 +1105,177 @@ (define-public ringdecomposerlib unique ring families, relevant cycles, the smallest set of smallest rings and other ring topology descriptions.") (license license:bsd-3))) + +(define-public rdkit + (package + (name "rdkit") + (version "2022.03.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rdkit/rdkit") + (commit + (string-append + "Release_" (string-replace-substring version "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19idgilabh04cbr1qj6zgrgsfjm248mmfz6fsr0smrd68d0xnml9")) + (patches + (search-patches "rdkit-cmake-external-dependencies.patch")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Remove pickle files (only used in tests), + ;; as they are compiled programs + (for-each + (lambda (name) + (display (string-append name "\n")) + (delete-file name)) + (find-files "." "\\.pkl(\\.gz)?$")) + ;; Remove SQLite data files (can be generated) + (delete-file "Data/RDData.sqlt") + (delete-file "Data/RDTests.sqlt"))))) + (build-system cmake-build-system) + (arguments + (list + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (add-installed-pythonpath))) + #:configure-flags + #~(list + "-DRDK_BUILD_AVALON_SUPPORT=ON" + "-DRDK_BUILD_CAIRO_SUPPORT=ON" + "-DRDK_BUILD_CPP_TESTS=ON" + "-DRDK_BUILD_FREESASA_SUPPORT=ON" + "-DRDK_BUILD_INCHI_SUPPORT=ON" + "-DRDK_BUILD_YAEHMOP_SUPPORT=ON" + (string-append "-DCATCH_DIR=" + #$(this-package-native-input "catch2") + "/include/catch2") + "-DRDK_INSTALL_DEV_COMPONENT=ON" + "-DRDK_INSTALL_INTREE=OFF" + "-DRDK_INSTALL_STATIC_LIBS=OFF" + (string-append + "-DRDK_OPTIMIZE_POPCNT=" + #$(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) "ON") + ((string-prefix? "i686" system) "ON") + (else "OFF")))) + "-DRDK_USE_BOOST_IOSTREAMS=ON" + "-DRDK_USE_FLEXBISON=ON") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-external-dependencies + (lambda _ + (symlink + (string-append + #$(this-package-input "font-comic-neue") + "/share/fonts/truetype/ComicNeue-Regular.ttf") + "Data/Fonts/ComicNeue-Regular.ttf"))) + (add-after 'copy-external-dependencies 'patch-source + (lambda _ + (substitute* "External/AvalonTools/CMakeLists.txt" + (("^if\\(NOT RDK_BUILD" orig) + (string-append "if(0)\n" orig)) + (("include_directories.*AVALON_SRC_PATH.*") + (string-append "endif()\ninclude_directories(" + #$avalontoolkit "/include/avalontoolkit)\n")) + (("LINK_LIBRARIES avalon_clib") + (string-append + "LINK_LIBRARIES -L" #$avalontoolkit "/lib -lavalontoolkit"))) + (let ((port + (open-file "External/RingFamilies/dummy.cpp" "w"))) + (display "" port) + (close port)) + (let ((port + (open-file "External/RingFamilies/CMakeLists.txt" "w"))) + (display (string-append + "rdkit_library(RingDecomposerLib dummy.cpp SHARED" + " LINK_LIBRARIES -lRingDecomposerLib)\n" + "set(RDK_URF_LIBS RingDecomposerLib CACHE STRING \"\" FORCE)\n") + port) + (close port)) + (substitute* "Code/GraphMol/MolInterchange/CMakeLists.txt" + (("if\\(NOT" orig) + (string-append "if(0)\n" orig)) + (("^include_directories.*") "endif()\n")) + (substitute* "External/YAeHMOP/EHTTools.cpp" + (("") "")))) + (add-after 'unpack 'fix-inchi-include + (lambda _ + (substitute* "Code/cmake/Modules/FindInchi.cmake" + (("inchi_api.h.*\\)") "inchi/inchi_api.h)") + (("INCHI_LIBRARY NAMES.*\\)") + "INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)") + (("find_library" prev) + (string-append + "list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1)\n" + prev))) + (substitute* "External/INCHI-API/inchi.cpp" + (("") "")))) + (add-before 'build 'enable-bytecode-determinism + (lambda _ + (setenv "PYTHONHASHSEED" "0") + (setenv "PYTHONDONTWRITEBYTECODE" "1"))) + (add-after 'install 'pre-check + (lambda* (#:key inputs outputs #:allow-other-keys) + (with-directory-excursion "../source" + (invoke "sqlite3" "Data/RDData.sqlt" + ".read rdkit/Dbase/test_data/RDData.sqlite") + (invoke "sqlite3" "Data/RDTests.sqlt" + ".read rdkit/Dbase/test_data/RDTests.sqlite") + (setenv "RDBASE" (canonicalize-path "."))) + (add-installed-pythonpath inputs outputs))) + (delete 'check) + (add-after 'pre-check 'check + (lambda* (#:key tests? parallel-tests? #:allow-other-keys) + (when tests? + (let ((job-count (number->string + (if parallel-tests? (parallel-job-count) 1)))) + (invoke + "ctest" "-j" job-count + "-E" (string-append + "(" (string-join + '(;; need pickled data + "(pyDiscreteValueVect" "pySparseIntVect" + "graphmoltestPickler" "pyPartialCharges" + "substructLibraryTest" "pyFeatures" + "pythonTestDirML" "pythonTestDirChem" + ;; Catching Python exception fails + "pyRanker)") "|") ")"))))))))) + (native-inputs + (list bison + boost + catch2 + eigen + flex + freesasa + pkg-config + rapidjson + tar)) + (inputs + (list avalontoolkit + cairo + coordgenlibs + font-comic-neue + freetype + inchi + maeparser + python + ringdecomposerlib + sqlite + yaehmop)) + (propagated-inputs + (list python-numpy python-cairocffi python-pillow)) + (home-page "https://rdkit.org/") + (synopsis "Collection of cheminformatics software") + (description "RDKit is a C++ and Python library for cheminformatics, which +includes (among other things) the analysis and modification of molecules in 2D +and 3D and descriptor generation for machine learning.") + (license license:bsd-3))) diff --git a/gnu/packages/patches/rdkit-cmake-external-dependencies.patch b/gnu/packages/patches/rdkit-cmake-external-dependencies.patch new file mode 100644 index 0000000000..5b73864f51 --- /dev/null +++ b/gnu/packages/patches/rdkit-cmake-external-dependencies.patch @@ -0,0 +1,102 @@ +diff -ur a/External/FreeSASA/CMakeLists.txt b/External/FreeSASA/CMakeLists.txt +--- a/External/FreeSASA/CMakeLists.txt ++++ b/External/FreeSASA/CMakeLists.txt +@@ -10,7 +10,7 @@ + endif() + endif() + +-if(needDownload) ++if(FALSE) + # don't actually use the md5 here + set(FREESASA_VERSION "2.0.3") + set(FREESASA_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/freesasa-${FREESASA_VERSION}") +@@ -66,24 +66,24 @@ + endif() + + set (freesasa_h ${FREESASA_SRC_DIR}/src/freesasa.h) +-file(READ ${freesasa_h} freesasa_h_data) ++#file(READ ${freesasa_h} freesasa_h_data) + string(REGEX REPLACE "(#include )" "\\1\n#include " freesasa_h_data "${freesasa_h_data}") + string(REGEX REPLACE "([^R][^D][^K][^I][^T][^_][^F][^R][^E][^E][^S][^A][^S][^A][^_][^C][^L][^I][^B][^_][^E][^X][^P][^O][^R][^T][^ ])(extern const)" "\\1RDKIT_FREESASA_CLIB_EXPORT \\2" freesasa_h_data "${freesasa_h_data}") +-file(WRITE ${freesasa_h} "${freesasa_h_data}") ++#file(WRITE ${freesasa_h} "${freesasa_h_data}") + + add_definitions(-DUSE_THREADS=0) + add_definitions(-DUSE_JSON=0) + add_definitions(-DUSE_XML=0) +-rdkit_library(freesasa_clib ${freesasa_clib_srcs}) +-target_compile_definitions(freesasa_clib PRIVATE RDKIT_FREESASALIB_BUILD) ++#rdkit_library(freesasa_clib ${freesasa_clib_srcs}) ++#target_compile_definitions(freesasa_clib PRIVATE RDKIT_FREESASALIB_BUILD) + + if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) + set_target_properties(freesasa_clib PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE) + endif() +-include_directories("${FREESASA_SRC_DIR}/src") ++#include_directories("${FREESASA_SRC_DIR}/src") + + rdkit_library(FreeSASALib RDFreeSASA.cpp SHARED +- LINK_LIBRARIES freesasa_clib GraphMol ) ++ LINK_LIBRARIES -lfreesasa GraphMol ) + target_compile_definitions(FreeSASALib PRIVATE RDKIT_FREESASALIB_BUILD) + + rdkit_headers(RDFreeSASA.h DEST GraphMol) +diff -ur a/External/YAeHMOP/CMakeLists.txt b/External/YAeHMOP/CMakeLists.txt +--- a/External/YAeHMOP/CMakeLists.txt ++++ b/External/YAeHMOP/CMakeLists.txt +@@ -18,32 +18,32 @@ + + include_directories( ${RDKit_ExternalDir}/YAeHMOP ) + +-ExternalProject_Add(yaehmop_project +- GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git +- GIT_TAG master +- UPDATE_COMMAND "" +- PATCH_COMMAND "" +- PREFIX ${CMAKE_CURRENT_SOURCE_DIR} +- SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" +- SOURCE_SUBDIR "tightbind" +- CMAKE_ARGS -DUSE_BLAS_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR} -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +- TEST_COMMAND "") +- +-include_directories(${PROJECT_BINARY_DIR}/include) +-link_directories(${PROJECT_BINARY_DIR}/lib) +-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build) +- +-set(EHT_PARAM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) +-install(FILES ${EHT_PARAM_FILE} +- DESTINATION ${RDKit_ShareDir}/Data +- COMPONENT data) ++#ExternalProject_Add(yaehmop_project ++# GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git ++# GIT_TAG master ++# UPDATE_COMMAND "" ++# PATCH_COMMAND "" ++# PREFIX ${CMAKE_CURRENT_SOURCE_DIR} ++# SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" ++# SOURCE_SUBDIR "tightbind" ++# CMAKE_ARGS -DUSE_BLAS_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR} -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} ++# TEST_COMMAND "") ++ ++#include_directories(${PROJECT_BINARY_DIR}/include) ++#link_directories(${PROJECT_BINARY_DIR}/lib) ++#link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build) ++ ++#set(EHT_PARAM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) ++#install(FILES ${EHT_PARAM_FILE} ++# DESTINATION ${RDKit_ShareDir}/Data ++# COMPONENT data) + +-message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") +-message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") ++#message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") ++#message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") + +-rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES yaehmop_eht GraphMol ) ++rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES -lyaehmop_eht GraphMol ) + target_compile_definitions(EHTLib PRIVATE RDKIT_EHTLIB_BUILD) +-add_dependencies(EHTLib yaehmop_project) ++#add_dependencies(EHTLib yaehmop_project) + rdkit_headers(EHTTools.h DEST GraphMol) + rdkit_catch_test(testEHTLib1 test1.cpp + LINK_LIBRARIES EHTLib FileParsers SmilesParse ) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:26:10 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:26:10 +0000 Received: from localhost ([127.0.0.1]:37205 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpEn-0005uN-Vr for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:26:10 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:31975) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpEi-0005u9-53 for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:26:08 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MkXFf5brXz1DPy7; Fri, 7 Oct 2022 17:25:58 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MkXFf5brXz1DPy7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1665156359; bh=mvMyWM2yb3hTNaNsKD/yV4x7Qh6jhmWqTt6Lfrm00Dk=; h=Subject:From:To:Date:In-Reply-To:References:From; b=hgE3Pd70Y9mN/Zg1CIku38wbglwHFONShkh+YF2rna3ua1ZeJmWnlzfFhyPf/Hp0f 6N3NcXYkIbAZqKGCj+hCOHRPlNsETJM0AWgBZ4cPIKwDEcdH2OxF2ah5xOnVAl93q8 6s/TstrDzSbKP7+maGW1fbM/a9S095GZhrHlx/4g= Message-ID: <1c33a795e9c12ca82e2975beeb708801eb3852e5.camel@ist.tugraz.at> Subject: Re: [PATCH 10/11] gnu: Add yaehmop-tightbind. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 07 Oct 2022 17:25:57 +0200 In-Reply-To: <868rlr652e.fsf@posteo.net> References: <868rlr652e.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MTIgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jh ei5hdD4gd3JpdGVzOgo+IAo+ID4gQW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAoeWFlaG1vcC10aWdodGJpbmQpOiBOZXcgdmFyaWFibGUuCj4gPiA+IC0tLQo+ID4gPiDC oGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIHwgODIKPiA+ID4gKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKPiA+ID4gwqAxIGZpbGUgY2hhbmdlZCwgODIgaW5zZXJ0aW9u cygrKQo+ID4gPiAKPiA+ID4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2Nt Cj4gPiA+IGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gaW5kZXggY2MyNmFhMzI5 YS4uYTM5ZGVmZjRiZiAxMDA2NDQKPiA+ID4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5z Y20KPiA+ID4gKysrIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gQEAgLTQyLDYg KzQyLDcgQEAgKGRlZmluZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gPiA+IMKg wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZG9jdW1lbnRhdGlvbikKPiA+ID4gwqDCoCAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmbGV4KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIGZvbnR1dGlscykKPiA+ID4gK8KgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGdjYykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnbCkKPiA+ID4g wqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBncmFwaHZpeikKPiA+ID4gwqDCoCAjOnVz ZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBndikKPiA+ID4gQEAgLTgxNywzICs4MTgsODQgQEAgKGRl ZmluZS1wdWJsaWMgY29vcmRnZW5saWJzCj4gPiA+IMKgwqDCoMKgIChkZXNjcmlwdGlvbiAiQGNv ZGV7Y29vcmRnZW5saWJzfSBjb250YWlucyBhbGdvcml0aG1zIHRvCj4gPiA+IGdlbmVyYXRlIDJE Cj4gPiA+IMKgY29vcmRpbmF0ZXMuwqAgSXQgaGFzIGFuIGVtcGhhc2lzIG9uIHF1YWxpdHkgcmF0 aGVyIHRoYW4gc3BlZWQuIikKPiA+ID4gwqDCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykp KQo+ID4gPiArCj4gPiA+ICsoZGVmaW5lLXB1YmxpYyB5YWVobW9wLXRpZ2h0YmluZAo+ID4gPiAr wqAgKHBhY2thZ2UKPiA+ID4gK8KgwqDCoCAobmFtZSAieWFlaG1vcC10aWdodGJpbmQiKQo+ID4g PiArwqDCoMKgICh2ZXJzaW9uICIyMDIyLjA5LjEiKQo+ID4gPiArwqDCoMKgIChzb3VyY2UgKG9y aWdpbgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBnaXQtZmV0Y2gp Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJsCj4gPiA+ICJo dHRwczovL2dpdGh1Yi5jb20vZ3JlZ2xhbmRydW0veWFlaG1vcCIpCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2 ZXJzaW9uKSkpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAo Z2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHNoYTI1Ngo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMy Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKPiA+ID4gIjF4MGQ3NW0xaGdk YjQxMWZpdjdjNWJ3cTFuNHkwc3dybGwwZ2lnaDh2NWM3M2tqeHJqYTAiKSkKPiA+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpKSkKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzbmlwcGV0Cj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICcoYmVnaW4KPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJkb2NzIikKPiA+IFRoaXMgb25l IGxvb2tzIHN1c3BpY2lvdXMuCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAiZXhhbXBsZXMiKQo+ID4gQXMgZG9lcyB0aGlz Lgo+ID4gV2hhdCBnaXZlcz8KPiBJIGRpZCBub3Qgd2FudCB0byBjaGVjayB0aGUgZG9jdW1lbnRh dGlvbiBpbiBkZXRhaWwgYW5kIHRoZSBleGFtcGxlcwo+IGNvbnRhaW4gc29tZSBjb3JydXB0ZWQg ImNvbXByZXNzIiBhcmNoaXZlcyBvZiBwcm9ncmFtIG91dHB1dHMuIDopCj4gQnV0IG5vdyBJIGJ1 aWxkIHRoZSBkb2N1bWVudGF0aW9uIGluc3RlYWQgYW5kIHJlbW92ZSB0aGUgYXJjaGl2ZXMuCj4g VGhlcmUgc3RpbGwgaXMgb25lIHByb2JsZW06IEV2ZW4gdGhvdWdoIEkgc2V0IEZPUkNFX1NPVVJD RV9EQVRFPTEsCj4gdGhlCj4gb3V0cHV0IG9mIHBkZmxhdGV4IGlzIHN0aWxsIG5vdCByZXByb2R1 Y2libGUuIERvIHlvdSBoYXZlIGFuIGlkZWEgd2h5Cj4gdGhhdCBjb3VsZCBiZT8gVGhlcmUgYXJl IG9ubHkgMyBieXRlcyBkaWZmZXJlbnQgaW4gdGhlIHBkZi4KPiBBbHRlcm5hdGl2ZWx5LCBJIGNv dWxkIGp1c3Qgbm90IGJ1aWxkIHRoZSBkb2N1bWVudGF0aW9uIGFzIGl0IGlzCj4gaW5kZXBlbmRl bnQgb2YgdGhlIGJ1aWxkIHNjcmlwdHMgYW55d2F5LgpwZGZsYXRleCBoYXMgdHJvdWJsZXMgd2l0 aCByZXByb2R1Y2libGUgYnVpbGRzLCBidXQgSSBjYW4ndCBxdWl0ZQpyZWNhbGwgd2hhdCBvcHRp b24gbWFrZXMgaXQgbm90IHNvLCBidXQgcmVzdCBhc3N1cmVkIHRob3NlIGFyZSBsaWtlbHkgMwp2 ZXJ5IHdlbGwga25vd24gYnl0ZXMuCgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInZpZXdrZWwiKQo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkKPiA+ ID4gInRpZ2h0YmluZC9mMmNfZmlsZXMiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgInRpZ2h0YmluZC9kaWFnLmMiKQo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgInRpZ2h0YmluZC9jYm9y aXMuYyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUt ZmlsZSAidGlnaHRiaW5kL2FiZm5zLmMiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgInRpZ2h0YmluZC9sb3ZsYXAuYyIpCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkpKQo+ID4gPiArwqDCoMKgIChidWls ZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQo+ID4gPiArwqDCoMKgIChuYXRpdmUtaW5wdXRz IChsaXN0IGdmb3J0cmFuKSkKPiA+ID4gK8KgwqDCoCAoaW5wdXRzIChsaXN0IG9wZW5ibGFzKSkK PiA+ID4gK8KgwqDCoCAoYXJndW1lbnRzCj4gPiA+ICvCoMKgwqDCoCAobGlzdAo+ID4gPiArwqDC oMKgwqDCoCAjOmNvbmZpZ3VyZS1mbGFncwo+ID4gPiArwqDCoMKgwqDCoCAjfihsaXN0Cj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgICItRFVTRV9CTEFTX0xBUEFDSz1PTiIKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIi1EUEFSTV9GSUxFX0xPQz0iICMkb3V0cHV0Cj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICIvc2hhcmUv IiAjJG5hbWUgIi0iICMkdmVyc2lvbgo+ID4gPiAiL2VodF9wYXJtcy5kYXQiKQo+ID4gPiArwqDC oMKgwqDCoMKgwqDCoCAiLURCSU5EX0VYRV9OQU1FPXlhZWhtb3AtYmluZCIpCj4gPiA+ICvCoMKg wqDCoMKgICM6cGhhc2VzCj4gPiA+ICvCoMKgwqDCoMKgICN+KG1vZGlmeS1waGFzZXMgJXN0YW5k YXJkLXBoYXNlcwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAn Y2hkaXIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY2hkaXIgInRpZ2h0YmluZCIpCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1h ZnRlciAnY2hkaXIgJ3BhdGNoLWZvcnRyYW4tZnVuY3Rpb25zCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1 YnN0aXR1dGUqICcoIm1vdi5jIiAicHJvdG90eXBlcy5oIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoKCJsb3ZsYXBcXCgiKSAibG92bGFwXygiKQo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImFiZm5zXFwoIikgImFiZm5zXygiKSkKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oCAoYWRkLWFmdGVyICdjaGRpciAncGF0Y2gtY21ha2UKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGxhbWJkYSBfCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3Rp dHV0ZSogIkNNYWtlTGlzdHMudHh0Igo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICgoInByb2plY3RcXCh5YWVobW9wIENcXCkiKSAicHJvamVjdCh5YWVobW9wIEMKPiA+ID4g Rm9ydHJhbikiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImFiZm5z LmMiKSAiZm9ydHJhbjc3L2FiZm5zLmYiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICgoImxvdmxhcC5jIikgImZvcnRyYW43Ny9sb3ZsYXAuZiIpCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiKHNldFxcKFBBUk1fRklMRV9MT0MuKilcXCkiIGFs bCBpbml0KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1h cHBlbmQgaW5pdCAiIENBQ0hFIFNUUklORyBcIlwiKSIpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICgoImFkZF9saWJyYXJ5XFwoeWFlaG1vcF9laHQiIGxpYikKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kIGxpYiAiIFNI QVJFRCAiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJ0YXJnZXRf bGlua19saWJyYXJpZXNcXCh0ZXN0X2VodAo+ID4gPiBcXCRcXHtMQVBBQ0tfTElCUkFSSUVTXFx9 LioiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGFsbCkKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kIGFsbAo+ID4g PiAiXG50YXJnZXRfbGlua19saWJyYXJpZXMoeWFlaG1vcF9laHQgIgo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIiR7 TEFQQUNLX0xJQlJBUklFU30pXG4iKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAjdCkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAnaW5zdGFsbCAnaW5z dGFsbC1laHQtcGFybXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxlICIuLi90aWdodGJp bmQvZWh0X3Bhcm1zLmRhdCIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dCAiL3NoYXJlLyIK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG5hbWUgIi0iCj4gPiA+ICMkdmVy c2lvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqAgKGRlbGV0ZSAnY2hlY2spCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAg KGFkZC1hZnRlciAnaW5zdGFsbC1laHQtcGFybXMgJ2NoZWNrCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChsYW1iZGEqICgjOmtleSB0ZXN0cz8gIzphbGxvdy1vdGhlci1rZXlzKQo+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHdoZW4gdGVzdHM/Cj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAiLi90ZXN0X2VodCIpKQo+ID4gPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI3QpKSkpKQo+ID4gPiArwqDCoMKgIChob21lLXBhZ2Ug Imh0dHBzOi8vZ2l0aHViLmNvbS9ncmVnbGFuZHJ1bS95YWVobW9wIikKPiA+ID4gK8KgwqDCoCAo c3lub3BzaXMgIllldCBBbm90aGVyIGV4dGVuZGVkIEh1ZWNrZWwgTW9sZWN1bGFyIE9yYml0YWwK PiA+ID4gUGFja2FnZSIpCj4gPiA+ICvCoMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXtZQWVITU9Q fSBjb250YWlucyBhIHByb2dyYW0gYW5kIGxpYnJhcnkKPiA+ID4gZm9yCj4gPiA+IHBlcmZvcm1p bmcKPiA+ID4gK2V4dGVuZGVkIEjDvGNrZWwgY2FsY3VsYXRpb25zLiIpCj4gPiA+ICvCoMKgwqAg KGxpY2Vuc2UgbGljZW5zZTpic2QtMikpKQo+ID4gTG9va2luZyBhdCB0aGlzIGl0IHNlZW1zIHVu Y2xlYXIgd2hldGhlciB5b3UgYXJlIGJ1aWxkaW5nIHlhZWhtb3AKPiA+IG9yCj4gPiB0aWdodGJp bmQuwqAgV2hhdCdzIGdvaW5nIG9uPwo+IEknbSBidWlsZGluZyB0aGUgeWFlaG1vcCBsaWJyYXJ5 ICh3aXRoIHRoZSBzb3VyY2UgY29kZSBpbiB0aWdodGJpbmQvKQo+IGFuZCB0aGUgImJpbmQiIHBy b2dyYW0gKHdoaWNoIEkgY2FsbGVkIHlhZWhtb3AtYmluZCkgdGhhdCB1c2VzIHRoZQo+IGxpYnJh cnkuCj4gSXMgaXQgYmV0dGVyIHRvIGp1c3QgY2FsbCB0aGUgcGFja2FnZSAieWFlaG1vcCIgKHdo aWNoIEkgbm93IGRpZCk/Cj4gVGhlIHNvdXJjZSBhbHNvIGluY2x1ZGVzIGEgc2VwYXJhdGUgdmlz dWFsaXphdGlvbiBwcm9ncmFtICJ2aWV3a2VsIiwKPiB3aGljaCBkb2VzIG5vdCB1c2UgdGhlIGxp YnJhcnkgYW5kIHdvdWxkIGJlbG9uZyBpbiBhbm90aGVyIHBhY2thZ2UgaW4KPiBteSBvcGluaW9u LgpUYWtpbmcgYSBjdXJzb3J5IGdsYW5jZSBhdCB0aGUgQ01ha2VMaXN0cywgY2FsbGluZyBpdCB5 YWVobW9wIGlzIGluZGVlZAp0aGUgY29ycmVjdCB0aGluZy4gIEkgaGF2ZSBubyBpZGVhIHdoYXQg dmlld2tlbCBpcyBzdXBwb3NlZCB0byBkbyB0YmguCg== From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 07 11:29:42 2022 Received: (at 58261) by debbugs.gnu.org; 7 Oct 2022 15:29:42 +0000 Received: from localhost ([127.0.0.1]:37219 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpID-0005zw-Kt for submit@debbugs.gnu.org; Fri, 07 Oct 2022 11:29:42 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:12562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ogpIA-0005zn-Eb for 58261@debbugs.gnu.org; Fri, 07 Oct 2022 11:29:40 -0400 Received: from lprikler-laptop.ist.intra (gw.ist.tugraz.at [129.27.202.101]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4MkXKg0PFzz1DPy7; Fri, 7 Oct 2022 17:29:27 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4MkXKg0PFzz1DPy7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1665156567; bh=WtipeIXGYD96uQY39P9Tqt1o4YB2d6CUoqlvO4DDMEk=; h=Subject:From:To:Date:In-Reply-To:References:From; b=RYEl7xwamzMNab+qdedU7ooVeHBN/JWjyDWxKNp7owWucyFktmYOUsPRfvRY+PqzA CPZUPhx4yE50CGt7ImnDqIVWTUdg0q7VhaOhW8YcE8CUTUVTqgXzaL3EGBIgp7oHoo zDo0fVbeKFmvwg1linUNFiuPWrLeRkK/cHolbepg= Message-ID: <2b15adf058b0cb0cc3d628c8d36fd27d308e316e.camel@ist.tugraz.at> Subject: Re: [PATCH 11/11] gnu: Add rdkit. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 07 Oct 2022 17:29:26 +0200 In-Reply-To: <867d1b651v.fsf@posteo.net> References: <867d1b651v.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-TUG-Backscatter-control: waObeELIUl4ypBWmcn/8wQ X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MTIgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAaXN0LnR1Z3Jh ei5hdD4gd3JpdGVzOgo+IAo+ID4gQW0gTW9udGFnLCBkZW0gMDMuMTAuMjAyMiB1bSAwMDoxOSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAocmRraXQpOiBOZXcgdmFyaWFibGUuCj4gPiA+IC0tLQo+ID4gPiDCoGdudS9wYWNrYWdl cy9jaGVtaXN0cnkuc2NtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAx OTgKPiA+ID4gKysrKysrKysrKysrKysrKysrCj4gPiA+IMKgLi4uL3Jka2l0LWNtYWtlLWV4dGVy bmFsLWRlcGVuZGVuY2llcy5wYXRjaMKgwqAgfCAxMDIgKysrKysrKysrCj4gPiA+IMKgMiBmaWxl cyBjaGFuZ2VkLCAzMDAgaW5zZXJ0aW9ucygrKQo+ID4gPiDCoGNyZWF0ZSBtb2RlIDEwMDY0NCBn bnUvcGFja2FnZXMvcGF0Y2hlcy9yZGtpdC1jbWFrZS1leHRlcm5hbC0KPiA+ID4gZGVwZW5kZW5j aWVzLnBhdGNoCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NoZW1pc3Ry eS5zY20KPiA+ID4gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ID4gPiBpbmRleCBhMzlk ZWZmNGJmLi44NjljZjI2NGUzIDEwMDY0NAo+ID4gPiAtLS0gYS9nbnUvcGFja2FnZXMvY2hlbWlz dHJ5LnNjbQo+ID4gPiArKysgYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ID4gPiBAQCAt MzQsNiArMzQsNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBhbGdlYnJhKQo+ID4gPiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGF1dG90b29scykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBiYWNrdXApCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBiYXNlKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJpc29uKQo+ ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJvb3N0KQo+ID4gPiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZWNrKQo+ID4gPiBAQCAtNDEsMTAgKzQyLDEyIEBA IChkZWZpbmUtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlbWlzdHJ5KQo+ID4gPiDCoMKgICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBkb2N1bWVudGF0aW9uKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGZsZXgpCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmb250cykKPiA+ ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmb250dXRpbHMpCj4gPiA+IMKgwqAg Izp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ2NjKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIGdsKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdy YXBodml6KQo+ID4gPiArwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ3RrKQo+ID4gPiDC oMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGd2KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVs ZSAoZ251IHBhY2thZ2VzIGltYWdlKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIG1hdGhzKQo+ID4gPiBAQCAtNTYsNiArNTksNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBh Y2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBx dCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzZXJpYWxpemF0aW9uKQo+ ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNwaGlueCkKPiA+ID4gK8KgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNxbGl0ZSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBzdGIpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMg d2ViKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHhtbCkKPiA+ID4gQEAg LTg5OSwzICs5MDMsMTk3IEBAIChkZWZpbmUtcHVibGljIHlhZWhtb3AtdGlnaHRiaW5kCj4gPiA+ IMKgwqDCoMKgIChkZXNjcmlwdGlvbiAiQGNvZGV7WUFlSE1PUH0gY29udGFpbnMgYSBwcm9ncmFt IGFuZCBsaWJyYXJ5Cj4gPiA+IGZvcgo+ID4gPiBwZXJmb3JtaW5nCj4gPiA+IMKgZXh0ZW5kZWQg SMO8Y2tlbCBjYWxjdWxhdGlvbnMuIikKPiA+ID4gwqDCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpi c2QtMikpKQo+ID4gPiArCj4gPiA+ICsoZGVmaW5lLXB1YmxpYyByZGtpdAo+ID4gPiArwqAgKHBh Y2thZ2UKPiA+ID4gK8KgwqDCoCAobmFtZSAicmRraXQiKQo+ID4gPiArwqDCoMKgICh2ZXJzaW9u ICIyMDIyLjAzLjUiKQo+ID4gPiArwqDCoMKgIChzb3VyY2UgKG9yaWdpbgo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBnaXQtZmV0Y2gpCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJsICJodHRwczovL2dpdGh1Yi5jb20vcmRraXQv cmRraXQiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNv bW1pdAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Ry aW5nLWFwcGVuZAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICJSZWxlYXNlXyIgKHN0cmluZy1yZXBsYWNlLXN1YnN0cmluZwo+ID4gPiB2ZXJzaW9uCj4g PiA+ICIuIiAiXyIpKSkpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUt bmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHNoYTI1Ngo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo YmFzZTMyCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKPiA+ID4gIjE5aWRn aWxhYmgwNGNicjFxajZ6Z3Jnc2ZqbTI0OG1tZno2ZnNyMHNtcmQ2OGQweG5tbDkiKSkKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChwYXRjaGVzCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0Y2hlcyAicmRraXQtY21ha2UtZXh0ZXJuYWwtCj4g PiA+IGRlcGVuZGVuY2llcy5wYXRjaCIpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKG1vZHVsZXMgJygoZ3VpeCBidWlsZCB1dGlscykpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHNuaXBwZXQKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg I34oYmVnaW4KPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7OyBS ZW1vdmUgcGlja2xlIGZpbGVzIChvbmx5IHVzZWQgaW4gdGVzdHMpLAo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IGFzIHRoZXkgYXJlIGNvbXBpbGVkIHByb2dy YW1zCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNo Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIChu YW1lKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChk aXNwbGF5IChzdHJpbmctYXBwZW5kIG5hbWUgIlxuIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlIG5hbWUpKQo+ID4gPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbmQtZmlsZXMgIi4iICJcXC5w a2woXFwuZ3opPyQiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA7OyBSZW1vdmUgU1FMaXRlIGRhdGEgZmlsZXMgKGNhbiBiZQo+ID4gPiBnZW5lcmF0ZWQpCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlICJE YXRhL1JERGF0YS5zcWx0IikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoZGVsZXRlLWZpbGUgIkRhdGEvUkRUZXN0cy5zcWx0IikKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpKSkKPiA+ID4gK8KgwqDCoCAoYnVpbGQtc3lz dGVtIGNtYWtlLWJ1aWxkLXN5c3RlbSkKPiA+ID4gK8KgwqDCoCAobmF0aXZlLWlucHV0cwo+ID4g PiArwqDCoMKgwqAgYCgoImJpc29uIiAsYmlzb24pCj4gPiA+ICvCoMKgwqDCoMKgwqAgKCJib29z dCIgLGJvb3N0KQo+ID4gPiArwqDCoMKgwqDCoMKgICgiY2F0Y2gyIiAsY2F0Y2gyKQo+ID4gPiAr wqDCoMKgwqDCoMKgICgiZWlnZW4iICxlaWdlbikKPiA+ID4gK8KgwqDCoMKgwqDCoCAoImZsZXgi ICxmbGV4KQo+ID4gPiArwqDCoMKgwqDCoMKgICgiZnJlZXNhc2EiICxmcmVlc2FzYSkKPiA+ID4g K8KgwqDCoMKgwqDCoCAoInBrZy1jb25maWciICxwa2ctY29uZmlnKQo+ID4gPiArwqDCoMKgwqDC oMKgICgicmFwaWRqc29uIiAscmFwaWRqc29uKQo+ID4gPiArwqDCoMKgwqDCoMKgICgidGFyIiAs dGFyKQo+ID4gPiArwqDCoMKgwqDCoMKgICgiYXZhbG9udG9vbGtpdC1zcmMiCj4gPiA+ICvCoMKg wqDCoMKgwqDCoCAsKGxldCAoKHZlcnNpb24gIjEuMi4wIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoCAob3JpZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCB1 cmwtZmV0Y2gpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoc3RyaW5nLWFw cGVuZAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCj4gPiA+ICJo dHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL2F2YWxvbnRvb2xraXQvZmlsZXMvIgo+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJBdmFsb25Ub29sa2l0XyIg KHN1YnN0cmluZyB2ZXJzaW9uIDAgMykKPiA+ID4gIi9BdmFsb25Ub29sa2l0XyIKPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2ZXJzaW9uICIuc291cmNlLnRhciIp KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChiYXNlMzIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAKPiA+ID4gIjBybm55eTZheHMyZGE3YWE0cTZsMzBsZGF2Yms0OXY2bDIybGxqMWFkbjc0 aDFpNjdicHYiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChn dWl4IGJ1aWxkIHV0aWxzKSAoaWNlLTkgZnR3KSAoc3JmaQo+ID4gPiBzcmZpLQo+ID4gPiAyNikp KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzbmlwcGV0Cj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAjfihiZWdpbgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoY2hkaXIgIi4uIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJTdGFuZGFyZEZpbGVzIikKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vy c2l2ZWx5Cj4gPiA+ICJTb3VyY2VEaXN0cmlidXRpb24vamF2YSIpCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICN0KSkpKSkKPiA+ID4gK8KgwqDCoMKgwqDCoCAoInJp bmdkZWNvbXBvc2VybGliLXNyYyIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgICwobGV0ICgodmVyc2lv biAiMS4xLjMiKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIChvcmlnaW4KPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybAo+ID4gPiAiaHR0cHM6Ly9naXRodWIuY29tL3Jh cmV5bGFiL1JpbmdEZWNvbXBvc2VyTGliIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2ZXJzaW9uCj4gPiA+ICJf cmRraXQiKSkpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmaWxlLW5hbWUgKGdp dC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc2hhMjU2Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCj4gPiA+ICIxcnh6czJ3cGtrZGk0MHdkenhj NHNuMGJyazdkbTdpdmdxeWZoMzhnZjJmNWM3cGJnMHdpIikpKSkpKSkKPiA+ID4gK8KgwqDCoCAo aW5wdXRzCj4gPiA+ICvCoMKgwqDCoCAobGlzdCBjYWlybwo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqAgY29vcmRnZW5saWJzCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb250LWNvbWlj LW5ldWUKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIGZyZWV0eXBlCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoCBpbmNoaQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWFlcGFyc2Vy Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBweXRob24KPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgIHNxbGl0ZQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgeWFlaG1vcC10aWdodGJp bmQpKQo+ID4gPiArwqDCoMKgIChwcm9wYWdhdGVkLWlucHV0cwo+ID4gPiArwqDCoMKgwqAgKGxp c3QgcHl0aG9uLW51bXB5IHB5dGhvbi1jYWlyb2NmZmkgcHl0aG9uLXBpbGxvdykpCj4gPiA+ICvC oMKgwqAgKGFyZ3VtZW50cwo+ID4gPiArwqDCoMKgwqAgKGxpc3QKPiA+ID4gK8KgwqDCoMKgwqAg IzppbXBvcnRlZC1tb2R1bGVzIChhcHBlbmQgJWNtYWtlLWJ1aWxkLXN5c3RlbS1tb2R1bGVzCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICcoKGd1aXggYnVpbGQgcHl0aG9uLWJ1aWxkLQo+ID4gPiBzeXN0ZW0pKSkK PiA+ID4gK8KgwqDCoMKgwqAgIzptb2R1bGVzICcoKGd1aXggYnVpbGQgY21ha2UtYnVpbGQtc3lz dGVtKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZ3VpeCBidWls ZCB1dGlscykKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKChndWl4 IGJ1aWxkIHB5dGhvbi1idWlsZC1zeXN0ZW0pCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIzpzZWxlY3QgKGFkZC1pbnN0YWxsZWQtcHl0aG9ucGF0aCkpKQo+ID4g PiArwqDCoMKgwqDCoCAjOmNvbmZpZ3VyZS1mbGFncwo+ID4gPiArwqDCoMKgwqDCoCAjfihsaXN0 Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9BVkFMT05fU1VQUE9SVD1PTiIK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JVSUxEX0NBSVJPX1NVUFBPUlQ9T04iCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9DUFBfVEVTVFM9T04iCj4gPiA+ICvC oMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9GUkVFU0FTQV9TVVBQT1JUPU9OIgo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoCAiLURSREtfQlVJTERfSU5DSElfU1VQUE9SVD1PTiIKPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JVSUxEX1lBRUhNT1BfU1VQUE9SVD1PTiIKPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIi1EQ0FUQ0hfRElSPSIKPiA+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyQodGhpcy1wYWNrYWdl LW5hdGl2ZS1pbnB1dCAiY2F0Y2gyIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgIi9pbmNsdWRlL2NhdGNoMiIpCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgICItRFJES19JTlNUQUxMX0RFVl9DT01QT05FTlQ9T04iCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgICItRFJES19JTlNUQUxMX0lOVFJFRT1PRkYiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg ICItRFJES19JTlNUQUxMX1NUQVRJQ19MSUJTPU9GRiIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqAg KHN0cmluZy1hcHBlbmQKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfT1BUSU1JWkVf UE9QQ05UPSIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAjJChsZXQgKChzeXN0ZW0gKG9yICgl Y3VycmVudC10YXJnZXQtc3lzdGVtKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoJWN1cnJlbnQtc3lzdGVtKSkpKQo+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbmQKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKChzdHJpbmctcHJlZml4PyAieDg2XzY0IiBzeXN0ZW0pICJPTiIpCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoc3RyaW5nLXByZWZpeD8gImk2ODYi IHN5c3RlbSkgIk9OIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGVsc2Ug Ik9GRiIpKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19VU0VfQk9PU1RfSU9TVFJF QU1TPU9OIgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfVVNFX0ZMRVhCSVNPTj1PTiIp Cj4gPiA+ICvCoMKgwqDCoMKgICM6cGhhc2VzCj4gPiA+ICvCoMKgwqDCoMKgICN+KG1vZGlmeS1w aGFzZXMgJXN0YW5kYXJkLXBoYXNlcwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0 ZXIgJ3VucGFjayAnY29weS1leHRlcm5hbC1kZXBlbmRlbmNpZXMKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3ltbGluawo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVu ZAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICMkKHRoaXMtcGFja2FnZS1p bnB1dCAiZm9udC1jb21pYy1uZXVlIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAiL3NoYXJlL2ZvbnRzL3RydWV0eXBlL0NvbWljTmV1ZS1SZWd1bGFyLnR0ZiIpCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJEYXRhL0ZvbnRzL0NvbWljTmV1ZS1SZWd1 bGFyLnR0ZiIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3ltbGluayAjJCh0 aGlzLXBhY2thZ2UtbmF0aXZlLWlucHV0ICJyYXBpZGpzb24iKQo+ID4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkV4dGVybmFsL3JhcGlkanNvbi0xLjEu MCIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICJ0YXIiICJ4dmYi Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyQodGhp cy1wYWNrYWdlLW5hdGl2ZS1pbnB1dAo+ID4gPiAiYXZhbG9udG9vbGtpdC0KPiA+ID4gc3JjIikK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiLUMiICJF eHRlcm5hbC9BdmFsb25Ub29scyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3ltbGluayAjJCh0aGlzLXBhY2thZ2UtbmF0aXZlLWlucHV0Cj4gPiA+ICJyaW5nZGVjb21wb3Nl cmxpYi1zcmMiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAKPiA+ID4gIkV4dGVybmFsL1JpbmdGYW1pbGllcy9SaW5nRGVjb21wb3NlckxpYiIpCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjdCkpCj4gPiBZb3UgbWlnaHQgd2FudCB0 byB0cnkgdW5idW5kbGluZyB0aG9zZS7CoCBFaXRoZXIgd2F5LCB5b3Ugc2hvdWxkCj4gPiBmaW5k IGEKPiA+IHNvbHV0aW9uIHRoYXQgZG9lc24ndCBkZXBlbmQgb24gbmF0aXZlLWlucHV0IGxhYmVs cy4KPiBPaywgSSB1bmJ1bmRsZWQgdGhlbSwgYnV0IHRoZSBwYWNrYWdlIGRlZmluaXRpb25zIGJl Y2FtZSBhIGJpdCBsb25nLgo+IDopICBEbyB5b3UgdGhpbmsgaXQgaXMgb2sgbGlrZSB0aGF0Pwo+ ID4gCkxvbmcgcGFja2FnZSBkZWZpbml0aW9ucyBhcmUgbm90IGluaGVyZW50bHkgYmFkICh1bmxl c3Mgb2YgY291cnNlIHRoZXJlCmlzIGFuIG9idmlvdXNseSBsZXNzIHZlcmJvc2Ugd2F5IG9mIHdy aXRpbmcgdGhlbSkuICBJJ2xsIHRha2UgYSBsb29rIGF0CnlvdXIgdjIgYXQgYSBsYXRlciB0aW1l LgoKQ2hlZXJzCg== From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 06:02:12 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 10:02:12 +0000 Received: from localhost ([127.0.0.1]:42107 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohT8N-0005TA-MZ for submit@debbugs.gnu.org; Sun, 09 Oct 2022 06:02:11 -0400 Received: from mail-ej1-f65.google.com ([209.85.218.65]:40711) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohT8L-0005Sx-3J for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 06:02:10 -0400 Received: by mail-ej1-f65.google.com with SMTP id r17so19499446eja.7 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 03:02:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=QmU7/cTQWCLB71pYxDSbZcApUMSSmRa5VjNhXXyr8W4=; b=h+At6RYO3hUxdqdPcEmDhlmaZdfr3CyUp9Lb9wOb6/v/QlbtkmPzmseeLeK8EPwDRb 90hUtr1cAKif1g7lD+GzGw1/IL9xkAow44svEcxtSKyh3S5SE0C0/NlBvKjbgRafRAn4 nuBSGM75Vm0iKJWRpljh2cazsVDBvzEdwO8QfYhJ/DjPhtF/fQLIjF/XXRGQdWzP4Mwm jMPY79brUlmpv8F1TnN5mH6UeJAVsJ8iQ/B2+0FrAUhSMyeQOUPAHuZeE3OHYUL7/Iqp oXwxs1VOb1a8WIDaIwiMFf52NW3WZxD6JMp5ib3/SPAMVBtxZPZlD6HQ/Mnn+uzhv3bI c0Qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=QmU7/cTQWCLB71pYxDSbZcApUMSSmRa5VjNhXXyr8W4=; b=spFJT8xzPqMqtbY20BhQRXDKIx80eWgnH+DTXtUudrBI3GoDdxzp3OIJ8X4h+Q4jWu sc4kxL5BBhItHEQXKRO0qQ0xlo6+amomWLkDw6EDUoUe177CaHyTg9BUHBvP0Di5E1XB LeQSrykj9GXmNzA6fURlhOroMQHy0GMcn9nUUycESXl/p8kfH1oCq2YOG5cEp2Ab7rcP mM+npk0VkumyzN6V32LD8C9v1tvfjtDATpWkGqHuFsUEihj9Wacn6kzp6N/Ev8RJGjw4 bw6yojRL48yy3Jtdp2pabIDg851QyTrmPN9yrkAkX+Y6MDKun1/ZIRMbau6HN4XtCxJd PP5g== X-Gm-Message-State: ACrzQf2uYhWCey9KF9DRK9VGUlM2QdO4OE5kfhPL0EgwZG+JcYxazPIa xV1BGUMMKxV6UD9vAslGd+E= X-Google-Smtp-Source: AMsMyM5mjloxFndy5BpU3Rf/pVlPEJWuwx271xUpW/wtddD9xgrSwl1kh2gh3W4j3+0A3cIgomv8Xg== X-Received: by 2002:a17:906:65c6:b0:73c:8897:65b0 with SMTP id z6-20020a17090665c600b0073c889765b0mr10480910ejn.322.1665309723057; Sun, 09 Oct 2022 03:02:03 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id p21-20020a170906a01500b0072f112a6ad2sm3751276ejy.97.2022.10.09.03.02.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 03:02:02 -0700 (PDT) Message-ID: <94dea77277ecdc07d120d912aa0af43301b74004.camel@gmail.com> Subject: Re: [PATCH v2 00/13] Add rdkit v2. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 12:02:00 +0200 In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Am Freitag, dem 07.10.2022 um 15:21 +0000 schrieb David Elsing: > Thanks a lot for your comments, they are very helpful! > Sorry about the descriptions, I took them mostly from upstream. :) > Are they still too short? I don't think we can magically poof good descriptions into existence when upstreams don't provide them. That being said, it's best to clean up whatever's there. Changing descriptions is a lowball issue, though, I (or another committer) can do so as we're upstreaming it. > I still have the following problems: > * The tests of tinydir contain a bundled fork of cbehave which uses a > =C2=A0 (bundled) copy of rlutil, so I left them disabled for now. I mentioned this in a reply to another message already, but the idea would be to 1. try to use upstream versions or 2. try to package the bundles.=20 > * Building the documentation of yaehmop with pdflatex is not > reproducible even > =C2=A0 though I set FORCE_SOURCE_DATE=3D1. Is it even necessary to build = the > =C2=A0 documentation? Maybe pdftrailerid can help you? You could also try to convert the documentation into a reproducible format -- e.g. using pandoc. > * Using @abbr in the description does not work (I also did not find > it in any > =C2=A0 other package). My bad, that should be @acronym. Cheers From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 06:04:21 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 10:04:21 +0000 Received: from localhost ([127.0.0.1]:42115 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohTAS-0005WZ-Ku for submit@debbugs.gnu.org; Sun, 09 Oct 2022 06:04:21 -0400 Received: from mail-ed1-f67.google.com ([209.85.208.67]:43863) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohTAM-0005WH-1X for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 06:04:18 -0400 Received: by mail-ed1-f67.google.com with SMTP id z3so11362604edc.10 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 03:04:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=/HNExAoWf+NUOmlo5/a82upQhHxzemE1cyEUcrOZyXQ=; b=DWZ1yllFBzf/vP5YaQRS2dcYaLBTfhJdyeeqPho4lHr6EqSMKJE3YWbFROX1ElYnIh UgLoBnwHFrh/eZkgi0c+lHKRUZ0Gy8nh/iQvdp+GPEKYGOdXDO6hqhc3cB2+o2OZ0bqr VHjhL2RysF1Yf4zLzMIXvNgQ+n1rqNOlMO525zi6jePy0BoRyt/Y+E68nDT4PA1iEYp9 AsSggAM0XiCOY4Dh0tQYsGivy0T9AupedfySJUu4ev3mRqcF4cI6p/hblUzY5bTx9Cpo SCJ8WuGq2b+UeT2VW8C37YmwTRcWzKVxIVgLckid+xntcYGnV44tXKKesH6fUnCj658F YUoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=/HNExAoWf+NUOmlo5/a82upQhHxzemE1cyEUcrOZyXQ=; b=LLIyaROGhhZ5K7koj7/aj9CwbtFov6buteZDJ6g6NKrwK8Tys6MggFCCFY5XZUy8qQ Y1FalWRseGH4BhScCSfQwMQicjj6pH1WphWICDB/5R6JCSuiKINgMsOvKTYYn+er9SFx EFfElvrGAVyHdwC4Y8mLbGrNxSqNkX8SQizZhWjme5FYGYjmCVK8nr4LMb/akJ1fjCob tJNNxyGOD0qUJrTp0V0sLySNv/0VI7QzXxNcoMdmv1Ghb4nhlJ+/i29hdUq62lQr+xf3 D7YOGWId0HzHO4fdRow1bU4dL1ZICD1Wx+FUDESt1vJObOE4Pz4kV4U+6ZNGv+zCfiR9 V5jQ== X-Gm-Message-State: ACrzQf3Bbg5mt06fHuw1JxEDoTrFFNg/Z56n1C8BD5mFlCCTLa20KdNf GxtrbLVkTZuOH1ycIpT6Slo= X-Google-Smtp-Source: AMsMyM6DE1J1bW8KG3fgCpYpjv4/C4BGzCQYA/ZnwFLKXEmTWd1d2eZcWXneDGf6Y7NXF17rJB7WEw== X-Received: by 2002:a05:6402:380a:b0:451:ae08:7a6c with SMTP id es10-20020a056402380a00b00451ae087a6cmr12157444edb.161.1665309848302; Sun, 09 Oct 2022 03:04:08 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id h19-20020a1709063b5300b0078d4c72e2cesm3770358ejf.44.2022.10.09.03.04.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 03:04:07 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 01/13] gnu: Add fast-float. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 12:04:06 +0200 In-Reply-To: <20221007152148.32591-2-david.elsing@posteo.net> References: <20221007152148.32591-2-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAoZmFzdC1mbG9hdCk6IE5ldyB2YXJpYWJs ZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jcHAuc2NtIHwgNTQKPiArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5nZWQsIDU0IGluc2Vy dGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NwcC5zY20gYi9nbnUvcGFj a2FnZXMvY3BwLnNjbQo+IGluZGV4IGQwM2UwYmM3ZTEuLmE3NDA0ZGY1NjMgMTAwNjQ0Cj4gLS0t IGEvZ251L3BhY2thZ2VzL2NwcC5zY20KPiArKysgYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+IEBA IC0yOSw2ICsyOSw3IEBACj4gwqA7OzsgQ29weXJpZ2h0IMKpIDIwMjIgbXVyYWRtIDxtYWlsQG11 cmFkbS5uZXQ+Cj4gwqA7OzsgQ29weXJpZ2h0IMKpIDIwMjIgQXR0aWxhIExlbmR2YWkgPGF0dGls YUBsZW5kdmFpLm5hbWU+Cj4gwqA7OzsgQ29weXJpZ2h0IMKpIDIwMjIgQXJ1biBJc2FhYyA8YXJ1 bmlzYWFjQHN5c3RlbXJlYm9vdC5uZXQ+Cj4gKzs7OyBDb3B5cmlnaHQgwqkgMjAyMiBEYXZpZCBF bHNpbmcgPGRhdmlkLmVsc2luZ0Bwb3N0ZW8ubmV0Pgo+IMKgOzs7Cj4gwqA7OzsgVGhpcyBmaWxl IGlzIHBhcnQgb2YgR05VIEd1aXguCj4gwqA7OzsKPiBAQCAtMTkwNywzICsxOTA4LDU2IEBAIChk ZWZpbmUtcHVibGljIGNwcC1tdXN0YWNoZQo+IMKgdGVtcGxhdGVkIHN0cmluZyB0eXBlIGZvciBj b21wYXRpYmlsaXR5IHdpdGggYW55IFNUTC1saWtlIHN0cmluZwo+IChzdGQ6OnN0cmluZywKPiDC oHN0ZDo6d3N0cmluZywgZXRjKS4iKQo+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6Ym9vc3Qx LjApKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIGZhc3QtZmxvYXQKPiArwqAgKHBhY2thZ2UKPiAr wqDCoMKgIChuYW1lICJmYXN0LWZsb2F0IikKPiArwqDCoMKgICh2ZXJzaW9uICIzLjUuMSIpCj4g K8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1l dGhvZCBnaXQtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1y ZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybCAi aHR0cHM6Ly9naXRodWIuY29tL2Zhc3RmbG9hdC9mYXN0X2Zsb2F0IikKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVy c2lvbikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZp bGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hh MjU2Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAKPiAiMHozcnh4ZDBwd3Z3NzBkYm52NjNybTY3Yml3ODI5dmRx ZjUweTE2aXN4bTZnM3Nicno4ZyIpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1 aWxkLXN5c3RlbSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqAgKGxpc3QKPiArwqDC oMKgwqDCoCAjOmNvbmZpZ3VyZS1mbGFncwo+ICvCoMKgwqDCoMKgICN+KGxpc3QKPiArwqDCoMKg wqDCoMKgwqDCoCAiLURGQVNURkxPQVRfVEVTVD1PTiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURT WVNURU1fRE9DVEVTVD1PTiIpCj4gK8KgwqDCoMKgwqAgIzpwaGFzZXMKPiArwqDCoMKgwqDCoCAj fihtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChh ZGQtYWZ0ZXIgJ3VucGFjayAncGF0Y2gtY21ha2UtdGVzdHMKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUq ICJ0ZXN0cy9DTWFrZUxpc3RzLnR4dCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg Cj4gKCgiRmV0Y2hDb250ZW50X0dldFByb3BlcnRpZXNcXChzdXBwbGVtZW50YWxfdGVzdF9maWxl cy4qIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIiIpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJpZlxcKE5PVCBzdXBwbGVtZW50YWxfdGVzdF9maWxl c19QT1BVTEFURUQuKiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJp bmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInNldChzdXBw bGVtZW50YWxfdGVzdF9maWxlc19CSU5BUllfRElSICIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAjJCh0aGlzLXBhY2thZ2UtbmF0aXZlLWlucHV0ICJ0ZXN0LWRhdGEiKSAi L2RhdGEiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIilcbmlmKDApXG4i KSkpKSkpKSkKPiArwqDCoMKgIChuYXRpdmUtaW5wdXRzCj4gK8KgwqDCoMKgIGAoKCJ0ZXN0LWRh dGEiCj4gK8KgwqDCoMKgwqDCoMKgICwobGV0ICgoY29tbWl0ICI5N2EwYjJlNjM4ZmViNDc5Mzg3 NTU0Y2YyNTNlMzQ2NTAwNTQxZTdlIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIChvcmlnaW4K PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtZXRob2QgZ2l0LWZldGNoKQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJlZmVyZW5jZQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoAo+ICJodHRwczovL2dpdGh1Yi5jb20vZmFzdGZsb2F0L3N1cHBsZW1lbnRhbF90 ZXN0X2ZpbGVzLmdpdCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo Y29tbWl0IGNvbW1pdCkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAo Z2l0LWZpbGUtbmFtZSAiZmFzdF9mbG9hdF90ZXN0LWRhdGEiCj4gY29tbWl0KSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGJhc2UzMgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgCj4gIjBkeGJpeXp5aDdpODQ3 aTg5YWJsZnp5cGZjM2NraG03Zjc0dzk4anNoNzN2MW1wcG14bGYiKSkpKSkKWW91IGNhbiB1c2Ug dGhlIG9yaWdpbiBkaXJlY3RseSBpbiB0aGUgcmVjaXBlIHZpYSAjJC4gIEFsdGVybmF0aXZlbHks CnNlYXJjaC1pbnB1dC1kaXJlY3RvcnkgImRhdGEiIHdvdWxkIHByb2JhYmx5IGFsc28gd29yay4K PiArwqDCoMKgwqDCoMKgICgiZG9jdGVzdCIgLGRvY3Rlc3QpKSkKPiArwqDCoMKgIChob21lLXBh Z2UgImh0dHBzOi8vZ2l0aHViLmNvbS9mYXN0ZmxvYXQvZmFzdF9mbG9hdCIpCj4gK8KgwqDCoCAo c3lub3BzaXMgIkZsb2F0aW5nIHBvaW50IG51bWJlciBwYXJzZXIgZm9yIEMrKyIpCj4gK8KgwqDC oCAoZGVzY3JpcHRpb24gIkBjb2Rle2Zhc3RfZmxvYXR9IGlzIGEgaGVhZGVyLW9ubHkgQysrIGxp YnJhcnkgZm9yCj4gcGFyc2luZwo+ICtmbG9hdGluZyBwb2ludCBudW1iZXJzIGZyb20gc3RyaW5n cy7CoCBJdCBpbXBsZW1lbnRzIHRoZSBDKysKPiBmcm9tX2NoYXJzCj4gK2Z1bmN0aW9ucyBmb3Ig dGhlIGZsb2F0IGFuZCBkb3VibGUgdHlwZXMuIikKPiArwqDCoMKgIChsaWNlbnNlIChsaXN0IGxp Y2Vuc2U6YXNsMi4wIGxpY2Vuc2U6ZXhwYXQpKSkpIDsgZHVhbCBsaWNlbnNlZApDaGVlcnMK From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 07:42:30 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 11:42:30 +0000 Received: from localhost ([127.0.0.1]:42252 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUhR-0001v0-Rb for submit@debbugs.gnu.org; Sun, 09 Oct 2022 07:42:30 -0400 Received: from mail-ej1-f67.google.com ([209.85.218.67]:46847) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUhQ-0001um-KO for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 07:42:29 -0400 Received: by mail-ej1-f67.google.com with SMTP id bj12so19677002ejb.13 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 04:42:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=6hTw8HIbOcB5quITsqr8KPnztI5kTPECITuI6wnwpuw=; b=VFmqtOv4+JehH6ZtSNpcyyQpUnzL8zIZmESEd3eWry2iseLqY/4C7SzXPq/fGp3nmw XxGKlQ2tfdPRe5vSZ3uLw4Lv1PXvEjmK2nC8OfpRTy5Dp458bICZnxKKMnV/y1UKI+eV 2uAZp/i4Nwy9quCi4luRsVMMoFUHOn30b9R/BXVW3c5ri+zKvft+HdzmFhYXPa+oQUgi BGzbpFuFXn5kfhRTUbx0zP3hofXxE4yFX32Ws6gK7ToKLhzirlr5yoIWWEUCGvLIcl/J PV0rC3DgM+k9nWNhV9j4qVKV1+s13bKogYLjYy1e3fiBhifXv+bXwedSlmJuOPFmtJ8l STpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=6hTw8HIbOcB5quITsqr8KPnztI5kTPECITuI6wnwpuw=; b=DGyZsZKtnewiiicBi7AHqqM9+faUbQf3MVaBzdZy2jOb1r1K5XFZKIsySCJuo4vTgK h4nGiNWZkmiHDVYXGYGXiwyh6KtcH5RXiXgtoC2rI8nita5UKWmKmXVY9k70HCpIQSPp LcvkMk6Vx8K4E5NDcfdvM/ysFmvoUL8U46gvpFdg5TcHTg+LNJn15oSR/6TaTqUeb5yy 71x2Z113jJE5iLThCCyB5WGJ3DXiWt6SvMYBUj1wUENlBVGqsljgzK8uG3OOSMU4bBMv CKzTctzxe8JVp5dnOvcrCOqczc3LqyxQCaQ9yqXY7nVs9JbePifDPtoC5jC0F+VbqbeG qOyw== X-Gm-Message-State: ACrzQf0gUZ1/L/gdbUFgwpiwh9LKPtEKQbRP+J2W9a4+QgLNIS24xzD4 BIRhL3Z2hqLXb+UhErg9t7c= X-Google-Smtp-Source: AMsMyM6i0LDMyn1AoJX7vcxlOVyitbnwMrJ68h0/5auS2jhXToRJB20kxhgRHZRyhi9kSTOmq/cFgw== X-Received: by 2002:a17:907:c03:b0:781:fd5a:c093 with SMTP id ga3-20020a1709070c0300b00781fd5ac093mr10537008ejc.89.1665315742687; Sun, 09 Oct 2022 04:42:22 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id f13-20020a056402160d00b0044657ecfbb5sm5053973edv.13.2022.10.09.04.42.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 04:42:21 -0700 (PDT) Message-ID: <8cee7ac43ceff0510cfda8110689d2959b93c89f.camel@gmail.com> Subject: Re: [PATCH v2 02/13] gnu: Add pocketfft. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 13:42:18 +0200 In-Reply-To: <20221007152148.32591-3-david.elsing@posteo.net> References: <20221007152148.32591-3-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAocG9ja2V0ZmZ0KTogTmV3IHZhcmlhYmxl Lgo+IC0tLQo+IMKgZ251L3BhY2thZ2VzL2NwcC5zY20gfCA0NAo+ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gwqAxIGZpbGUgY2hhbmdlZCwgNDQgaW5zZXJ0 aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvY3BwLnNjbSBiL2dudS9wYWNr YWdlcy9jcHAuc2NtCj4gaW5kZXggYTc0MDRkZjU2My4uMzhhMmE5ZTgyOSAxMDA2NDQKPiAtLS0g YS9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ICsrKyBiL2dudS9wYWNrYWdlcy9jcHAuc2NtCj4gQEAg LTE5NjEsMyArMTk2MSw0NyBAQCAoZGVmaW5lLXB1YmxpYyBmYXN0LWZsb2F0Cj4gwqBmbG9hdGlu ZyBwb2ludCBudW1iZXJzIGZyb20gc3RyaW5ncy7CoCBJdCBpbXBsZW1lbnRzIHRoZSBDKysKPiBm cm9tX2NoYXJzCj4gwqBmdW5jdGlvbnMgZm9yIHRoZSBmbG9hdCBhbmQgZG91YmxlIHR5cGVzLiIp Cj4gwqDCoMKgwqAgKGxpY2Vuc2UgKGxpc3QgbGljZW5zZTphc2wyLjAgbGljZW5zZTpleHBhdCkp KSkgOyBkdWFsIGxpY2Vuc2VkCj4gKwo+ICsoZGVmaW5lLXB1YmxpYyBwb2NrZXRmZnQtY3BwCj4g K8KgIChsZXQgKChjb21taXQgImRhYThiYjE4MzI3YmM1YzdkMjJjNjk0MjhjMjVjZjVkYzY0MTY3 ZDMiKQo+ICvCoMKgwqDCoMKgwqDCoCAocmV2aXNpb24gIjAiKSkKPiArwqDCoMKgIChwYWNrYWdl Cj4gK8KgwqDCoMKgwqAgKG5hbWUgInBvY2tldGZmdC1jcHAiKQo+ICvCoMKgwqDCoMKgICh2ZXJz aW9uIChnaXQtdmVyc2lvbiAiMCIgcmV2aXNpb24gY29tbWl0KSkKPiArwqDCoMKgwqDCoCAoc291 cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtZXRob2QgZ2l0 LWZldGNoKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJlZmVy ZW5jZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybCAi aHR0cHM6Ly9naXRodWIuY29tL21yZWluZWNrL3BvY2tldGZmdCIpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IGNvbW1pdCkpKQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZl cnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ngo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAKPiAiMWRia2txa21reGdtejFxanBzcXppYzVpZzNxdzFwcW5kYmIz ZHZqYzd4cTVmMnJkenlxMSIpKSkpCj4gK8KgwqDCoMKgwqAgKGJ1aWxkLXN5c3RlbSBjb3B5LWJ1 aWxkLXN5c3RlbSkKPiArwqDCoMKgwqDCoCAoYXJndW1lbnRzCj4gK8KgwqDCoMKgwqDCoCAobGlz dAo+ICvCoMKgwqDCoMKgwqDCoCAjOmluc3RhbGwtcGxhbgo+ICvCoMKgwqDCoMKgwqDCoCAjfico KCJwb2NrZXRmZnRfaGRyb25seS5oIiAiaW5jbHVkZS8iKSkKPiArwqDCoMKgwqDCoMKgwqAgIzpw aGFzZXMKPiArwqDCoMKgwqDCoMKgwqAgI34obW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2Vz Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1iZWZvcmUgJ2luc3RhbGwgJ3BhdGNoLW5v dmVjdG9ycwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAicG9ja2V0ZmZ0X2hkcm9ubHku aCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCIjaWZuZGVmIFBPQ0tF VEZGVF9OT19WRUNUT1JTIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICIjaWYgIShQT0NLRVRGRlRfTk9fVkVDVE9SUykiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICgoIiNpZiBkZWZpbmVkXFwoUE9DS0VURkZUX05PX1ZFQ1RPUlNcXCkiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIiNpZiBQT0NLRVRGRlRfTk9f VkVDVE9SUyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiI2RlZmlu ZSBQT0NLRVRGRlRfTk9fVkVDVE9SUyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAiI2RlZmluZSBQT0NLRVRGRlRfTk9fVkVDVE9SUyAxIikKVGhpcyBvbmUgSSBkb24n dCB0aGluayBjaGFuZ2VzIGFueXRoaW5nLgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICgoIiNcXHMqdW5kZWYgUE9DS0VURkZUX05PX1ZFQ1RPUlMiKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIiNkZWZpbmUgUE9DS0VURkZUX05PX1ZFQ1RPUlMg MCIpCkhlcmUgdG9vLCBJIHRoaW5rIHlvdSBjYW4gaWdub3JlIHRoYXQuCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiI2RlZmluZSBQT0NLRVRGRlRfSERST05MWV9ILioi IG9yaWcpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFw cGVuZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBvcmlnICJcbiNp Zm5kZWYgUE9DS0VURkZUX05PX1ZFQ1RPUlNcbiIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIiNkZWZpbmUgUE9DS0VURkZUX05PX1ZFQ1RPUlMgMVxuIgo+ICIjZW5k aWZcbiIpKSkpKSkpKQpNb3JlIGltcG9ydGFudGx5LCBJIHRoaW5rIHRoaXMgc2hvdWxkIGJlIGRv bmUgd2l0aCBhIHNuaXBwZXQgb3IgZXZlbgpiZXR0ZXIgYSBwYXRjaCDigJMgSSdkIHJlY29tbWVu ZCB0aGUgbGF0dGVyIGJlY2F1c2UgSSB0aGluayBpdCdkIGJlCmVhc2llciB0byByZWFzb24gYWJv dXQuCj4gK8KgwqDCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9naXRodWIuY29tL21yZWluZWNr L3BvY2tldGZmdCIpCj4gK8KgwqDCoMKgwqAgKHN5bm9wc2lzICJDKysxMSBoZWFkZXItb25seSBG YXN0IEZvdXJpZXIgVHJhbnNmb3JtIGxpYnJhcnkiKQo+ICvCoMKgwqDCoMKgIChkZXNjcmlwdGlv biAiVGhpcyBwYWNrYWdlIHByb3ZpZGVzIGEgc2luZ2xlLWhlYWRlciBDKysxMQo+IGxpYnJhcnkg Zm9yCj4gK2NvbXB1dGluZyBGYXN0IEZvdXJpZXIgdHJhbnNmb3JtYXRpb25zLsKgIEl0IHN1cHBv cnRzCj4gbXVsdGlkaW1lbnNpb25hbCBhcnJheXMsCj4gK2RpZmZlcmVudCBmbG9hdGluZyBwb2lu dCBzaXplcyBhbmQgY29tcGxleCB0cmFuc2Zvcm1hdGlvbnMuIikKPiArwqDCoMKgwqDCoCAobGlj ZW5zZSBsaWNlbnNlOmJzZC0zKSkpKQoK From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 07:46:29 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 11:46:29 +0000 Received: from localhost ([127.0.0.1]:42262 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUlI-000220-RX for submit@debbugs.gnu.org; Sun, 09 Oct 2022 07:46:29 -0400 Received: from mail-ed1-f68.google.com ([209.85.208.68]:34433) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUlG-00021l-7N for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 07:46:26 -0400 Received: by mail-ed1-f68.google.com with SMTP id s30so12549947eds.1 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 04:46:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=0kpspv7gljsqCnHKnPRiuuW1EH0wpwFskSucTO3I0Eg=; b=R0DTZ+/NA1mXppH87RH55Ws2K7gN1f2uYd3UqwnR6UFNeihG8CrKePvbWQctXmSy4w VYaMqIPU1HPMaLMBZiHp4nA8x+H5owo3K4CHFJdohNd4rPSH1o61CsSD1mEtwSx8Y0pf BO/xad2owGv5EWiKImJYG2msWA4HlmAnMEAe8/KVKYTj0XTK3o6Gedbch+rfpwfvcHkA F5szujxRiT/H9BSCrpW3XAYm6qSYPHntZjj7z2FSc99ApmctLlWNb0ZrgLHpYDWB9Ueq zJhJvUN0lOk7F7iXu/3FwmcscRxoSP/L+feHSSSNC5lxeK2xKpIvWCj0kgA0uEXbVfsQ FrJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=0kpspv7gljsqCnHKnPRiuuW1EH0wpwFskSucTO3I0Eg=; b=24YyGkWwmIAI9eU3+mdybGJ7iA0F4HEv0r9Xhw03x9j5tOr+RjiIhiJvhKHt1OxSWP GtFyHRh4O+qAH7OlCDjc5Ykx2p4fh2cYDm2KCriKcDxBmIdfrm94vyvVaKSfwRuTaAIH 3fXcBkY9yKbWKz4tm6VXL6EFQESoNISenHorrZOKhOJqg9m2Z3XafTaWUW7AX5/KZ5HR DMzfmWDciyqNBihwxTZo4jCtUjlBYCKegf2JvKHFqv/IipcoesNNc903NMu5CT+gBdzg JaJaJQUIWzwybgaghp8KLW2nA+8o5DVYggm1eCS//SremGuKA3izB/+xpEb4h8gEUgx5 7gLA== X-Gm-Message-State: ACrzQf1yTkfSgAVcBVOu+vABcP30fZ1y11PffGgoUDzDKDHyhHVgc/E6 YER4uDFlkcF+hmjeEaW9Aqc= X-Google-Smtp-Source: AMsMyM5h+XGHb/U6RQC+HI/EJVCJra0gWeGzHflBMsiYNLkawbyEqYCtUFo644x46JRlI0+quT47zw== X-Received: by 2002:a05:6402:3890:b0:45c:2b5:b622 with SMTP id fd16-20020a056402389000b0045c02b5b622mr2134715edb.69.1665315980461; Sun, 09 Oct 2022 04:46:20 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id bo1-20020a170906d04100b0073d753759fasm3922257ejb.172.2022.10.09.04.46.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 04:46:20 -0700 (PDT) Message-ID: <8fbe13ce961324619084c6972edcb7a3784f17f8.camel@gmail.com> Subject: Re: [PATCH v2 03/13] gnu: Add sajson. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 13:46:18 +0200 In-Reply-To: <20221007152148.32591-4-david.elsing@posteo.net> References: <20221007152148.32591-4-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAoc2Fqc29uKTogTmV3IHZhcmlhYmxlLgo+ IC0tLQo+IMKgZ251L3BhY2thZ2VzL2NwcC5zY23CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDYwCj4gKysrKysrKysrKysrKysrKysrKwo+IMKgLi4u L3BhdGNoZXMvc2Fqc29uLWJ1aWxkLXdpdGgtZ2NjMTAucGF0Y2jCoMKgwqDCoCB8IDQ1ICsrKysr KysrKysrKysrCj4gwqAyIGZpbGVzIGNoYW5nZWQsIDEwNSBpbnNlcnRpb25zKCspCj4gwqBjcmVh dGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWJ1aWxkLXdpdGgtCj4g Z2NjMTAucGF0Y2gKPiAKPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NwcC5zY20gYi9nbnUv cGFja2FnZXMvY3BwLnNjbQo+IGluZGV4IDM4YTJhOWU4MjkuLmRjYTAyNDVkZjUgMTAwNjQ0Cj4g LS0tIGEvZ251L3BhY2thZ2VzL2NwcC5zY20KPiArKysgYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ IEBAIC01Nyw2ICs1Nyw3IEBAIChkZWZpbmUtbW9kdWxlIChnbnUgcGFja2FnZXMgY3BwKQo+IMKg wqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBnbnUpCj4gwqDCoCAjOnVzZS1tb2R1 bGUgKGd1aXggYnVpbGQtc3lzdGVtIG1lc29uKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1 aWxkLXN5c3RlbSBweXRob24pCj4gK8KgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0g c2NvbnMpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggbW9kdWxlcykKPiDCoMKgICM6dXNlLW1v ZHVsZSAoZ3VpeCBnZXhwKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMpCj4gQEAg LTIwMDUsMyArMjAwNiw2MiBAQCAoZGVmaW5lLXB1YmxpYyBwb2NrZXRmZnQtY3BwCj4gwqBjb21w dXRpbmcgRmFzdCBGb3VyaWVyIHRyYW5zZm9ybWF0aW9ucy7CoCBJdCBzdXBwb3J0cwo+IG11bHRp ZGltZW5zaW9uYWwgYXJyYXlzLAo+IMKgZGlmZmVyZW50IGZsb2F0aW5nIHBvaW50IHNpemVzIGFu ZCBjb21wbGV4IHRyYW5zZm9ybWF0aW9ucy4iKQo+IMKgwqDCoMKgwqDCoCAobGljZW5zZSBsaWNl bnNlOmJzZC0zKSkpKQo+ICsKPiArKGRlZmluZS1wdWJsaWMgc2Fqc29uCj4gK8KgIChsZXQgKChj b21taXQgImVjNjQ0MDEzZTM0Zjk5ODRhM2NjOWJhNTY4Y2FiOTdhMzkxZGI5Y2QiKQo+ICvCoMKg wqDCoMKgwqDCoCAocmV2aXNpb24gIjAiKSkKPiArwqDCoMKgIChwYWNrYWdlCj4gK8KgwqDCoMKg wqAgKG5hbWUgInNhanNvbiIpCj4gK8KgwqDCoMKgwqAgKHZlcnNpb24gKGdpdC12ZXJzaW9uICIx LjAiIHJldmlzaW9uIGNvbW1pdCkpCj4gK8KgwqDCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRjaCkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwgImh0dHBzOi8vZ2l0aHViLmNv bS9jaGFkYXVzdGluL3NhanNvbiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoY29tbWl0IGNvbW1pdCkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHBhdGNoZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHNlYXJjaC1wYXRjaGVzICJzYWpzb24tYnVpbGQtd2l0aC1nY2MxMC5wYXRj aCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ngo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAKPiAiMGZqYWcyN3c3Z3ZrYzVwZGhxM2FkN3ljMDlyYWJwemFobmR3MXNn c2cwNGlwem5pZG1tcSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZHVs ZXMgJygoZ3VpeCBidWlsZCB1dGlscykpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKHNuaXBwZXQgJyhkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidGhpcmQtcGFydHkiKSkpKQo+ ICvCoMKgwqDCoMKgIChidWlsZC1zeXN0ZW0gc2NvbnMtYnVpbGQtc3lzdGVtKQo+ICvCoMKgwqDC oMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqDCoMKgIChsaXN0Cj4gK8KgwqDCoMKgwqDCoMKgICM6 cGhhc2VzCj4gK8KgwqDCoMKgwqDCoMKgICN+KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNl cwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAnZGlzYWJsZS1v dGhlci1idWlsZHMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogIlNDb25zdHJ1Y3QiCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiZm9yIG5hbWUsIHRvb2xzIGlu IGJ1aWxkczoiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImZvciBu YW1lLCB0b29scyBpbiBbKCdvcHQnLCBbZ2NjLCBvcHRdKV06IikpKSkKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ3VzZS1leHRlcm5hbC11bml0dGVzdC1jcHAK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSogKCM6a2V5IGlucHV0cyAjOmFs bG93LW90aGVyLWtleXMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3Rp dHV0ZSogIlNDb25zY3JpcHQiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KCgidW5pdHRlc3RwcF9lbnZcXC5MaWJyYXJ5IikgIl9kdW1teSA9ICIpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgidGVzdF9lbnYgPSBlbnYuQ2xvbmVcXCh0b29scz1c XFt1bml0dGVzdHBwLAo+IHNhanNvblxcXVxcKSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAidGVzdF9lbnYgPSBlbnYuQ2xvbmUodG9vbHM9W3NhanNvbl0pXG4iCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJ0ZXN0X2Vudi5BcHBlbmQo Q1BQUEFUSD0nIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2Vh cmNoLWlucHV0LWRpcmVjdG9yeSBpbnB1dHMKPiAiL2luY2x1ZGUvVW5pdFRlc3QrKyIpCk5vdGUg dGhhdCB5b3UgbmVlZCAob3IgbmF0aXZlLWlucHV0cyBpbnB1dHMpIHdoZXJldmVyIHlvdSB3cm90 ZSBpbnB1dHMuCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICInLCBM SUJQQVRIPSciCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJp bmctYXBwZW5kICMkKHRoaXMtcGFja2FnZS1uYXRpdmUtaW5wdXQKPiAidW5pdHRlc3QtY3BwIikK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIi9saWIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAiJywgTElCUz1bJ1VuaXRUZXN0KysnXSkiKSkpKSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAocmVwbGFjZSAnY2hlY2sKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxh bWJkYSogKCM6a2V5IHRlc3RzPyAjOmFsbG93LW90aGVyLWtleXMpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAod2hlbiB0ZXN0cz8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoaW52b2tlICJidWlsZC9vcHQvdGVzdCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAiYnVpbGQvb3B0L3Rlc3RfdW5zb3J0ZWQiKSkpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdpbnN0YWxsCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGxldCAoKG91dCAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dCAiL2luY2x1ZGUiKSkpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluc3RhbGwtZmlsZSAiaW5jbHVkZS9z YWpzb24uaCIgb3V0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0 YWxsLWZpbGUgImluY2x1ZGUvc2Fqc29uX29zdHJlYW0uaCIKPiBvdXQpKSkpKSkpCkZvciB0aGUg cmVjb3JkLCB3aGF0IHdvdWxkIGEgcmVndWxhciBpbnN0YWxsIGRvPwo+ICvCoMKgwqDCoMKgIChu YXRpdmUtaW5wdXRzIChsaXN0IHVuaXR0ZXN0LWNwcCkpCj4gK8KgwqDCoMKgwqAgKGhvbWUtcGFn ZSAiaHR0cHM6Ly9naXRodWIuY29tL2NoYWRhdXN0aW4vc2Fqc29uIikKPiArwqDCoMKgwqDCoCAo c3lub3BzaXMgIkMrKzExIGhlYWRlci1vbmx5LCBpbi1wbGFjZSBKU09OIHBhcnNlciIpCj4gK8Kg wqDCoMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXtzYWpzb259IGlzIGFuIGluLXBsYWNlIEpTT04g cGFyc2VyIHdpdGgKPiBzdXBwb3J0IGZvcgo+ICtwYXJzaW5nIHdpdGggb25seSBhIHNpbmdsZSBt ZW1vcnkgYWxsb2NhdGlvbi4iKQo+ICvCoMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQp KSkpCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNvbi1idWlsZC13aXRo LWdjYzEwLnBhdGNoCj4gYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpzb24tYnVpbGQtd2l0aC1n Y2MxMC5wYXRjaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMC4uODc4 NzA2ZGM3OQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpz b24tYnVpbGQtd2l0aC1nY2MxMC5wYXRjaAo+IEBAIC0wLDAgKzEsNDUgQEAKPiArVGhpcyBwYXRj aCBpcyBmcm9tIHRoZSB1cHN0cmVhbSBwdWxsIHJlcXVlc3QKPiAraHR0cHM6Ly9naXRodWIuY29t L2NoYWRhdXN0aW4vc2Fqc29uL3B1bGwvNTQuCj4gK0l0IGZpeGVzIGxpbmtpbmcgd2l0aCBHQ0Mu Cj4gKwo+ICtkaWZmIC0tZ2l0IGEvaW5jbHVkZS9zYWpzb24uaCBiL2luY2x1ZGUvc2Fqc29uLmgK PiAraW5kZXggOGI0ZTA1YS4uMWJkMDQ1YiAxMDA2NDQKPiArLS0tIGEvaW5jbHVkZS9zYWpzb24u aAo+ICsrKysgYi9pbmNsdWRlL3NhanNvbi5oCj4gK0BAIC0xMzgsMTIgKzEzOCwxNyBAQCBjb25z dGV4cHIgaW5saW5lIHNpemVfdCBtYWtlX2VsZW1lbnQodGFnIHQsCj4gc2l6ZV90IHZhbHVlKSB7 Cj4gKyAvLyBoZWFkZXIuIFRoaXMgdHJpY2sgY291cnRlc3kgb2YgUmljaCBHZWxkcmVpY2gncyBQ dXJwbGUgSlNPTgo+IHBhcnNlci4KPiArIHRlbXBsYXRlIDx0eXBlbmFtZSB1bnVzZWQgPSB2b2lk Pgo+ICsgc3RydWN0IGdsb2JhbHNfc3RydWN0IHsKPiArK8KgwqDCoCBzdGF0aWMgY29uc3QgdW5z aWduZWQgY2hhciBwYXJzZV9mbGFnc1syNTZdOwo+ICsrfTsKPiArK3R5cGVkZWYgZ2xvYmFsc19z dHJ1Y3Q8PiBnbG9iYWxzOwo+ICsrCj4gKyAvLyBjbGFuZy1mb3JtYXQgb2ZmCj4gKyAKPiArwqDC oMKgwqAgLy8gYml0IDAgKDEpIC0gc2V0IGlmOiBwbGFpbiBBU0NJSSBzdHJpbmcgY2hhcmFjdGVy Cj4gK8KgwqDCoMKgIC8vIGJpdCAxICgyKSAtIHNldCBpZjogd2hpdGVzcGFjZQo+ICvCoMKgwqDC oCAvLyBiaXQgNCAoMHgxMCkgLSBzZXQgaWY6IDAtOSBlIEUgLgo+ICstwqDCoMKgIGNvbnN0ZXhw ciBzdGF0aWMgY29uc3QgdWludDhfdCBwYXJzZV9mbGFnc1syNTZdID0gewo+ICsrwqDCoMKgIHRl bXBsYXRlIDx0eXBlbmFtZSB1bnVzZWQ+Cj4gKyvCoMKgwqAgY29uc3QgdW5zaWduZWQgY2hhciBn bG9iYWxzX3N0cnVjdDx1bnVzZWQ+OjpwYXJzZV9mbGFnc1syNTZdID0KPiB7Cj4gK8KgwqDCoMKg wqAgLy8gMMKgwqDCoCAxwqDCoMKgIDLCoMKgwqAgM8KgwqDCoCA0wqDCoMKgIDXCoMKgwqAgNsKg wqDCoCA3wqDCoMKgwqDCoCA4wqDCoMKgIDnCoMKgwqAgQcKgwqDCoAo+IELCoMKgwqAgQ8KgwqDC oCBEwqDCoMKgIEXCoMKgwqAgRgo+ICvCoMKgwqDCoMKgwqDCoMKgIDAswqDCoCAwLMKgwqAgMCzC oMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqDCoMKgIDAswqDCoCAyLMKgwqAg MizCoMKgCj4gMCzCoMKgIDAswqDCoCAyLMKgwqAgMCzCoMKgIDAsIC8vIDAKPiArwqDCoMKgwqDC oMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAg MCzCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoAo+IDAswqDCoCAwLMKgwqAgMCzCoMKgIDAs wqDCoCAwLCAvLyAxCj4gK0BAIC0xNjIsMTUgKzE2NywxMyBAQCBzdHJ1Y3QgZ2xvYmFsc19zdHJ1 Y3Qgewo+ICvCoMKgwqDCoCB9Owo+ICsgCj4gKyAvLyBjbGFuZy1mb3JtYXQgb24KPiArLX07Cj4g Ky10eXBlZGVmIGdsb2JhbHNfc3RydWN0PD4gZ2xvYmFsczsKPiArIAo+ICstY29uc3RleHByIGlu bGluZSBib29sIGlzX3BsYWluX3N0cmluZ19jaGFyYWN0ZXIoY2hhciBjKSB7Cj4gKytpbmxpbmUg Ym9vbCBpc19wbGFpbl9zdHJpbmdfY2hhcmFjdGVyKGNoYXIgYykgewo+ICvCoMKgwqDCoCAvLyBy ZXR1cm4gYyA+PSAweDIwICYmIGMgPD0gMHg3ZiAmJiBjICE9IDB4MjIgJiYgYyAhPSAweDVjOwo+ ICvCoMKgwqDCoCByZXR1cm4gKGdsb2JhbHM6OnBhcnNlX2ZsYWdzW3N0YXRpY19jYXN0PHVuc2ln bmVkIGNoYXI+KGMpXSAmCj4gMSkgIT0gMDsKPiArIH0KPiArIAo+ICstY29uc3RleHByIGlubGlu ZSBib29sIGlzX3doaXRlc3BhY2UoY2hhciBjKSB7Cj4gKytpbmxpbmUgYm9vbCBpc193aGl0ZXNw YWNlKGNoYXIgYykgewo+ICvCoMKgwqDCoCAvLyByZXR1cm4gYyA9PSAnXHInIHx8IGMgPT0gJ1xu JyB8fCBjID09ICdcdCcgfHwgYyA9PSAnICc7Cj4gK8KgwqDCoMKgIHJldHVybiAoZ2xvYmFsczo6 cGFyc2VfZmxhZ3Nbc3RhdGljX2Nhc3Q8dW5zaWduZWQgY2hhcj4oYyldICYKPiAyKSAhPSAwOwo+ ICsgfQoK From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 07:48:28 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 11:48:29 +0000 Received: from localhost ([127.0.0.1]:42266 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUnE-00026y-Hx for submit@debbugs.gnu.org; Sun, 09 Oct 2022 07:48:28 -0400 Received: from mail-ej1-f68.google.com ([209.85.218.68]:35394) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUnD-00026k-Gu for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 07:48:27 -0400 Received: by mail-ej1-f68.google.com with SMTP id k2so19817531ejr.2 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 04:48:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=uRo7nM60uqS90EWaL1noVHRoEOltRJXDblX9PVUSjFU=; b=JJQJm5ytuUNK0+dpXIvHp5RUdfMns4galwj76zLdGDnPEA3XnCIygtRm9oK/5L+LC3 2xCiXaeAXlwXHmWQktnDItaSDE7c1Y2a0PpaPJGPnhYxbgRbhOCx8+p6F80+ZX+BPATV yrB3qj7WWDYWa0T1KhWMrhl23Zn39MdNhvGco1yuhZg4NMYJW3/duTaV9lau7MLGMoeG pxe509gt1fMM1DCrRYvdf7T9ZBLHHF0ErA9o4JQC8V7FQ/O1d2CQu7WicVa+4UEpdpfp MyAxDCnlbLANJLxD8Kjsw/tA0JMZIETd3puO+pHb2l0GscjbLSXNk9y0ar6gQj5J/Qbx dHHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=uRo7nM60uqS90EWaL1noVHRoEOltRJXDblX9PVUSjFU=; b=hKB0/xqmgkuK6IJWna3gQGvNw9jODFVlm7UmPemk1rrczgQfvudpUIBIN57fwmuvQ+ aGT2QmuD6wSznD54dKpOKssp8RI6ahsaF3BarxvElgILBQmjrggUHEhUJNXqUzkvmkfI gELsXcqIaT/y/AP6O1dOppBouwp5w3sJTqaOuSu8otB6pnQchGX1Fllp7SgGIjSRS4Zs HJVdlGzNANow4nd+E7NWDZxJuz9TABhr3gW+LJorficApM/QWFbUaMT3cmoQfF++kkFV iAWsaaxf6KFS9suK+Ox3Z0Ema/+Ahc/YlNzaTzXP4tHv57Y9p89neSGyTbZZy35yU3uL wN5g== X-Gm-Message-State: ACrzQf2bylzOrYXd1+FhWwuXdPlw18upVt7mz9kwZEx0RCnHZWhwgQbh 0fthRZ/8uvYyIJWzkJxT8pc= X-Google-Smtp-Source: AMsMyM5wDyYkGziH0yV2781RQXmlY/tkvdTe/UPMs+dTQGx5+Yz/f62IHtFEOyJp8YUGg0iXrJhG+Q== X-Received: by 2002:a17:907:1691:b0:78d:4051:9429 with SMTP id hc17-20020a170907169100b0078d40519429mr11204524ejc.721.1665316101622; Sun, 09 Oct 2022 04:48:21 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id w24-20020a056402071800b00458e73fe1c1sm5140162edx.8.2022.10.09.04.48.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 04:48:21 -0700 (PDT) Message-ID: <8fcccc1c84f81e5b7cd035e12c4bd9443163bc1b.camel@gmail.com> Subject: Re: [PATCH v2 04/13] gnu: Add tinydir. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 13:48:20 +0200 In-Reply-To: <20221007152148.32591-5-david.elsing@posteo.net> References: <20221007152148.32591-5-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAodGlueWRpcik6IE5ldyB2YXJpYWJsZS4K PiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jcHAuc2NtIHwgMjcgKysrKysrKysrKysrKysrKysrKysr KysrKysrCj4gwqAxIGZpbGUgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1n aXQgYS9nbnUvcGFja2FnZXMvY3BwLnNjbSBiL2dudS9wYWNrYWdlcy9jcHAuc2NtCj4gaW5kZXgg ZGNhMDI0NWRmNS4uZTk5ZmRjZWNkOCAxMDA2NDQKPiAtLS0gYS9nbnUvcGFja2FnZXMvY3BwLnNj bQo+ICsrKyBiL2dudS9wYWNrYWdlcy9jcHAuc2NtCj4gQEAgLTIwNjUsMyArMjA2NSwzMCBAQCAo ZGVmaW5lLXB1YmxpYyBzYWpzb24KPiDCoMKgwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXtz YWpzb259IGlzIGFuIGluLXBsYWNlIEpTT04gcGFyc2VyIHdpdGgKPiBzdXBwb3J0IGZvcgo+IMKg cGFyc2luZyB3aXRoIG9ubHkgYSBzaW5nbGUgbWVtb3J5IGFsbG9jYXRpb24uIikKPiDCoMKgwqDC oMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpleHBhdCkpKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIHRp bnlkaXIKPiArwqAgKHBhY2thZ2UKPiArwqDCoMKgIChuYW1lICJ0aW55ZGlyIikKPiArwqDCoMKg ICh2ZXJzaW9uICIxLjIuNSIpCj4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBnaXQtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHVybCAiaHR0cHM6Ly9naXRodWIuY29tL2N4b25nL3RpbnlkaXIiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IHZlcnNpb24p KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFt ZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2Cj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAKPiAiMW5wcmdkZng0aTh3emMxaWR3NmNoYW40ZmpmYTc1YjVsbDhrZ2hk YzBxMjI3OHBueTI1OSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAn KChndWl4IGJ1aWxkIHV0aWxzKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzbmlw cGV0ICcoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInRlc3RzL2NiZWhhdmUiKSkpKQo+ICvCoMKg wqAgKGJ1aWxkLXN5c3RlbSBjb3B5LWJ1aWxkLXN5c3RlbSkKPiArwqDCoMKgIChhcmd1bWVudHMK PiArwqDCoMKgwqAgKGxpc3QKPiArwqDCoMKgwqDCoCA7OyBUT0RPOiBUZXN0cyBjb250YWluIGEg cHJpdmF0ZSBmb3JrIG9mIGNiZWhhdmUgYW5kIGEgYnVuZGxlZAo+IGNvcHkgb2Ygcmx1dGlsCj4g K8KgwqDCoMKgwqAgIzppbnN0YWxsLXBsYW4KPiArwqDCoMKgwqDCoCAjficoKCJ0aW55ZGlyLmgi ICJpbmNsdWRlLyIpKSkpCj4gK8KgwqDCoCAoaG9tZS1wYWdlICJodHRwczovL2dpdGh1Yi5jb20v Y3hvbmcvdGlueWRpciIpCj4gK8KgwqDCoCAoc3lub3BzaXMgIkMgaGVhZGVyLW9ubHkgZGlyZWN0 b3J5IGFuZCBmaWxlIHJlYWRlciIpCkp1c3QgIkRpcmVjdG9yeSBhbmQgZmlsZSByZWFkZXIiLCB0 aG91Z2ggSSdtIG5vdCB0b28gc3VyZSB3aGV0aGVyIGl0CmFjdHVhbGx5IHJlYWRzIGZpbGVzLgo+ ICvCoMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXt0aW55ZGlyfSBpcyBhIGhlYWRlci1vbmx5IEMg bGlicmFyeSB0bwo+IHBvcnRhYmx5IHJlYWQKPiArZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIpClNp bmNlIGluIHRoaXMgY2FzZSAicG9ydGFibGUiIG1lYW5zICJ3b3JrcyBvbiB0aGUgTWljcm9zb2Z0 IE9TIGFuZApVbml4IiwgSSdtIHByZXR0eSBzdXJlIGl0J3MgYnV0IGEgYnV6endvcmQuCj4gK8Kg wqDCoCAobGljZW5zZSBsaWNlbnNlOmJzZC0yKSkpCgo= From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 07:54:20 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 11:54:20 +0000 Received: from localhost ([127.0.0.1]:42270 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUst-0002G8-D1 for submit@debbugs.gnu.org; Sun, 09 Oct 2022 07:54:20 -0400 Received: from mail-ej1-f66.google.com ([209.85.218.66]:39788) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUsq-0002Ft-8L for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 07:54:17 -0400 Received: by mail-ej1-f66.google.com with SMTP id b2so19813732eja.6 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 04:54:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=aaPpfuHfZsqBfc2wKn9JYwhBY5dpbIaNtSvJ50I9StA=; b=bh6QrAeT+Kx6eiL2XOyUdQoFQyqoATZ2S8x7e8R/Vp65s9ZlBP/2T2ZI/s+ZoZcjNk WTuCpfgvV5WzidV+dBUzHfj8Mgp9yrDlfSVX0tX1UcArTJ35P4b+lF3w5CT3Zgj/URXg Je/esQk33IGWVQBjr1CeBHq8H6o2ZNuK3IYSDZaikWqUYT/ny1O8Zv+LZuxW07gCyPxM XP/eugR6enxLqBNANtzdnTrE8vPreL7jrgT/sipJ8Kbtn2MPTiAcl4O+IOC8w5uGpfA1 RuP+YiLWXtsPAvyEGChddEHxAp7FnUAF4DdnNo8i818n/fWYikyIyWj5lfDqkQnI5tRh nSmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=aaPpfuHfZsqBfc2wKn9JYwhBY5dpbIaNtSvJ50I9StA=; b=M7GpS34NlaDDWuZnBROdlOSdGJW9ZSduLZeqToWu2l1W8wMua6tAPmG1bqvTPLylIh aek6F5flzI3Ewv+xMDLnmYQ7s/ymtf4fS3T8KOJRZgGr8Od3Bt3f2Eeavq9QhcVdwJO3 YC7Jr5PQto5fN840Ydr8JU+2UMCC4f3IPhKLYrqmPaXX+6d2bo2FlZBEKPqRKQtc+dBe Y9LLm2OkuQRS4SlTxawwlR81cp9fQi4g/D9O2NMYmB7zVsSmCWMZ0vDj9SnitaGV+dIQ WH54wjzcs/POA/bpK28WJHdNvyNA/J8uzNCh26Iue9t4WYqFcXuqKC0VGohZRVMB/bms 1WcA== X-Gm-Message-State: ACrzQf1HKs9L4CTPd00BnEbKDHugdwrfEBVUvK66Ql2LeJ3QoTFt+pIP T4FOIZ1//+QTKUS0yB/luy0= X-Google-Smtp-Source: AMsMyM6gfYbc/17xQilReTaKpJAdX704sFtZeJk9pR5Ku9dUxKNcgkBzExw8VYePPiQtEfd1bRx2UA== X-Received: by 2002:a17:907:e94:b0:782:f9d2:5301 with SMTP id ho20-20020a1709070e9400b00782f9d25301mr10768818ejc.393.1665316450232; Sun, 09 Oct 2022 04:54:10 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id j9-20020a17090623e900b0078a543e9301sm3786851ejg.200.2022.10.09.04.54.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 04:54:09 -0700 (PDT) Message-ID: <41a42d6bd81ec3a1c63d65286d97a419be25db72.camel@gmail.com> Subject: Re: [PATCH v2 06/13] gnu: Add gemmi. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 13:54:07 +0200 In-Reply-To: <20221007152148.32591-7-david.elsing@posteo.net> References: <20221007152148.32591-7-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSAoZ2VtbWkpOiBOZXcgdmFyaWFi bGUuCj4gLS0tCj4gwqBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMTE4ICsrKysrKysrKysrCj4gwqAuLi4vcGF0Y2hlcy9n ZW1taS1maXgtc2Fqc29uLXR5cGVzLnBhdGNowqDCoMKgwqDCoCB8wqAgMTEgKwo+IMKgLi4uL3Nh anNvbi1mb3ItZ2VtbWktYnVpbGQtd2l0aC1nY2MxMC5wYXRjaMKgwqAgfMKgIDQ1ICsrKysKPiDC oC4uLi9zYWpzb24tZm9yLWdlbW1pLW51bWJlcnMtYXMtc3RyaW5ncy5wYXRjaCB8IDE5NQo+ICsr KysrKysrKysrKysrKysrKwo+IMKgNCBmaWxlcyBjaGFuZ2VkLCAzNjkgaW5zZXJ0aW9ucygrKQo+ IMKgY3JlYXRlIG1vZGUgMTAwNjQ0IGdudS9wYWNrYWdlcy9wYXRjaGVzL2dlbW1pLWZpeC1zYWpz b24tdHlwZXMucGF0Y2gKPiDCoGNyZWF0ZSBtb2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hl cy9zYWpzb24tZm9yLWdlbW1pLWJ1aWxkLXdpdGgtCj4gZ2NjMTAucGF0Y2gKPiDCoGNyZWF0ZSBt b2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpzb24tZm9yLWdlbW1pLW51bWJlcnMt YXMtCj4gc3RyaW5ncy5wYXRjaAo+IAo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvY2hlbWlz dHJ5LnNjbSBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gaW5kZXggYzUxNzYxMGZlOC4u ZDhmMTYwOGEzYSAxMDA2NDQKPiAtLS0gYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ICsr KyBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gQEAgLTYsNiArNiw3IEBACj4gwqA7Ozsg Q29weXJpZ2h0IMKpIDIwMjAgQmrDtnJuIEjDtmZsaW5nCj4gPGJqb2Vybi5ob2VmbGluZ0Biam9l cm5ob2VmbGluZy5kZT4KPiDCoDs7OyBDb3B5cmlnaHQgwqkgMjAyMCBWaW5jZW50IExlZ29sbCA8 dmluY2VudC5sZWdvbGxAZ21haWwuY29tPgo+IMKgOzs7IENvcHlyaWdodCDCqSAyMDIxIFJpY2Fy ZG8gV3VybXVzIDxyZWthZG9AZWxlcGhseS5uZXQ+Cj4gKzs7OyBDb3B5cmlnaHQgwqkgMjAyMiBE YXZpZCBFbHNpbmcgPGRhdmlkLmVsc2luZ0Bwb3N0ZW8ubmV0Pgo+IMKgOzs7Cj4gwqA7OzsgVGhp cyBmaWxlIGlzIHBhcnQgb2YgR05VIEd1aXguCj4gwqA7OzsKPiBAQCAtMjMsNiArMjQsNyBAQAo+ IMKgOzs7IGFsb25nIHdpdGggR05VIEd1aXguwqAgSWYgbm90LCBzZWUKPiA8aHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLz4uCj4gwqAKPiDCoChkZWZpbmUtbW9kdWxlIChnbnUgcGFja2FnZXMg Y2hlbWlzdHJ5KQo+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggZ2V4cCkKPiDCoMKgICM6dXNlLW1v ZHVsZSAoZ3VpeCBwYWNrYWdlcykKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCB1dGlscykKPiDC oMKgICM6dXNlLW1vZHVsZSAoKGd1aXggbGljZW5zZXMpICM6cHJlZml4IGxpY2Vuc2U6KQo+IEBA IC0zNSw2ICszNyw3IEBAIChkZWZpbmUtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlbWlzdHJ5KQo+ IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYm9vc3QpCj4gwqDCoCAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBjaGVjaykKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IGNvbXByZXNzaW9uKQo+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjcHApCj4gwqDC oCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBkb2N1bWVudGF0aW9uKQo+IMKgwqAgIzp1c2Ut bW9kdWxlIChnbnUgcGFja2FnZXMgZm9udHV0aWxzKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgZ2wpCj4gQEAgLTUwLDggKzUzLDEwIEBAIChkZWZpbmUtbW9kdWxlIChnbnUgcGFj a2FnZXMgY2hlbWlzdHJ5KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgcXQpCj4g wqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzZXJpYWxpemF0aW9uKQo+IMKgwqAgIzp1 c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3BoaW54KQo+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBw YWNrYWdlcyBzdGIpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB4bWwpCj4gwqDC oCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIGNtYWtlKQo+ICvCoCAjOnVzZS1tb2R1 bGUgKGd1aXggYnVpbGQtc3lzdGVtIGNvcHkpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVp bGQtc3lzdGVtIGdudSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gcHl0 aG9uKSkKPiDCoAo+IEBAIC01NjYsMyArNTcxLDExNiBAQCAoZGVmaW5lLXB1YmxpYyBweXRob24t cHltb2wKPiDCoHVzZWQgdG8gcHJlcGFyZSBwdWJsaWNhdGlvbi1xdWFsaXR5IGZpZ3VyZXMsIHRv IHNoYXJlIGludGVyYWN0aXZlCj4gcmVzdWx0cyB3aXRoCj4gwqB5b3VyIGNvbGxlYWd1ZXMsIG9y IHRvIGdlbmVyYXRlIHByZS1yZW5kZXJlZCBhbmltYXRpb25zLiIpCj4gwqDCoMKgwqAgKGxpY2Vu c2UgbGljZW5zZTpic2QtMykpKQo+ICsKPiArKGRlZmluZS1wdWJsaWMgc2Fqc29uLWZvci1nZW1t aQo+ICvCoCAocGFja2FnZS9pbmhlcml0IHNhanNvbgo+ICvCoMKgwqAgKG5hbWUgInNhanNvbi1m b3ItZ2VtbWkiKQo+ICvCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChpbmhlcml0IChwYWNrYWdlLXNvdXJjZSBzYWpzb24pKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAocGF0Y2hlcyAoc2VhcmNoLXBhdGNoZXMKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAic2Fqc29uLWZvci1nZW1taS1udW1i ZXJzLWFzLXN0cmluZ3MucGF0Y2giCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgInNhanNvbi1mb3ItZ2VtbWktYnVpbGQtd2l0aC0KPiBnY2MxMC5wYXRj aCIpKSkpCj4gK8KgwqDCoCAoYXJndW1lbnRzCj4gK8KgwqDCoMKgIChzdWJzdGl0dXRlLWtleXdv cmQtYXJndW1lbnRzIChwYWNrYWdlLWFyZ3VtZW50cyBzYWpzb24pCj4gK8KgwqDCoMKgwqDCoCAo KCM6dGVzdHM/IF8gI2YpICNmKQpEb24ndCBmb3JnZXQgdGhlIGNvbW1lbnQgYXMgdG8gd2h5IHRo ZXkncmUgZGlzYWJsZWQuCj4gK8KgwqDCoMKgwqDCoCAoKCM6cGhhc2VzIHBoYXNlcykKPiArwqDC oMKgwqDCoMKgwqAgI34obW9kaWZ5LXBoYXNlcyAjJHBoYXNlcwo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChkZWxldGUgJ2J1aWxkKSkpKSkpKQpXaHkgaXMgdGhlIGJ1aWxkIGRlbGV0ZWQ/CgpT cGxpdCBoZXJlLgo+ICsoZGVmaW5lLXB1YmxpYyBnZW1taQo+ICvCoCAocGFja2FnZQo+ICvCoMKg wqAgKG5hbWUgImdlbW1pIikKPiArwqDCoMKgICh2ZXJzaW9uICIwLjUuNyIpCj4gK8KgwqDCoCAo c291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBnaXQt ZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1yZWZlcmVuY2UK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybCAiaHR0cHM6Ly9n aXRodWIuY29tL3Byb2plY3QtZ2VtbWkvZ2VtbWkiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2ZXJzaW9uKSkpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5h bWUgdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoAo+ICIwMGttNXE3MjZic2xydzd4YmZ3YjNmM21yc2sxOXFiaW1mbmwzaHZyNHdp MXkzejhpMThhIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChwYXRjaGVzCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNlYXJjaC1wYXRjaGVzICJnZW1taS1maXgtc2Fq c29uLXR5cGVzLnBhdGNoIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVz ICcoKGd1aXggYnVpbGQgdXRpbHMpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNu aXBwZXQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2luCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5Cj4gImlu Y2x1ZGUvZ2VtbWkvdGhpcmRfcGFydHkiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAidGhpcmRfcGFydHkiKSkpKSkKPiArwqDC oMKgIChvdXRwdXRzICcoIm91dCIgImJpbiIgInB5dGhvbiIpKQo+ICvCoMKgwqAgKGJ1aWxkLXN5 c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCj4gK8KgwqDCoCAobmF0aXZlLWlucHV0cwo+ICvCoMKg wqDCoCAobGlzdCBmYXN0LWZsb2F0Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIG9wdGlvbnBhcnNl cgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBwZWd0bAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBw b2NrZXRmZnQtY3BwCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHB5YmluZDExCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgIHNhanNvbi1mb3ItZ2VtbWkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3Ri LXNwcmludGYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGlueWRpcikpCj4gK8KgwqDCoCAoaW5w dXRzIChsaXN0IHB5dGhvbiB6bGliKSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqAg KGxpc3QKPiArwqDCoMKgwqDCoCAjOmNvbmZpZ3VyZS1mbGFncwo+ICvCoMKgwqDCoMKgICN+KGxl dCogKChweXRob24tbGliCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5n LWFwcGVuZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG91dHB1dDpweXRo b24gIi9saWIvcHl0aG9uIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJCh2 ZXJzaW9uLW1ham9yK21pbm9yIChwYWNrYWdlLXZlcnNpb24gcHl0aG9uKSkKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi9zaXRlLXBhY2thZ2VzIikpKQpOb3RlIHRoYXQgcHl0 aG9uLWJ1aWxkLXN5c3RlbSBoYXMgYSAoc2l0ZS1wYWNrYWdlcykgcHJvY2VkdXJlLiAgV3JpdGlu Zwp0aGUgYm9pbGVycGxhdGUgdG8gaW5jbHVkZSBpdCBpbiB0aGUgYnVpbGQgc2hvdWxkbid0IGJl IG11Y2ggd29yc2UgaW4KdGVybXMgb2YgbGluZXMgdGhhbiB3aGF0IHlvdSdyZSBkb2luZyBoZXJl Lgo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGxpc3QgIi1EVVNFX1BZVEhPTj1PTiIKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kICItRFBZVEhPTl9JTlNUQUxM X0RJUj0iIHB5dGhvbi1saWIpKSkKPiArwqDCoMKgwqDCoCAjOnBoYXNlcwo+ICvCoMKgwqDCoMKg ICN+KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwo+ICvCoMKgwqDCoMKgwqDCoMKgwqAg KGFkZC1hZnRlciAndW5wYWNrICdwYXRjaC1pbmNsdWRlcwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSog ImluY2x1ZGUvZ2VtbWkvc3ByaW50Zi5ocHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoKCI8c3RiL3N0Yl9zcHJpbnRmLmg+IikgIjxzdGJfc3ByaW50Zi5oPiIpKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvZGlyd2Fs ay5ocHAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJcInRoaXJkX3BhcnR5 L3RpbnlkaXIuaFwiIikgIjx0aW55ZGlyLmg+IikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzdWJzdGl0dXRlKiAiaW5jbHVkZS9nZW1taS9jaWYuaHBwIgo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGlyZF9wYXJ0eS90YW8vcGVndGwuaHBwXCIiKQo+ICI8 dGFvL3BlZ3RsLmhwcD4iKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1 dGUqICJpbmNsdWRlL2dlbW1pL2pzb24uaHBwIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKCgiXCJ0aGlyZF9wYXJ0eS9zYWpzb24uaFwiIikgIjxzYWpzb24uaD4iKSkKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJweXRob24vZ2VtbWkuY3BwIgo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJnZW1taS90aGlyZF9wYXJ0eS90 YW8vcGVndGwvcGFyc2VfZXJyb3IuaHBwXCIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAiPHRhby9wZWd0bC9wYXJzZV9lcnJvci5ocHA+IikpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAnKCJpbmNsdWRlL2dlbW1pL2F0b2YuaHBwIgo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAi aW5jbHVkZS9nZW1taS9udW1iLmhwcCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoKCJcInRoaXJkX3BhcnR5L2Zhc3RfZmxvYXQuaFwiIikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIjxmYXN0X2Zsb2F0L2Zhc3RfZmxvYXQuaD4iKSkKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJpbmNsdWRlL2dlbW1pL2ZvdXJpZXIuaHBw Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGlyZF9wYXJ0eS9wb2Nr ZXRmZnRfaGRyb25seS5oXCIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAi PHBvY2tldGZmdF9oZHJvbmx5Lmg+IikpKSkKSSdkIGNvbGxlY3QgYWxsIHRoZSBmaWxlcyBpbnRv IGEgKGxpc3QgLi4uKSBhbmQgdGhlbiB3cml0ZSBvdXQgdGhlCnN1YnN0aXR1dGVzLgoKPiArwqDC oMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3BhdGNoLWluY2x1ZGVzICdwYXRjaC1jaWYKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHN1YnN0aXR1dGUqICJpbmNsdWRlL2dlbW1pL2NpZi5ocHAiCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoKChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAiXi4qdXNpbmcgYW5hbHl6ZV90ID0gcGVndGw6OmFuYWx5c2lz OjpnZW5lcmljIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIjxwZWd0 bDo6YW5hbHlzaXM6OnJ1bGVfdHlwZTo6QU5ZPjsuKiQiKSkgIiIpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoKCJUQU9DUFBfUEVHVExfIikgIlRBT19QRUdUTF8iKSkpKQpVaG0u Li4gSSB0aGluayBJJ2QgcHJlZmVyIGEgcGF0Y2ggZm9yIHRoaXMgb25lLgo+ICvCoMKgwqDCoMKg wqDCoMKgwqAgKGFkZC1hZnRlciAndW5wYWNrICdjaGFuZ2UtYmluLXByZWZpeAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3Vic3RpdHV0ZSogIkNNYWtlTGlzdHMudHh0Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKCgiaW5zdGFsbFxcKFRBUkdFVFMgcHJvZ3JhbSBERVNUSU5BVElPTiBiaW5cXCkiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJpbnN0YWxsKFRBUkdFVFMgcHJvZ3JhbSBE RVNUSU5BVElPTiAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyRvdXRw dXQ6YmluICIvYmluKSIpKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKHJlcGxhY2UgJ2NoZWNr Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSogKCM6a2V5IHRlc3RzPyAjOmFsbG93 LW90aGVyLWtleXMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh3aGVuIHRlc3RzPwo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHdpdGgtZGlyZWN0b3J5LWV4Y3Vyc2lv biAiLi4vc291cmNlIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZXRl bnYgIlBZVEhPTlBBVEgiICIuLi9idWlsZCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGludm9rZSAicHl0aG9uMyIgIi1tIiAidW5pdHRlc3QiICJkaXNjb3ZlciIgIi12 Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAi LXMiICJ0ZXN0cyIpKSkpKSkpKQo+ICvCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9nZW1taS5y ZWFkdGhlZG9jcy5pby9lbi9sYXRlc3QvIikKPiArwqDCoMKgIChzeW5vcHNpcyAiTWFjcm9tb2xl Y3VsYXIgY3J5c3RhbGxvZ3JhcGh5IGxpYnJhcnkgYW5kCj4gdXRpbGl0aWVzIikKPiArwqDCoMKg IChkZXNjcmlwdGlvbiAiR0VNTUkgaXMgYSBDKysgbGlicmFyeSBmb3IgbWFjcm9tb2xlY3VsYXIK PiBjcnlzdGFsbG9ncmFwaHkuCj4gK0l0IGNhbiBiZSB1c2VkIGZvciB3b3JraW5nIHdpdGgKPiAr QGVudW1lcmF0ZQo+ICtAaXRlbSBtYWNyb21vbGVjdWxhciBtb2RlbHMgKGNvbnRlbnQgb2YgUERC LCBQREJ4L21tQ0lGIGFuZCBtbUpTT04KPiBmaWxlcyksCj4gK0BpdGVtIHJlZmluZW1lbnQgcmVz dHJhaW50cyAoQ0lGIGZpbGVzKSwKPiArQGl0ZW0gcmVmbGVjdGlvbiBkYXRhIChNVFogYW5kIG1t Q0lGIGZvcm1hdHMpLAo+ICtAaXRlbSBkYXRhIG9uIGEgM0QgZ3JpZCAoZWxlY3Ryb24gZGVuc2l0 eSBtYXBzLCBtYXNrcywgTVJDL0NDUDQKPiBmb3JtYXQpCj4gK0BpdGVtIGNyeXN0YWxsb2dyYXBo aWMgc3ltbWV0cnkuCj4gK0BlbmQgZW51bWVyYXRlIikKPiArwqDCoMKgIChsaWNlbnNlIGxpY2Vu c2U6bXBsMi4wKSkpCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9wYXRjaGVzL2dlbW1pLWZp eC1zYWpzb24tdHlwZXMucGF0Y2gKPiBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL2dlbW1pLWZpeC1z YWpzb24tdHlwZXMucGF0Y2gKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAw MDAuLjk2MzNkZGFjOGIKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZ251L3BhY2thZ2VzL3BhdGNo ZXMvZ2VtbWktZml4LXNhanNvbi10eXBlcy5wYXRjaAo+IEBAIC0wLDAgKzEsMTEgQEAKPiArZGlm ZiAtdXIgYS9pbmNsdWRlL2dlbW1pL2pzb24uaHBwIGIvaW5jbHVkZS9nZW1taS9qc29uLmhwcAo+ ICstLS0gYS9pbmNsdWRlL2dlbW1pL2pzb24uaHBwCj4gKysrKyBiL2luY2x1ZGUvZ2VtbWkvanNv bi5ocHAKPiArQEAgLTM4LDYgKzM4LDcgQEAKPiArIAo+ICsgaW5saW5lIHN0ZDo6c3RyaW5nIGFz X2NpZl92YWx1ZShjb25zdCBzYWpzb246OnZhbHVlJiB2YWwpIHsKPiArwqDCoCBzd2l0Y2ggKHZh bC5nZXRfdHlwZSgpKSB7Cj4gKyvCoMKgwqAgY2FzZSBzYWpzb246OlRZUEVfSU5URUdFUjoKPiAr wqDCoMKgwqAgY2FzZSBzYWpzb246OlRZUEVfRE9VQkxFOgo+ICvCoMKgwqDCoMKgwqAgcmV0dXJu IHZhbC5hc19zdHJpbmcoKTsKPiArwqDCoMKgwqAgY2FzZSBzYWpzb246OlRZUEVfTlVMTDoKPiBk aWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWZvci1nZW1taS1idWlsZC13 aXRoLQo+IGdjYzEwLnBhdGNoIGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWZvci1nZW1t aS1idWlsZC13aXRoLQo+IGdjYzEwLnBhdGNoCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRl eCAwMDAwMDAwMDAwLi44Nzg3MDZkYzc5Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2dudS9wYWNr YWdlcy9wYXRjaGVzL3NhanNvbi1mb3ItZ2VtbWktYnVpbGQtd2l0aC1nY2MxMC5wYXRjaAo+IEBA IC0wLDAgKzEsNDUgQEAKPiArVGhpcyBwYXRjaCBpcyBmcm9tIHRoZSB1cHN0cmVhbSBwdWxsIHJl cXVlc3QKPiAraHR0cHM6Ly9naXRodWIuY29tL2NoYWRhdXN0aW4vc2Fqc29uL3B1bGwvNTQuCj4g K0l0IGZpeGVzIGxpbmtpbmcgd2l0aCBHQ0MuCj4gKwo+ICtkaWZmIC0tZ2l0IGEvaW5jbHVkZS9z YWpzb24uaCBiL2luY2x1ZGUvc2Fqc29uLmgKPiAraW5kZXggOGI0ZTA1YS4uMWJkMDQ1YiAxMDA2 NDQKPiArLS0tIGEvaW5jbHVkZS9zYWpzb24uaAo+ICsrKysgYi9pbmNsdWRlL3NhanNvbi5oCj4g K0BAIC0xMzgsMTIgKzEzOCwxNyBAQCBjb25zdGV4cHIgaW5saW5lIHNpemVfdCBtYWtlX2VsZW1l bnQodGFnIHQsCj4gc2l6ZV90IHZhbHVlKSB7Cj4gKyAvLyBoZWFkZXIuIFRoaXMgdHJpY2sgY291 cnRlc3kgb2YgUmljaCBHZWxkcmVpY2gncyBQdXJwbGUgSlNPTgo+IHBhcnNlci4KPiArIHRlbXBs YXRlIDx0eXBlbmFtZSB1bnVzZWQgPSB2b2lkPgo+ICsgc3RydWN0IGdsb2JhbHNfc3RydWN0IHsK PiArK8KgwqDCoCBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBwYXJzZV9mbGFnc1syNTZdOwo+ ICsrfTsKPiArK3R5cGVkZWYgZ2xvYmFsc19zdHJ1Y3Q8PiBnbG9iYWxzOwo+ICsrCj4gKyAvLyBj bGFuZy1mb3JtYXQgb2ZmCj4gKyAKPiArwqDCoMKgwqAgLy8gYml0IDAgKDEpIC0gc2V0IGlmOiBw bGFpbiBBU0NJSSBzdHJpbmcgY2hhcmFjdGVyCj4gK8KgwqDCoMKgIC8vIGJpdCAxICgyKSAtIHNl dCBpZjogd2hpdGVzcGFjZQo+ICvCoMKgwqDCoCAvLyBiaXQgNCAoMHgxMCkgLSBzZXQgaWY6IDAt OSBlIEUgLgo+ICstwqDCoMKgIGNvbnN0ZXhwciBzdGF0aWMgY29uc3QgdWludDhfdCBwYXJzZV9m bGFnc1syNTZdID0gewo+ICsrwqDCoMKgIHRlbXBsYXRlIDx0eXBlbmFtZSB1bnVzZWQ+Cj4gKyvC oMKgwqAgY29uc3QgdW5zaWduZWQgY2hhciBnbG9iYWxzX3N0cnVjdDx1bnVzZWQ+OjpwYXJzZV9m bGFnc1syNTZdID0KPiB7Cj4gK8KgwqDCoMKgwqAgLy8gMMKgwqDCoCAxwqDCoMKgIDLCoMKgwqAg M8KgwqDCoCA0wqDCoMKgIDXCoMKgwqAgNsKgwqDCoCA3wqDCoMKgwqDCoCA4wqDCoMKgIDnCoMKg wqAgQcKgwqDCoAo+IELCoMKgwqAgQ8KgwqDCoCBEwqDCoMKgIEXCoMKgwqAgRgo+ICvCoMKgwqDC oMKgwqDCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDC oCAwLMKgwqDCoMKgIDAswqDCoCAyLMKgwqAgMizCoMKgCj4gMCzCoMKgIDAswqDCoCAyLMKgwqAg MCzCoMKgIDAsIC8vIDAKPiArwqDCoMKgwqDCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAw LMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDC oAo+IDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLCAvLyAxCj4gK0BAIC0xNjIsMTUgKzE2 NywxMyBAQCBzdHJ1Y3QgZ2xvYmFsc19zdHJ1Y3Qgewo+ICvCoMKgwqDCoCB9Owo+ICsgCj4gKyAv LyBjbGFuZy1mb3JtYXQgb24KPiArLX07Cj4gKy10eXBlZGVmIGdsb2JhbHNfc3RydWN0PD4gZ2xv YmFsczsKPiArIAo+ICstY29uc3RleHByIGlubGluZSBib29sIGlzX3BsYWluX3N0cmluZ19jaGFy YWN0ZXIoY2hhciBjKSB7Cj4gKytpbmxpbmUgYm9vbCBpc19wbGFpbl9zdHJpbmdfY2hhcmFjdGVy KGNoYXIgYykgewo+ICvCoMKgwqDCoCAvLyByZXR1cm4gYyA+PSAweDIwICYmIGMgPD0gMHg3ZiAm JiBjICE9IDB4MjIgJiYgYyAhPSAweDVjOwo+ICvCoMKgwqDCoCByZXR1cm4gKGdsb2JhbHM6OnBh cnNlX2ZsYWdzW3N0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGMpXSAmCj4gMSkgIT0gMDsKPiAr IH0KPiArIAo+ICstY29uc3RleHByIGlubGluZSBib29sIGlzX3doaXRlc3BhY2UoY2hhciBjKSB7 Cj4gKytpbmxpbmUgYm9vbCBpc193aGl0ZXNwYWNlKGNoYXIgYykgewo+ICvCoMKgwqDCoCAvLyBy ZXR1cm4gYyA9PSAnXHInIHx8IGMgPT0gJ1xuJyB8fCBjID09ICdcdCcgfHwgYyA9PSAnICc7Cj4g K8KgwqDCoMKgIHJldHVybiAoZ2xvYmFsczo6cGFyc2VfZmxhZ3Nbc3RhdGljX2Nhc3Q8dW5zaWdu ZWQgY2hhcj4oYyldICYKPiAyKSAhPSAwOwo+ICsgfQo+IGRpZmYgLS1naXQgYS9nbnUvcGFja2Fn ZXMvcGF0Y2hlcy9zYWpzb24tZm9yLWdlbW1pLW51bWJlcnMtYXMtCj4gc3RyaW5ncy5wYXRjaCBi L2dudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNvbi1mb3ItZ2VtbWktbnVtYmVycy1hcy0KPiBzdHJp bmdzLnBhdGNoCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwLi42ZjQ3 NmI4NTgzCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL3NhanNv bi1mb3ItZ2VtbWktbnVtYmVycy1hcy1zdHJpbmdzLnBhdGNoCj4gQEAgLTAsMCArMSwxOTUgQEAK PiArUGF0Y2ggZm9yIGdlbW1pOiBLZWVwIG51bWJlcnMgaW4gSlNPTiBmaWxlIGFzIHN0cmluZ3Mu Cj4gKwo+ICtBZGFwdGVkIGZyb20gdGhpcyBjb21taXQgb2YgdGhlIGJ1bmRsZWQgZm9yayBvZiBz YWpzb24gaW4gZ2VtbWk6Cj4gKwo+IGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZWN0LWdlbW1pL2dl bW1pL2NvbW1pdC9mY2NiY2E0ZjYwNDAzNjRiYTcwODYxM2UKPiAxNDI5YzIyNTE4NzIyNDBkCj4g Kwo+ICtkaWZmIC11ciBhL2luY2x1ZGUvc2Fqc29uLmggYi9pbmNsdWRlL3NhanNvbi5oCj4gKy0t LSBhL2luY2x1ZGUvc2Fqc29uLmgKPiArKysrIGIvaW5jbHVkZS9zYWpzb24uaAo+ICtAQCAtNDEx LDQzICs0MTEsNiBAQAo+ICsgfTsKPiArIH0gLy8gbmFtZXNwYWNlIGludGVybmFsCj4gKyAKPiAr LW5hbWVzcGFjZSBpbnRlZ2VyX3N0b3JhZ2Ugewo+ICstZW51bSB7IHdvcmRfbGVuZ3RoID0gMSB9 Owo+ICstCj4gKy1pbmxpbmUgaW50IGxvYWQoY29uc3Qgc2l6ZV90KiBsb2NhdGlvbikgewo+ICst wqDCoMKgIGludCB2YWx1ZTsKPiArLcKgwqDCoCBtZW1jcHkoJnZhbHVlLCBsb2NhdGlvbiwgc2l6 ZW9mKHZhbHVlKSk7Cj4gKy3CoMKgwqAgcmV0dXJuIHZhbHVlOwo+ICstfQo+ICstCj4gKy1pbmxp bmUgdm9pZCBzdG9yZShzaXplX3QqIGxvY2F0aW9uLCBpbnQgdmFsdWUpIHsKPiArLcKgwqDCoCAv LyBOT1RFOiBNb3N0IG1vZGVybiBjb21waWxlcnMgb3B0aW1pemUgYXdheSB0aGlzIGNvbnN0YW50 LXNpemUKPiArLcKgwqDCoCAvLyBtZW1jcHkgaW50byBhIHNpbmdsZSBpbnN0cnVjdGlvbi4gSWYg YW55IGRvbid0LCBhbmQgdHJlYXQKPiArLcKgwqDCoCAvLyBwdW5uaW5nIHRocm91Z2ggYSB1bmlv biBhcyBsZWdhbCwgdGhleSBjYW4gYmUgc3BlY2lhbC1jYXNlZC4KPiArLcKgwqDCoCBzdGF0aWNf YXNzZXJ0KAo+ICstwqDCoMKgwqDCoMKgwqAgc2l6ZW9mKHZhbHVlKSA8PSBzaXplb2YoKmxvY2F0 aW9uKSwKPiArLcKgwqDCoMKgwqDCoMKgICJzaXplX3QgbXVzdCBub3QgYmUgc21hbGxlciB0aGFu IGludCIpOwo+ICstwqDCoMKgIG1lbWNweShsb2NhdGlvbiwgJnZhbHVlLCBzaXplb2YodmFsdWUp KTsKPiArLX0KPiArLX0gLy8gbmFtZXNwYWNlIGludGVnZXJfc3RvcmFnZQo+ICstCj4gKy1uYW1l c3BhY2UgZG91YmxlX3N0b3JhZ2Ugewo+ICstZW51bSB7IHdvcmRfbGVuZ3RoID0gc2l6ZW9mKGRv dWJsZSkgLyBzaXplb2Yoc2l6ZV90KSB9Owo+ICstCj4gKy1pbmxpbmUgZG91YmxlIGxvYWQoY29u c3Qgc2l6ZV90KiBsb2NhdGlvbikgewo+ICstwqDCoMKgIGRvdWJsZSB2YWx1ZTsKPiArLcKgwqDC oCBtZW1jcHkoJnZhbHVlLCBsb2NhdGlvbiwgc2l6ZW9mKGRvdWJsZSkpOwo+ICstwqDCoMKgIHJl dHVybiB2YWx1ZTsKPiArLX0KPiArLQo+ICstaW5saW5lIHZvaWQgc3RvcmUoc2l6ZV90KiBsb2Nh dGlvbiwgZG91YmxlIHZhbHVlKSB7Cj4gKy3CoMKgwqAgLy8gTk9URTogTW9zdCBtb2Rlcm4gY29t cGlsZXJzIG9wdGltaXplIGF3YXkgdGhpcyBjb25zdGFudC1zaXplCj4gKy3CoMKgwqAgLy8gbWVt Y3B5IGludG8gYSBzaW5nbGUgaW5zdHJ1Y3Rpb24uIElmIGFueSBkb24ndCwgYW5kIHRyZWF0Cj4g Ky3CoMKgwqAgLy8gcHVubmluZyB0aHJvdWdoIGEgdW5pb24gYXMgbGVnYWwsIHRoZXkgY2FuIGJl IHNwZWNpYWwtY2FzZWQuCj4gKy3CoMKgwqAgbWVtY3B5KGxvY2F0aW9uLCAmdmFsdWUsIHNpemVv Zihkb3VibGUpKTsKPiArLX0KPiArLX0gLy8gbmFtZXNwYWNlIGRvdWJsZV9zdG9yYWdlCj4gKy0K PiArIC8vLyBSZXByZXNlbnRzIGEgSlNPTiB2YWx1ZS7CoCBGaXJzdCwgY2FsbCBnZXRfdHlwZSgp IHRvIGNoZWNrIGl0cwo+IHR5cGUsCj4gKyAvLy8gd2hpY2ggZGV0ZXJtaW5lcyB3aGljaCBtZXRo b2RzIGFyZSBhdmFpbGFibGUuCj4gKyAvLy8KPiArQEAgLTU4NSw3MCArNTQ4LDEwIEBACj4gK8Kg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGxlbmd0aDsKPiArwqDCoMKgwqAgfQo+ICsgCj4gKy3CoMKg wqAgLy8vIElmIGEgbnVtZXJpYyB2YWx1ZSB3YXMgcGFyc2VkIGFzIGEgMzItYml0IGludGVnZXIs IHJldHVybnMKPiBpdC4KPiArLcKgwqDCoCAvLy8gT25seSBsZWdhbCBpZiBnZXRfdHlwZSgpIGlz IFRZUEVfSU5URUdFUi4KPiArLcKgwqDCoCBpbnQgZ2V0X2ludGVnZXJfdmFsdWUoKSBjb25zdCB7 Cj4gKy3CoMKgwqDCoMKgwqDCoCBhc3NlcnRfdGFnKHRhZzo6aW50ZWdlcik7Cj4gKy3CoMKgwqDC oMKgwqDCoCByZXR1cm4gaW50ZWdlcl9zdG9yYWdlOjpsb2FkKHBheWxvYWQpOwo+ICstwqDCoMKg IH0KPiArLQo+ICstwqDCoMKgIC8vLyBJZiBhIG51bWVyaWMgdmFsdWUgd2FzIHBhcnNlZCBhcyBh IGRvdWJsZSwgcmV0dXJucyBpdC4KPiArLcKgwqDCoCAvLy8gT25seSBsZWdhbCBpZiBnZXRfdHlw ZSgpIGlzIFRZUEVfRE9VQkxFLgo+ICstwqDCoMKgIGRvdWJsZSBnZXRfZG91YmxlX3ZhbHVlKCkg Y29uc3Qgewo+ICstwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZyh0YWc6OmRvdWJsZV8pOwo+ICst wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGRvdWJsZV9zdG9yYWdlOjpsb2FkKHBheWxvYWQpOwo+ICst wqDCoMKgIH0KPiArLQo+ICstwqDCoMKgIC8vLyBSZXR1cm5zIGEgbnVtZXJpYyB2YWx1ZSBhcyBh IGRvdWJsZS1wcmVjaXNpb24gZmxvYXQuCj4gKy3CoMKgwqAgLy8vIE9ubHkgbGVnYWwgaWYgZ2V0 X3R5cGUoKSBpcyBUWVBFX0lOVEVHRVIgb3IgVFlQRV9ET1VCTEUuCj4gKy3CoMKgwqAgZG91Ymxl IGdldF9udW1iZXJfdmFsdWUoKSBjb25zdCB7Cj4gKy3CoMKgwqDCoMKgwqDCoCBhc3NlcnRfdGFn XzIodGFnOjppbnRlZ2VyLCB0YWc6OmRvdWJsZV8pOwo+ICstwqDCoMKgwqDCoMKgwqAgaWYgKHZh bHVlX3RhZyA9PSB0YWc6OmludGVnZXIpIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0 dXJuIGdldF9pbnRlZ2VyX3ZhbHVlKCk7Cj4gKy3CoMKgwqDCoMKgwqDCoCB9IGVsc2Ugewo+ICst wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gZ2V0X2RvdWJsZV92YWx1ZSgpOwo+ICstwqDC oMKgwqDCoMKgwqAgfQo+ICstwqDCoMKgIH0KPiArLQo+ICstwqDCoMKgIC8vLyBSZXR1cm5zIHRy dWUgYW5kIHdyaXRlcyB0byB0aGUgb3V0cHV0IGFyZ3VtZW50IGlmIHRoZQo+IG51bWVyaWMgdmFs dWUKPiArLcKgwqDCoCAvLy8gZml0cyBpbiBhIDUzLWJpdCBpbnRlZ2VyLsKgIFRoaXMgaXMgdXNl ZnVsIGZvciB0aW1lc3RhbXBzCj4gYW5kIG90aGVyCj4gKy3CoMKgwqAgLy8vIHNpdHVhdGlvbnMg d2hlcmUgaW50ZWdyYWwgdmFsdWVzIHdpdGggZ3JlYXRlciB0aGFuIDMyLWJpdAo+IHByZWNpc2lv bgo+ICstwqDCoMKgIC8vLyBhcmUgdXNlZCwgYXMgNjQtYml0IHZhbHVlcyBhcmUgbm90IHVuZGVy c3Rvb2QgYnkgYWxsIEpTT04KPiArLcKgwqDCoCAvLy8gaW1wbGVtZW50YXRpb25zIG9yIGxhbmd1 YWdlcy4KPiArLcKgwqDCoCAvLy8gUmV0dXJucyBmYWxzZSBpZiB0aGUgdmFsdWUgaXMgbm90IGFu IGludGVnZXIgb3Igbm90IGluCj4gcmFuZ2UuCj4gKy3CoMKgwqAgLy8vIE9ubHkgbGVnYWwgaWYg Z2V0X3R5cGUoKSBpcyBUWVBFX0lOVEVHRVIgb3IgVFlQRV9ET1VCTEUuCj4gKy3CoMKgwqAgYm9v bCBnZXRfaW50NTNfdmFsdWUoaW50NjRfdCogb3V0KSBjb25zdCB7Cj4gKy3CoMKgwqDCoMKgwqDC oCAvLyBNYWtlIHN1cmUgdGhlIG91dHB1dCB2YXJpYWJsZSBpcyBhbHdheXMgZGVmaW5lZCB0byBh dm9pZAo+IGFueQo+ICstwqDCoMKgwqDCoMKgwqAgLy8gcG9zc2libGUgc2l0dWF0aW9uIGxpa2UK PiArLcKgwqDCoMKgwqDCoMKgIC8vCj4gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vY2hhZGF1c3Rp bi8yYzI0OWNiODUwNjE5ZGRlYzA1YjIzY2E0MmNmN2ExOAo+ICstwqDCoMKgwqDCoMKgwqAgKm91 dCA9IDA7Cj4gKy0KPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWdfMih0YWc6OmludGVnZXIs IHRhZzo6ZG91YmxlXyk7Cj4gKy3CoMKgwqDCoMKgwqDCoCBzd2l0Y2ggKHZhbHVlX3RhZykgewo+ ICstwqDCoMKgwqDCoMKgwqAgY2FzZSB0YWc6OmludGVnZXI6Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgICpvdXQgPSBnZXRfaW50ZWdlcl92YWx1ZSgpOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCByZXR1cm4gdHJ1ZTsKPiArLcKgwqDCoMKgwqDCoMKgIGNhc2UgdGFnOjpkb3VibGVfOiB7 Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRvdWJsZSB2ID0gZ2V0X2RvdWJsZV92YWx1ZSgp Owo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAodiA8IC0oMUxMIDw8IDUzKSB8fCB2ID4g KDFMTCA8PCA1MykpIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4g ZmFsc2U7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiArLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgaW50NjRfdCBhc19pbnQgPSBzdGF0aWNfY2FzdDxpbnQ2NF90Pih2KTsKPiArLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgaWYgKGFzX2ludCAhPSB2KSB7Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIGZhbHNlOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9 Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgICpvdXQgPSBhc19pbnQ7Cj4gKy3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHJldHVybiB0cnVlOwo+ICstwqDCoMKgwqDCoMKgwqAgfQo+ICstwqDCoMKg wqDCoMKgwqAgZGVmYXVsdDoKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIGZhbHNl Owo+ICstwqDCoMKgwqDCoMKgwqAgfQo+ICstwqDCoMKgIH0KPiArLQo+ICvCoMKgwqDCoCAvLy8g UmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSBzdHJpbmcuCj4gK8KgwqDCoMKgIC8vLyBPbmx5IGxl Z2FsIGlmIGdldF90eXBlKCkgaXMgVFlQRV9TVFJJTkcuCj4gK8KgwqDCoMKgIHNpemVfdCBnZXRf c3RyaW5nX2xlbmd0aCgpIGNvbnN0IHsKPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWcodGFn OjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5nLCB0 YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHBh eWxvYWRbMV0gLSBwYXlsb2FkWzBdOwo+ICvCoMKgwqDCoCB9Cj4gKyAKPiArQEAgLTY1OSw3ICs1 NjIsNyBAQAo+ICvCoMKgwqDCoCAvLy8gZW1iZWRkZWQgTlVMcy4KPiArwqDCoMKgwqAgLy8vIE9u bHkgbGVnYWwgaWYgZ2V0X3R5cGUoKSBpcyBUWVBFX1NUUklORy4KPiArwqDCoMKgwqAgY29uc3Qg Y2hhciogYXNfY3N0cmluZygpIGNvbnN0IHsKPiArLcKgwqDCoMKgwqDCoMKgIGFzc2VydF90YWco dGFnOjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAgYXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5n LCB0YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJu IHRleHQgKyBwYXlsb2FkWzBdOwo+ICvCoMKgwqDCoCB9Cj4gKyAKPiArQEAgLTY2Nyw3ICs1NzAs NyBAQAo+ICvCoMKgwqDCoCAvLy8gUmV0dXJucyBhIHN0cmluZydzIHZhbHVlIGFzIGEgc3RkOjpz dHJpbmcuCj4gK8KgwqDCoMKgIC8vLyBPbmx5IGxlZ2FsIGlmIGdldF90eXBlKCkgaXMgVFlQRV9T VFJJTkcuCj4gK8KgwqDCoMKgIHN0ZDo6c3RyaW5nIGFzX3N0cmluZygpIGNvbnN0IHsKPiArLcKg wqDCoMKgwqDCoMKgIGFzc2VydF90YWcodGFnOjpzdHJpbmcpOwo+ICsrwqDCoMKgwqDCoMKgwqAg YXNzZXJ0X3RhZ18zKHRhZzo6c3RyaW5nLCB0YWc6OmludGVnZXIsIHRhZzo6ZG91YmxlXyk7Cj4g K8KgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6c3RyaW5nKHRleHQgKyBwYXlsb2FkWzBdLCB0 ZXh0ICsgcGF5bG9hZFsxXSk7Cj4gK8KgwqDCoMKgIH0KPiArICNlbmRpZgo+ICtAQCAtNjkwLDYg KzU5MywxMCBAQAo+ICvCoMKgwqDCoMKgwqDCoMKgIGFzc2VydChlMSA9PSB2YWx1ZV90YWcgfHwg ZTIgPT0gdmFsdWVfdGFnKTsKPiArwqDCoMKgwqAgfQo+ICsgCj4gKyvCoMKgwqAgdm9pZCBhc3Nl cnRfdGFnXzModGFnIGUxLCB0YWcgZTIsIHRhZyBlMykgY29uc3Qgewo+ICsrwqDCoMKgwqDCoMKg wqAgYXNzZXJ0KGUxID09IHZhbHVlX3RhZyB8fCBlMiA9PSB2YWx1ZV90YWcgfHwgZTMgPT0KPiB2 YWx1ZV90YWcpOwo+ICsrwqDCoMKgIH0KPiArKwo+ICvCoMKgwqDCoCB2b2lkIGFzc2VydF9pbl9i b3VuZHMoc2l6ZV90IGkpIGNvbnN0IHsgYXNzZXJ0KGkgPAo+IGdldF9sZW5ndGgoKSk7IH0KPiAr IAo+ICvCoMKgwqDCoCBjb25zdCB0YWcgdmFsdWVfdGFnOwo+ICtAQCAtMjA1OSw2ICsxOTY2LDgg QEAKPiArwqDCoMKgwqAgc3RkOjpwYWlyPGNoYXIqLCBpbnRlcm5hbDo6dGFnPiBwYXJzZV9udW1i ZXIoY2hhciogcCkgewo+ICvCoMKgwqDCoMKgwqDCoMKgIHVzaW5nIGludGVybmFsOjp0YWc7Cj4g KyAKPiArK8KgwqDCoMKgwqDCoHNpemVfdCBzdGFydCA9IHAgLSBpbnB1dC5nZXRfZGF0YSgpOwo+ ICsrCj4gK8KgwqDCoMKgwqDCoMKgwqAgLy8gQXNzdW1lIDMyLWJpdCwgdHdvJ3MgY29tcGxlbWVu dCBpbnRlZ2Vycy4KPiArwqDCoMKgwqDCoMKgwqDCoCBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk IFJJU0tZID0gSU5UX01BWCAvIDEwdTsKPiArwqDCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBtYXhf ZGlnaXRfYWZ0ZXJfcmlza3kgPSBJTlRfTUFYICUgMTB1Owo+ICtAQCAtMjIzNSwyMyArMjE0NCwx OCBAQAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB1ID0gMHUgLSB1Owo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfQo+ICvCoMKgwqDCoMKgwqDCoMKgIH0KPiArKwo+ICsr wqDCoMKgwqDCoMKgwqAgYm9vbCBzdWNjZXNzOwo+ICsrwqDCoMKgwqDCoMKgwqAgc2l6ZV90KiBv dXQgPSBhbGxvY2F0b3IucmVzZXJ2ZSgyLCAmc3VjY2Vzcyk7Cj4gKyvCoMKgwqDCoMKgwqDCoCBp ZiAoU0FKU09OX1VOTElLRUxZKCFzdWNjZXNzKSkgewo+ICsrwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCByZXR1cm4gc3RkOjptYWtlX3BhaXIob29tKHAsICJudW1iZXIiKSwgdGFnOjpudWxsKTsKPiAr K8KgwqDCoMKgwqDCoMKgIH0KPiArK8KgwqDCoMKgwqDCoMKgIG91dFswXSA9IHN0YXJ0Owo+ICsr wqDCoMKgwqDCoMKgwqAgb3V0WzFdID0gcCAtIGlucHV0LmdldF9kYXRhKCk7Cj4gKysKPiArwqDC oMKgwqDCoMKgwqDCoCBpZiAodHJ5X2RvdWJsZSkgewo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBib29sIHN1Y2Nlc3M7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNpemVfdCogb3V0Cj4g Ky3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSBhbGxvY2F0b3IucmVzZXJ2ZShkb3Vi bGVfc3RvcmFnZTo6d29yZF9sZW5ndGgsCj4gJnN1Y2Nlc3MpOwo+ICstwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBpZiAoU0FKU09OX1VOTElLRUxZKCFzdWNjZXNzKSkgewo+ICstwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBzdGQ6Om1ha2VfcGFpcihvb20ocCwgImRvdWJsZSIp LCB0YWc6Om51bGwpOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4gKy3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGRvdWJsZV9zdG9yYWdlOjpzdG9yZShvdXQsIGQpOwo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKHAsIHRhZzo6ZG91YmxlXyk7Cj4g K8KgwqDCoMKgwqDCoMKgwqAgfSBlbHNlIHsKPiArLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYm9v bCBzdWNjZXNzOwo+ICstwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzaXplX3QqIG91dAo+ICstwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gYWxsb2NhdG9yLnJlc2VydmUoaW50ZWdlcl9z dG9yYWdlOjp3b3JkX2xlbmd0aCwKPiAmc3VjY2Vzcyk7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGlmIChTQUpTT05fVU5MSUtFTFkoIXN1Y2Nlc3MpKSB7Cj4gKy3CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKG9vbShwLCAiaW50ZWdlciIpLAo+ IHRhZzo6bnVsbCk7Cj4gKy3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiArLcKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgaW50ZWdlcl9zdG9yYWdlOjpzdG9yZShvdXQsIHN0YXRpY19jYXN0PGludD4o dSkpOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHN0ZDo6bWFrZV9wYWlyKHAs IHRhZzo6aW50ZWdlcik7Cj4gK8KgwqDCoMKgwqDCoMKgwqAgfQo+ICvCoMKgwqDCoCB9Cgo= From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 07:56:29 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 11:56:29 +0000 Received: from localhost ([127.0.0.1]:42275 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUuy-0002JV-UG for submit@debbugs.gnu.org; Sun, 09 Oct 2022 07:56:29 -0400 Received: from mail-ej1-f67.google.com ([209.85.218.67]:40549) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohUur-0002J6-CO for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 07:56:27 -0400 Received: by mail-ej1-f67.google.com with SMTP id r17so19778747eja.7 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 04:56:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=lxc1zbAmmqUHVfX7bBpFnp5wZmcuz4i5dUeUh0MUrlk=; b=C3UCwV3w8BwvPzcUipdmf7TGbEI7GZmww7Imp8YRDWvm3oR3pNMZ334abZ1WMT6PLY jCTYImfrRLE7VFSYyND5Q4ww0ghaiQZ3h079QD9z/IDcAwjS/H0LXFFSnyFytKWMYYjb irYzHPaYD6vV098NRTcWyDnmW6saS36vmsObcp77qK8qXWEtTUM7hIPORbVppeoe/hWL CfrkkYD+GHBd5Q5CWGT7nWSYBKJeEsVhzN4i8jMZ1f6+Jxykkum+lSucxkew7NRkrTqs AipKPA/HlO9A1WMYCT1tZb+sPFO6VK+Wrau1OkE1T1GveadR9/xg3X+8306P3uRTt/ef /6Gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=lxc1zbAmmqUHVfX7bBpFnp5wZmcuz4i5dUeUh0MUrlk=; b=qJFkw22Kb8nbQSfrIjig+EuEJVRYlgwqt5cLw6UhNapZ6UKrN4Pg1YwnzvFZg0mlba EmMuQWkD5xmq4vo+nSWuMXrQlg5ZHVbFUVuQzVMQsd40N3g3ci+k8vQfzTSTY3qtk8Yl PsAPRxuXv/7g2v74C8VP/kMTYZScl0rbIoJYvp3SNAyC930r3jOwEmEtEspkzaHUXX1j N3qSc3wV3yFC9v4B5VLZVrxjiKGcF0PDn28HZ8Ya20uaflRgywnkGvtSafDVq9WczZga sNFxHF9xq1WT0/K1L5o8WmGVpbp+8fAXJSzerFDDm/0PoSUhCyeoEUdGgRolNZ9zYQjA aHxA== X-Gm-Message-State: ACrzQf3dPmPkrMJ8geBgQmKPxjb3YLXdJ2xl7FlHl9syiXYsIJTmOm77 xX32SpZVmzgHI78qH9dM62w= X-Google-Smtp-Source: AMsMyM4pIix9TUbJmZ8GdJEYlt/CsdHqwN+0Th3D4khMK141VWhZIpTneb4+wPBj6h1kyyjNmmqlmw== X-Received: by 2002:a17:906:8476:b0:78d:3e87:cc1a with SMTP id hx22-20020a170906847600b0078d3e87cc1amr10372335ejc.592.1665316575837; Sun, 09 Oct 2022 04:56:15 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id k9-20020a17090632c900b00773f3ccd989sm3857048ejk.68.2022.10.09.04.56.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 04:56:15 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 09/13] gnu: Add coordgenlibs. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 13:56:14 +0200 In-Reply-To: <20221007152148.32591-10-david.elsing@posteo.net> References: <20221007152148.32591-10-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSAoY29vcmRnZW5saWJzKTogTmV3 IHZhcmlhYmxlLgo+IC0tLQo+IMKgZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20gfCAyNyArKysr KysrKysrKysrKysrKysrKysrKysrKysKPiDCoDEgZmlsZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25z KCspCj4gCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIGIvZ251L3Bh Y2thZ2VzL2NoZW1pc3RyeS5zY20KPiBpbmRleCA2ZWIxZTRhNjk0Li4xNTEwY2JhYjQxIDEwMDY0 NAo+IC0tLSBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gKysrIGIvZ251L3BhY2thZ2Vz L2NoZW1pc3RyeS5zY20KPiBAQCAtNzkxLDMgKzc5MSwzMCBAQCAoZGVmaW5lLXB1YmxpYyBtYWVw YXJzZXIKPiDCoMKgwqDCoCAoc3lub3BzaXMgIk1hZXN0cm8gZmlsZSBwYXJzZXIiKQo+IMKgwqDC oMKgIChkZXNjcmlwdGlvbiAibWFlcGFyc2VyIGlzIGEgcGFyc2VyIGZvciBTY2hyb2RpbmdlciBN YWVzdHJvCj4gZmlsZXMuIikKPiDCoMKgwqDCoCAobGljZW5zZSBsaWNlbnNlOmV4cGF0KSkpCj4g Kwo+ICsoZGVmaW5lLXB1YmxpYyBjb29yZGdlbmxpYnMKPiArwqAgKHBhY2thZ2UKPiArwqDCoMKg IChuYW1lICJjb29yZGdlbmxpYnMiKQo+ICvCoMKgwqAgKHZlcnNpb24gIjMuMC4xIikKPiArwqDC oMKgIChzb3VyY2UgKG9yaWdpbgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9k IGdpdC1mZXRjaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJlZmVy ZW5jZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJsCj4gImh0 dHBzOi8vZ2l0aHViLmNvbS9zY2hyb2Rpbmdlci9jb29yZGdlbmxpYnMvIikKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIg dmVyc2lvbikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0 LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c2hhMjU2Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKPiAiMGQwOXgzdjM4aTl5MTg0Ym1sMDIwYnE3eGl6ZHJk d25nMzhxbWR4bHBsemZocWtqZGlkdiIpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtl LWJ1aWxkLXN5c3RlbSkKPiArwqDCoMKgIChuYXRpdmUtaW5wdXRzIChsaXN0IGJvb3N0KSkKPiAr wqDCoMKgIChpbnB1dHMgKGxpc3QgbWFlcGFyc2VyKSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiAr wqDCoMKgwqAgKGxpc3QKPiArwqDCoMKgwqDCoCAjOmNvbmZpZ3VyZS1mbGFncwo+ICvCoMKgwqDC oMKgICN+KGxpc3QgIi1EQ09PUkRHRU5fUklHT1JPVVNfQlVJTEQ9T0ZGIgo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAiLURDT09SREdFTl9VU0VfTUFFUEFSU0VSPU9OIikpKQo+ICvCoMKg wqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9naXRodWIuY29tL3NjaHJvZGluZ2VyL2Nvb3JkZ2VubGli cy8iKQo+ICvCoMKgwqAgKHN5bm9wc2lzICIyRCBjb29yZGluYXRlIGdlbmVyYXRpb24iKQo+ICvC oMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXtjb29yZGdlbmxpYnN9IGNvbnRhaW5zIGFsZ29yaXRo bXMgdG8KPiBnZW5lcmF0ZSAyRAo+ICtjb29yZGluYXRlcy7CoCBJdCBoYXMgYW4gZW1waGFzaXMg b24gcXVhbGl0eSByYXRoZXIgdGhhbiBzcGVlZC4iKQpJdCBlbXBoYXNpc2VzIHF1YWxpdHkgb3Zl ciBzcGVlZC4gIFRoYXQgYmVpbmcgc2FpZCwgaXMgaXQgdGhhdCBoYXJkIHRvCmdlbmVyYXRlIHBv aW50cz8gIFdoYXQncyB0aGUgZnVsbCBjb250ZXh0IGhlcmU/Cj4gK8KgwqDCoCAobGljZW5zZSBs aWNlbnNlOmJzZC0zKSkpCgo= From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 08:03:07 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 12:03:07 +0000 Received: from localhost ([127.0.0.1]:42283 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohV1P-0002WC-4M for submit@debbugs.gnu.org; Sun, 09 Oct 2022 08:03:07 -0400 Received: from mail-ej1-f68.google.com ([209.85.218.68]:33615) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohV1N-0002Vf-Kx for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 08:03:06 -0400 Received: by mail-ej1-f68.google.com with SMTP id q9so15287691ejd.0 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 05:03:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=l9IHgUJckmC24Dmy67s2TQ9/q0Icmy5og0yVhfhbFgg=; b=VwVSfRRugMHI9ogg3s0UNxvjMLbZz1ywvc27LUhXewaDMj859l1Vq5MU9oUD4PfdPl X2eFZNiLQN2s/HWOfwIXvpUjrwXR7Aw1KSxTON64pf508bknggJYZCFqNu73+Nk+DDJq /JQCdwMXCXH0b+N4rPZLFDARUFzx4bJd7p11Ry4wLrozfZ4P8iqwwafJqtmR7q8rngO4 bWjzxkKufNbhgdDRd+P3Zr4w1pKp3+Q4oRCoIfWe68QHEeSHoFuaKlQqUE90aRn63XoG I8pdCA0qOKEpT5GtmnGsW0pIZj0rukolVXJ0o2Wc9bcmFNk3PrAFPqjQOnMP4gH0O6W0 KYTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=l9IHgUJckmC24Dmy67s2TQ9/q0Icmy5og0yVhfhbFgg=; b=kXas3THNSG9rDL+96uZZSQDGAOyVFMXNna/JlBxke71shJ5oAT9xiJb2gVtaaumdpf TvZbGADAQa+ow55fGlU3F/+/qpXp2MSlZ+xXJEgpSTFeOOjtHDnBdNF7eGBUQT3sd5pj BMhfPuFACvffZ1rO+2wzjN+R9AYYKBIo+pbWrgzL/9vp/HBMNRcAVTCNDBJjKLmIJ7HA so7l0ofnIZUeGEW5RpO6Ol+vIG3t3JyNaYP5Ui4kHbE86k4iJeai4RWG5uVQpRR52Bg8 Eb4S6I4mPWpeRJwiDuPr7xWmXIJhgNNac0r1k4b6rumZ5C3xCyFUOX49Xyjl4fGDN+9a IA1A== X-Gm-Message-State: ACrzQf0QpRDuKLeNjfMy4qDRRaOlPKmGfl9DAxosNpd9VyyBYc/1Et6W 7SU5IEjaw11kVdQlAdQwIss= X-Google-Smtp-Source: AMsMyM60KS8ZHBasyPYuWpkc0x/jh3AGJDuiUvqZcJIOs8yialvtn2RxAL7Fh3zOqjT1Kc1Q83U0AQ== X-Received: by 2002:a17:907:a425:b0:78d:b3ce:1e43 with SMTP id sg37-20020a170907a42500b0078db3ce1e43mr1196271ejc.95.1665316979694; Sun, 09 Oct 2022 05:02:59 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id r9-20020a1709061ba900b0073dd7e586f9sm3877982ejg.193.2022.10.09.05.02.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 05:02:59 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 10/13] gnu: Add yaehmop-tightbind. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 14:02:58 +0200 In-Reply-To: <20221007152148.32591-11-david.elsing@posteo.net> References: <20221007152148.32591-11-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSAoeWFlaG1vcC10aWdodGJpbmQp OiBOZXcgdmFyaWFibGUuCkRvbid0IGZvcmdldCB0byB1cGRhdGUgdGhlIENoYW5nZUxvZy4KPiAt LS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIHwgMTEwCj4gKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5nZWQsIDExMCBpbnNlcnRpb25z KCspCj4gCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIGIvZ251L3Bh Y2thZ2VzL2NoZW1pc3RyeS5zY20KPiBpbmRleCAxNTEwY2JhYjQxLi42OGQyOGE1MmMzIDEwMDY0 NAo+IC0tLSBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gKysrIGIvZ251L3BhY2thZ2Vz L2NoZW1pc3RyeS5zY20KPiBAQCAtNDIsNiArNDIsNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBh Y2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGRvY3Vt ZW50YXRpb24pCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmbGV4KQo+IMKgwqAg Izp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZm9udHV0aWxzKQo+ICvCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBnY2MpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnbCkK PiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdyYXBodml6KQo+IMKgwqAgIzp1c2Ut bW9kdWxlIChnbnUgcGFja2FnZXMgZ3YpCj4gQEAgLTU2LDYgKzU3LDcgQEAgKGRlZmluZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBjaGVtaXN0cnkpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBzZXJpYWxpemF0aW9uKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3Bo aW54KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc3RiKQo+ICvCoCAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyB0ZXgpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdl cyB3ZWIpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB4bWwpCj4gwqDCoCAjOnVz ZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIGNtYWtlKQo+IEBAIC04MTgsMyArODIwLDExMSBA QCAoZGVmaW5lLXB1YmxpYyBjb29yZGdlbmxpYnMKPiDCoMKgwqDCoCAoZGVzY3JpcHRpb24gIkBj b2Rle2Nvb3JkZ2VubGlic30gY29udGFpbnMgYWxnb3JpdGhtcyB0bwo+IGdlbmVyYXRlIDJECj4g wqBjb29yZGluYXRlcy7CoCBJdCBoYXMgYW4gZW1waGFzaXMgb24gcXVhbGl0eSByYXRoZXIgdGhh biBzcGVlZC4iKQo+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKPiArCj4gKyhk ZWZpbmUtcHVibGljIHlhZWhtb3AKPiArwqAgKHBhY2thZ2UKPiArwqDCoMKgIChuYW1lICJ5YWVo bW9wIikKPiArwqDCoMKgICh2ZXJzaW9uICIyMDIyLjA5LjEiKQo+ICvCoMKgwqAgKHNvdXJjZSAo b3JpZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtZXRob2QgZ2l0LWZldGNoKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwgImh0dHBzOi8vZ2l0aHViLmNv bS9ncmVnbGFuZHJ1bS95YWVobW9wIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNp b24pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2Cj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAKPiAiMXgwZDc1bTFoZ2RiNDExZml2N2M1YndxMW40eTBzd3JsbDBnaWdoOHY1Yzcza2p4cmph MCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxk IHV0aWxzKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzbmlwcGV0Cj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJyhiZWdpbgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIDs7IFNlcGFyYXRlIHByb2dyYW0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInZpZXdrZWwiKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFJlbW92ZSBleGFtcGxlIG91dHB1dCAo c29tZSBhcmUgY29ycnVwdGVkKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChmb3ItZWFjaCBkZWxldGUtZmlsZSAoZmluZC1maWxlcyAiZXhhbXBsZXMiCj4gIlxcLlokIikp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgRG9jdW1lbnRhdGlvbiBv dXRwdXRzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNoIGRl bGV0ZS1maWxlIChmaW5kLWZpbGVzICJkb2NzIgo+ICJcXC4ocHN8cGRmKSQiKSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7OyBUaGVzZSBhcmUgdHJhbnNwaWxlZCBmcm9t IEZvcnRyYW4gdG8gQywgYnV0IHdlCj4gYnVpbGQgdGhlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgOzsgRm9ydHJhbiBjb2RlIGluc3RlYWQKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInRpZ2h0YmluZC9m MmNfZmlsZXMiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUt ZmlsZSAidGlnaHRiaW5kL2RpYWcuYyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGRlbGV0ZS1maWxlICJ0aWdodGJpbmQvY2JvcmlzLmMiKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5kL2FiZm5zLmMiKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRi aW5kL2xvdmxhcC5jIikpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1aWxkLXN5 c3RlbSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqAgKGxpc3QKPiArwqDCoMKgwqDC oCAjOmNvbmZpZ3VyZS1mbGFncwo+ICvCoMKgwqDCoMKgICN+KGxpc3QKPiArwqDCoMKgwqDCoMKg wqDCoCAiLURVU0VfQkxBU19MQVBBQ0s9T04iCj4gK8KgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1h cHBlbmQgIi1EUEFSTV9GSUxFX0xPQz0iICMkb3V0cHV0Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi9zaGFyZS8iICMkbmFtZSAiLSIgIyR2ZXJzaW9u Cj4gIi9laHRfcGFybXMuZGF0IikKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURCSU5EX0VYRV9OQU1F PXlhZWhtb3AtYmluZCIpCj4gK8KgwqDCoMKgwqAgIzpwaGFzZXMKPiArwqDCoMKgwqDCoCAjfiht b2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQt YWZ0ZXIgJ3VucGFjayAnY2hkaXIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8K PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoZGlyICJ0aWdodGJpbmQiKSkpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICdjaGRpciAncGF0Y2gtZm9ydHJhbi1mdW5jdGlv bnMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICcoIm1vdi5jIiAicHJvdG90eXBlcy5oIikKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImxvdmxhcFxcKCIpICJsb3ZsYXBfKCIpCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJhYmZuc1xcKCIpICJhYmZuc18oIikp KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2NoZGlyICdwYXRjaC1jbWFrZQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoc3Vic3RpdHV0ZSogIkNNYWtlTGlzdHMudHh0Igo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKCgicHJvamVjdFxcKHlhZWhtb3AgQ1xcKSIpICJwcm9qZWN0KHlhZWht b3AgQwo+IEZvcnRyYW4pIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImFi Zm5zLmMiKSAiZm9ydHJhbjc3L2FiZm5zLmYiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKCgibG92bGFwLmMiKSAiZm9ydHJhbjc3L2xvdmxhcC5mIikKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICgoIihzZXRcXChQQVJNX0ZJTEVfTE9DLiopXFwpIiBhbGwgaW5p dCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgaW5p dCAiIENBQ0hFIFNUUklORyBcIlwiKSIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKCgiYWRkX2xpYnJhcnlcXCh5YWVobW9wX2VodCIgbGliKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBsaWIgIiBTSEFSRUQgIikpCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJ0YXJnZXRfbGlua19saWJyYXJpZXNcXCh0ZXN0 X2VodAo+IFxcJFxce0xBUEFDS19MSUJSQVJJRVNcXH0uKiIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBhbGwpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChzdHJpbmctYXBwZW5kIGFsbAo+ICJcbnRhcmdldF9saW5rX2xpYnJhcmllcyh5YWVobW9wX2Vo dCAiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICIke0xBUEFDS19MSUJSQVJJRVN9KVxuIikpKSkpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoCAoYWRkLWFmdGVyICdidWlsZCAnZml4LWxhdGV4Cj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjaGRpciAiLi4v ZG9jcyIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiYmluZF9t YW51YWwudGV4Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXFxcXHVzZXBh Y2thZ2VcXHtiaW5kcGFnZVxcfSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAKPiAi XFx1c2VwYWNrYWdlW2xlZnQ9MmNtLHJpZ2h0PTJjbSx0b3A9NGNtLGJvdHRvbT0yY21dIgo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJ7Z2VvbWV0cnl9IikpKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogIlptYXRfYXBwZW5kaXgudGV4Igo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiZmlsZT1kaWhlZHJhbFxcLmVwcyIp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJmaWxlPWZpZ3MvZGloZWRyYWwu ZXBzIikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2ZpeC1sYXRleCAnYnVp bGQtZG9jCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIDs7IFRPRE86IG5vdCByZXByb2R1Y2libGUKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHNldGVudiAiRk9SQ0VfU09VUkNFX0RBVEUiICIxIikKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgTmVlZHMgdG8gcnVuIHR3aWNlIHRvIGNvbXBpbGUgY29t cGxldGVseQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tlICJwZGZsYXRleCIg ImJpbmRfbWFudWFsLnRleCIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2Ug InBkZmxhdGV4IiAiYmluZF9tYW51YWwudGV4IikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGNoZGlyICIuLi9idWlsZCIpKSkKTm90ZSB0aGF0IHdlIGhhdmUgcnViYmVyIHRvIGF1dG9t YXRlIGJ1aWxkaW5nIFBERnMuICBBbHNvIHByZWZlciAid2l0aC0KZGlyZWN0b3J5LWV4Y3Vyc2lv biIgb3ZlciBjaGRpciB3aGVyZSBwb3NzaWJsZS4KPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQt YWZ0ZXIgJ2luc3RhbGwgJ2luc3RhbGwtZWh0LXBhcm1zCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUg Ii4uL3RpZ2h0YmluZC9laHRfcGFybXMuZGF0Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIyRvdXRwdXQgIi9z aGFyZS8iCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG5hbWUgIi0iICMkdmVyc2lv bikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2luc3RhbGwtZWh0LXBhcm1z ICdpbnN0YWxsLWRvYwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxlICIuLi9kb2NzL2JpbmRfbWFudWFs LnBkZiIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChzdHJpbmctYXBwZW5kICMkb3V0cHV0ICIvc2hhcmUvZG9jLyIKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICMkbmFtZSAiLSIgIyR2ZXJzaW9uKSkpKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqAgKGRlbGV0ZSAnY2hlY2spCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVy ICdpbnN0YWxsLWRvYyAnY2hlY2sKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhKiAo IzprZXkgdGVzdHM/ICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHdoZW4gdGVzdHM/Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52 b2tlICIuL3Rlc3RfZWh0IikpKSkpKSkKPiArwqDCoMKgIChuYXRpdmUtaW5wdXRzCj4gK8KgwqDC oMKgIGAoKCJnZm9ydHJhbiIgLGdmb3J0cmFuKQo+ICvCoMKgwqDCoMKgwqAgKCJ0ZXhsaXZlIiAs KHRleGxpdmUtdXBkbWFwLmNmZyAobGlzdCB0ZXhsaXZlLWZvbnRzLWVjCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgdGV4bGl2ZS1sYXRleC1ncmFwaGljcwo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRleGxpdmUtbGF0ZXgtCj4gZ2VvbWV0cnkpKSkpKQpJIHRo aW5rIHlvdSBjYW4gZG8gd2l0aG91dCBsYWJlbHMgaGVyZSAoc2VlIG15IGNvbW1lbnQgcmVnYXJk aW5nCnJ1YmJlcikuCj4gK8KgwqDCoCAoaW5wdXRzIChsaXN0IG9wZW5ibGFzKSkKPiArwqDCoMKg IChob21lLXBhZ2UgImh0dHBzOi8vZ2l0aHViLmNvbS9ncmVnbGFuZHJ1bS95YWVobW9wIikKPiAr wqDCoMKgIChzeW5vcHNpcyAiWWV0IEFub3RoZXIgZXh0ZW5kZWQgSHVlY2tlbCBNb2xlY3VsYXIg T3JiaXRhbAo+IFBhY2thZ2UiKQpZb3UgY2FuIHVzZSB0aGlzIGFzIGFuIEBhY3JvbnltIGluIHRo ZSBkZXNjcmlwdGlvbi4gIEZvciB0aGUgc3lub3BzaXMsCkknZCB1c2Ugc29tZXRoaW5nIGVsc2Us IGUuZy4gIlBlcmZvcm0gSMO8Y2tlbCBjYWxjdWxhdGlvbnMiLgo+ICvCoMKgwqAgKGRlc2NyaXB0 aW9uICJAY29kZXtZQWVITU9QfSBjb250YWlucyBhIHByb2dyYW0gYW5kIGxpYnJhcnkgZm9yCj4g cGVyZm9ybWluZwo+ICtleHRlbmRlZCBIw7xja2VsIGNhbGN1bGF0aW9ucy4iKQpJIHJlY29tbWVu ZCBhZGRpbmcgImFuZCBhbmFseXppbmcgYW5kIHZpc3VhbGl6aW5nIHRoZSByZXN1bHRzLiIgKHNl ZQpwbHVnX2l0LnRleCkKPiArwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTIpKSkKCkNoZWVy cwo= From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 08:06:11 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 12:06:11 +0000 Received: from localhost ([127.0.0.1]:42287 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohV4N-0002at-0S for submit@debbugs.gnu.org; Sun, 09 Oct 2022 08:06:11 -0400 Received: from mail-ed1-f68.google.com ([209.85.208.68]:37451) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohV4L-0002aj-Bx for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 08:06:10 -0400 Received: by mail-ed1-f68.google.com with SMTP id w10so12566041edd.4 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 05:06:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=gYRW3nDcRgOmnKGoq1bCd/+W+EpYHDNZXDFpb/Bp8aU=; b=RgKXzG6PSwgBRChqG0WBgM3VmFtFps7Y6WRTcXGDwqMdhMYFHkU59z4iaqIaCHFG+/ y46+Y5M1bsj80z15eWreS2RleBQkZygs2uYyvaXkvh/yTOMrKxwxW3gGhraA4x1t9oOn M/I/Ja7VaO1DXnR0qkTnmG1l/ZMQrKT8kI67HXOxENlcIzyAjxKaVzP2XqNuoQUjCCS2 YCrhSqjmNwemWFzCynufLUleMDg+wqMy3y1oK5E1jsaEbHmR+lyHPVK7uqP7HOP5i55E 9VzhTU4kB5Usy0Mo7KdQgOjVQx1v9tD55PLZdCADeTv/ItE+QV9ApbjM9VuVSqhSwUUP 7w8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=gYRW3nDcRgOmnKGoq1bCd/+W+EpYHDNZXDFpb/Bp8aU=; b=Z4MivHhsiBNIZzeH4DiTcivSeSqkBQWxUQTrmgGC/7Z832UsX6JmviJPc6CduhuI0F JIJ7WyDNl0LCL/LpDUw2e4W8VBj3VgEMdZaAJXG5EdjzdzxUHCTfKkA57MmZP2i+shAC w5p+bC5L71KFGDunlT6GqACjmCXKMo3dfqrxKm+3iZFmq6niVeLyznoCWuiPVBkbcbRU n0nK87GSld21Su7l794utnT4IvsC7HmZb5+9lCgI53163EiBoqBkLeKKDL7EcXv1Putv hP9FzKu4toYcudUiXRwEWlbKLVq/Ygf0n5sLVeu9GCfcDlN1d75l+DaVIFZV40SehE+u ZIvA== X-Gm-Message-State: ACrzQf0u6rWmcWukuPevGn/NsB+sKN0fPtTzBO4Jsqsll4Liuh+uknfY hNeerF9C6wE1JBO5fp0u/io= X-Google-Smtp-Source: AMsMyM7AJ0fpAjg8U/kDellb+bhF9OHw/uxqWDBg8mv1iQzwnAZdK9NWDqChnLxi+P4ckK2A6ueIZg== X-Received: by 2002:a05:6402:2549:b0:45b:e5fa:9681 with SMTP id l9-20020a056402254900b0045be5fa9681mr4401746edb.72.1665317163687; Sun, 09 Oct 2022 05:06:03 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id b5-20020a1709063f8500b00787f91a6b16sm3879621ejj.26.2022.10.09.05.06.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 05:06:02 -0700 (PDT) Message-ID: <99fb2123148b39be0428e3f136ba92b363c20f51.camel@gmail.com> Subject: Re: [PATCH v2 11/13] gnu: Add avalontoolkit. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 14:06:02 +0200 In-Reply-To: <20221007152148.32591-12-david.elsing@posteo.net> References: <20221007152148.32591-12-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSAoYXZhbG9udG9vbGtpdCk6IE5l dyB2YXJpYWJsZS4KPiAtLS0KPiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIHwgOTMKPiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+IMKgMSBmaWxlIGNoYW5nZWQs IDkzIGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NoZW1pc3Ry eS5zY20gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IGluZGV4IDY4ZDI4YTUyYzMuLmU1 MmRkMmYzYjYgMTAwNjQ0Cj4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiArKysg Yi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+IEBAIC05MjgsMyArOTI4LDk2IEBAIChkZWZp bmUtcHVibGljIHlhZWhtb3AKPiDCoMKgwqDCoCAoZGVzY3JpcHRpb24gIkBjb2Rle1lBZUhNT1B9 IGNvbnRhaW5zIGEgcHJvZ3JhbSBhbmQgbGlicmFyeSBmb3IKPiBwZXJmb3JtaW5nCj4gwqBleHRl bmRlZCBIw7xja2VsIGNhbGN1bGF0aW9ucy4iKQo+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6 YnNkLTIpKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIGF2YWxvbnRvb2xraXQKPiArwqAgKHBhY2th Z2UKPiArwqDCoMKgIChuYW1lICJhdmFsb250b29sa2l0IikKSSB0aGluayB3ZSBjb3VsZCBkbyBh IGh5cGhlbiBiZXR3ZWVuIGF2YWxvbiBhbmQgdG9vbGtpdC4KPiArwqDCoMKgICh2ZXJzaW9uICIx LjIuMCIpCj4gK8KgwqDCoCAoc291cmNlCj4gK8KgwqDCoMKgIChvcmlnaW4KPiArwqDCoMKgwqDC oMKgIChtZXRob2QgdXJsLWZldGNoKQo+ICvCoMKgwqDCoMKgwqAgKHVyaSAoc3RyaW5nLWFwcGVu ZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIm1pcnJvcjovL3NvdXJjZWZvcmdlL2F2YWxv bnRvb2xraXQvIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkF2YWxvblRvb2xraXRfIiAo c3Vic3RyaW5nIHZlcnNpb24gMCAzKQo+ICIvQXZhbG9uVG9vbGtpdF8iCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB2ZXJzaW9uICIuc291cmNlLnRhciIpKQo+ICvCoMKgwqDCoMKgwqAgKHNo YTI1Ngo+ICvCoMKgwqDCoMKgwqDCoCAoYmFzZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqAgIjBybm55 eTZheHMyZGE3YWE0cTZsMzBsZGF2Yms0OXY2bDIybGxqMWFkbjc0aDFpNjdicHYiKSkKPiArwqDC oMKgwqDCoMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgdXRpbHMpIChpY2UtOSBmdHcpKSkKPiAr wqDCoMKgwqDCoMKgIChzbmlwcGV0Cj4gK8KgwqDCoMKgwqDCoMKgICN+KGJlZ2luCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGNoZGlyICIuLiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJTb3VyY2VEaXN0cmlidXRpb24vamF2YSIpKSkpKQo+ ICvCoMKgwqAgKGJ1aWxkLXN5c3RlbSBnbnUtYnVpbGQtc3lzdGVtKQo+ICvCoMKgwqAgKGFyZ3Vt ZW50cwo+ICvCoMKgwqDCoCAobGlzdAo+ICvCoMKgwqDCoMKgIDs7IFRoZXJlIGFyZSBubyB0ZXN0 cwo+ICvCoMKgwqDCoMKgICM6dGVzdHM/ICNmCj4gK8KgwqDCoMKgwqAgIzpwaGFzZXMKPiArwqDC oMKgwqDCoCAjfihsZXQgKChwcm9ncmFtcyAnKCJjYW5vbml6ZXIiICJtYXRjaHRlc3QiICJzbWky bW9sIgo+ICJzdHJ1Y2hrIikpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZGlmeS1waGFzZXMg JXN0YW5kYXJkLXBoYXNlcwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUgJ2NvbmZp Z3VyZSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWJlZm9yZSAnYnVpbGQgJ3JlbW92 ZS1mcmVlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgUmVtb3ZlIGluY29ycmVjdCBmcmVlIG9mIGdldGVu diByZXN1bHQgKHBhdGNoCj4gYWxzbyBpbiByZGtpdCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiY29tbW9uL3JlYWNjc2lvLmMiCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiTXlGcmVlLip0ZW1wZGlyLioiKSAiIikpKSkKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocmVwbGFjZSAnYnVpbGQKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo Y2hkaXIgImNvbW1vbiIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGV0KiAo KHBhcnRzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGxpc3QKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICJhYWNoZWNrIiAiY2FzdXRpbHMiICJkZW5vcm1hbCIKPiAiZGVwaWN0dXRpbCIKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJkaWRlcGljdCIgImZp eGNoYXJnZXMiICJmb3JpbyIgImdlb21ldHJ5Igo+ICJncmFwaCIKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJoYXNoY29kZSIgImxheW91dCIgImxv Y2FsIiAicGF0Y2xlYW4iCj4gInBhdHRlcm4iCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAicGVyY2VpdmUiICJyZWFjY3NpbyIgInJ0dXRpbHMiICJz ZXQiCj4gInNob3J0Y3V0Igo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgInNrZXRjaCIgInNzbWF0Y2giICJzdGVyZW8iICJzeW1ib2xfbGlzdHMiCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAic3ltYm9s dGFibGUiICJ1dGlsaXRpZXMiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKG9iamVjdHMgKG1hcCAobGFtYmRhIChuYW1lKSAoc3RyaW5nLWFwcGVuZAo+ IG5hbWUgIi5vIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwYXJ0cykpKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmb3ItZWFjaAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKGxhbWJkYSAobmFtZSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoZGlzcGxheSAoc3RyaW5nLWFwcGVuZCAiQ29tcGlsaW5nICIgbmFt ZQo+ICIuY1xuIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGludm9rZSAiZ2NjIiAiLWMiICItZlBJQyIgIi1PMiIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgbmFtZSAi LmMiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAiLW8iIChzdHJpbmctYXBwZW5kIG5hbWUgIi5vIikpKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGFydHMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGRpc3BsYXkgIkJ1aWxkaW5nIHNoYXJlZCBsaWJyYXJ5XG4iKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChhcHBseSBpbnZva2UgImdjYyIgIi1mUElD IiAiLXNoYXJlZCIgIi1sbSIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICItbyIgImxpYmF2YWxvbnRvb2xraXQuc28iCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiY2Fub25pemVyLmMiICJzbWkybW9s LmMiICJzdHJ1Y2hrLmMiCj4gb2JqZWN0cykKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoZm9yLWVhY2gKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChsYW1iZGEgKHByb2dyYW0pCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGRpc3BsYXkgKHN0cmluZy1hcHBlbmQgIkJ1aWxkaW5nICIgcHJvZ3JhbQo+ICJcbiIp KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgImdj YyIgIi1MLiIgIi1sYXZhbG9udG9vbGtpdCIgIi1sbSIgIi0KPiBPMiIKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBl bmQgIi1XbCwtcnBhdGg9IiAjJG91dHB1dAo+ICIvbGliIikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi1ETUFJTiIgKHN0cmluZy1h cHBlbmQgcHJvZ3JhbSAiLmMiKQo+ICItbyIgcHJvZ3JhbSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBwcm9ncmFtcykpKSkKVWhtLi4uIGlzIHRoZSBNYWtlZmlsZSB0 aGF0IHVudXNhYmxlPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdpbnN0YWxs Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgOzsgRXhlY3V0YWJsZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChmb3ItZWFjaAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo bGFtYmRhIChwcm9ncmFtKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGluc3RhbGwtZmlsZSBwcm9ncmFtIChzdHJpbmctYXBwZW5kICMkb3V0cHV0Cj4gIi9iaW4iKSkp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHByb2dyYW1zKQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNoCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChsYW1iZGEgKG5hbWUpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoc3ltbGluayAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dCAiL2Jpbi9zbWkybW9s IikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzdHJpbmctYXBwZW5kICMkb3V0cHV0ICIvYmluLyIgbmFtZSkpKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKCJtb2wyc21pIiAicmRmMnNtaSIgIm1vbDJ0YmwiICJt b2wyc21hIgo+ICJzbWkycmRmIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7 OyBMaWJyYXJ5Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1maWxl ICJsaWJhdmFsb250b29sa2l0LnNvIiAoc3RyaW5nLWFwcGVuZAo+ICMkb3V0cHV0ICIvbGliIikp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZm9yLWVhY2gKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSAoZmlsZSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUgZmlsZSAoc3RyaW5nLWFwcGVuZCAj JG91dHB1dAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAK PiAiL2luY2x1ZGUvYXZhbG9udG9vbGtpdCIpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGZpbmQtZmlsZXMgIi4iICJcXC5oJCIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGluc3RhbGwtZmlsZSAiLi4vbGljZW5zZS50eHQiCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1h cHBlbmQgIyRvdXRwdXQgIi9zaGFyZS9kb2MvIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICMkbmFtZSAiLSIgIyR2ZXJzaW9uCj4gIi8iKSkpKSkpKSkKU2FtZSBhcyBhYm92ZS4K PiArwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL2F2 YWxvbnRvb2xraXQvIikKPiArwqDCoMKgIChzeW5vcHNpcyAiVG9vbHMgZm9yIFNNSUxFUyBhbmQg TU9MIGZpbGVzIGFuZCBmb3Igc3RydWN0dXJlCj4gZmluZ2VycHJpbnRpbmciKQo+ICvCoMKgwqAg KGRlc2NyaXB0aW9uICJUaGlzIHBhY2thZ2UgY29udGFpbnMgYSBsaWJyYXJ5IGFuZCBwcm9ncmFt cyBmb3IKPiArY2Fub25pY2FsaXphdGlvbiBvZiBTTUlMRVMgYW5kIE1PTCBmaWxlcywgbW9sZWN1 bGFyIHN0cnVjdHVyZQo+IGZpbmdlcnByaW50aW5nCj4gK2FuZCByZW5kZXJpbmcgbW9sZWN1bGVz LiIpCj4gK8KgwqDCoCAobGljZW5zZSBsaWNlbnNlOmJzZC0zKSkpCgo= From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 09 08:12:42 2022 Received: (at 58261) by debbugs.gnu.org; 9 Oct 2022 12:12:42 +0000 Received: from localhost ([127.0.0.1]:42292 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohVAf-0002kW-2C for submit@debbugs.gnu.org; Sun, 09 Oct 2022 08:12:42 -0400 Received: from mail-ed1-f67.google.com ([209.85.208.67]:42844) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ohVAc-0002kJ-VO for 58261@debbugs.gnu.org; Sun, 09 Oct 2022 08:12:40 -0400 Received: by mail-ed1-f67.google.com with SMTP id u21so12533674edi.9 for <58261@debbugs.gnu.org>; Sun, 09 Oct 2022 05:12:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=a99gOkREXUbh2GpvZFb/YI/OhjWFUZGFkmfjk7DXO7U=; b=d+wfCSxwtUTtWofFM4FBSyPwy6WHywnxkqL7oN4ooLQDpSv6nBd/XLwUQ9GXCP6ow3 1HINThxUfG4lu3Y0CkboWYrXSUkCaFReQoS+03BSwAyYbr/E/LCStGd5h4bSGMTc+pSq 9JZ1F8ICfL7LdluXBWbPhkK8UvfioK8TKlnnGDCtWmI2o5+mNX0H3kUIfQb7G4JjET/c xIX4CmKUUaDtekpCc8NCCt7lFvx6xkZMdyi9G4ymkajZs5d7GW9vMpJ0kMZ5vKGSkHET 7aDqZg0Rw+wo4kHcAnJ41kJ6cPqc3xQQel7YgzWizwiSH0Bgf2dGIlfU8RFPM/B1SVIT F0kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=a99gOkREXUbh2GpvZFb/YI/OhjWFUZGFkmfjk7DXO7U=; b=3uRQrtL1V6dE9m9DB6kZtOKROnOEGzJJaOWJB+GhHqbQYQNnANR+5gkRfH8t86wzP+ hEJxfAHD8MlRAv/JMlx7LZYEws0tvKDk5+qTcyxDcHAp2BVymlaunqW8S5FyNq8vxulM Tdod4+3Ec0zNadfJa47IptrJ41qtSHHemdGMEfEXTrRnh4jJH64A4ZGYbf+OYEZJm8kY 9AQEV6rRqsfedAhmdgj5lfzfy5LQ6ZdmEUOm3YZ0PVwYh36KfXFQ4NoTpBOLR4aSSbhz G4YSQfkGM3l+BIOu5RneLAPMUGAqTMcfZfMOZZtkrazxOls8UGRxj7Dfxm8upvOG1MqV H2/Q== X-Gm-Message-State: ACrzQf3U4lZ6lQDj+Hxfl22bNeVbh+suzN29lNgnK+dNlpzkTdS0BGpZ 0jIK+vtBT+qpOIBHOJq2FFM= X-Google-Smtp-Source: AMsMyM5eJQiLyhqOmHiJ35b2oRjFQvrrEdQI9gmzwoYJaDciBAkKgQROlO5uG4ZNTQsRsBFVfV4n/w== X-Received: by 2002:a05:6402:520a:b0:45b:e169:3ae with SMTP id s10-20020a056402520a00b0045be16903aemr4860676edd.380.1665317552807; Sun, 09 Oct 2022 05:12:32 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id s26-20020a056402165a00b00456d40f6b73sm5122244edx.87.2022.10.09.05.12.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 09 Oct 2022 05:12:32 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 13/13] gnu: Add rdkit. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Sun, 09 Oct 2022 14:12:31 +0200 In-Reply-To: <20221007152226.362-2-david.elsing@posteo.net> References: <20221007152226.362-2-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjIgKzAwMDAgc2NocmllYiBEYXZpZCBF bHNpbmc6Cj4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSAocmRraXQpOiBOZXcgdmFyaWFi bGUuCj4gLS0tCj4gwqBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMTc4Cj4gKysrKysrKysrKysrKysrKysrCj4gwqAuLi4v cmRraXQtY21ha2UtZXh0ZXJuYWwtZGVwZW5kZW5jaWVzLnBhdGNowqDCoCB8IDEwMiArKysrKysr KysrCj4gwqAyIGZpbGVzIGNoYW5nZWQsIDI4MCBpbnNlcnRpb25zKCspCj4gwqBjcmVhdGUgbW9k ZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvcmRraXQtY21ha2UtZXh0ZXJuYWwtCj4gZGVw ZW5kZW5jaWVzLnBhdGNoCj4gCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnku c2NtIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiBpbmRleCA0Mzk1MzIzOGNkLi40YjM0 YTM4Nzk3IDEwMDY0NAo+IC0tLSBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gKysrIGIv Z251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiBAQCAtMzQsNiArMzQsNyBAQCAoZGVmaW5lLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBh Y2thZ2VzIGFsZ2VicmEpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBhdXRvdG9v bHMpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBiYWNrdXApCj4gK8KgICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIGJhc2UpCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBiaXNvbikKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJvb3N0KQo+IMKg wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY2hlY2spCj4gQEAgLTQxLDEwICs0MiwxMiBA QCAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IGRvY3VtZW50YXRpb24pCj4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmbGV4KQo+ ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmb250cykKPiDCoMKgICM6dXNlLW1vZHVs ZSAoZ251IHBhY2thZ2VzIGZvbnR1dGlscykKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGdjYykKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsKQo+IMKgwqAgIzp1 c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ3JhcGh2aXopCj4gK8KgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIGd0aykKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGd2KQo+IMKg wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgaW1hZ2UpCj4gwqDCoCAjOnVzZS1tb2R1bGUg KGdudSBwYWNrYWdlcyBtYXRocykKPiBAQCAtNTYsNiArNTksNyBAQCAoZGVmaW5lLW1vZHVsZSAo Z251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IHF0KQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc2VyaWFsaXphdGlvbikKPiDC oMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHNwaGlueCkKPiArwqAgIzp1c2UtbW9kdWxl IChnbnUgcGFja2FnZXMgc3FsaXRlKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMg c3RiKQo+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgdGV4KQo+IMKgwqAgIzp1c2Ut bW9kdWxlIChnbnUgcGFja2FnZXMgd2ViKQo+IEBAIC0xMTAxLDMgKzExMDUsMTc3IEBAIChkZWZp bmUtcHVibGljIHJpbmdkZWNvbXBvc2VybGliCj4gwqB1bmlxdWUgcmluZyBmYW1pbGllcywgcmVs ZXZhbnQgY3ljbGVzLCB0aGUgc21hbGxlc3Qgc2V0IG9mIHNtYWxsZXN0Cj4gcmluZ3MgYW5kCj4g wqBvdGhlciByaW5nIHRvcG9sb2d5IGRlc2NyaXB0aW9ucy4iKQo+IMKgwqDCoMKgIChsaWNlbnNl IGxpY2Vuc2U6YnNkLTMpKSkKPiArCj4gKyhkZWZpbmUtcHVibGljIHJka2l0Cj4gK8KgIChwYWNr YWdlCj4gK8KgwqDCoCAobmFtZSAicmRraXQiKQo+ICvCoMKgwqAgKHZlcnNpb24gIjIwMjIuMDMu NSIpCj4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKG1ldGhvZCBnaXQtZmV0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkg KGdpdC1yZWZlcmVuY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KHVybCAiaHR0cHM6Ly9naXRodWIuY29tL3Jka2l0L3Jka2l0IikKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiUmVsZWFzZV8iIChzdHJpbmctcmVwbGFjZS1zdWJzdHJp bmcgdmVyc2lvbgo+ICIuIiAiXyIpKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo ZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChzaGEyNTYKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFz ZTMyCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ICIxOWlkZ2lsYWJoMDRjYnIx cWo2emdyZ3Nmam0yNDhtbWZ6NmZzcjBzbXJkNjhkMHhubWw5IikpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChwYXRjaGVzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNl YXJjaC1wYXRjaGVzICJyZGtpdC1jbWFrZS1leHRlcm5hbC0KPiBkZXBlbmRlbmNpZXMucGF0Y2gi KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZHVsZXMgJygoZ3VpeCBidWlsZCB1 dGlscykpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc25pcHBldAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICN+KGJlZ2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCA7OyBSZW1vdmUgcGlja2xlIGZpbGVzIChvbmx5IHVzZWQgaW4gdGVzdHMp LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgYXMgdGhleSBhcmUg Y29tcGlsZWQgcHJvZ3JhbXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChmb3ItZWFjaAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFt YmRhIChuYW1lKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGRpc3BsYXkgKHN0cmluZy1hcHBlbmQgbmFtZSAiXG4iKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSBuYW1lKSkKPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbmQtZmlsZXMgIi4iICJcXC5wa2woXFwu Z3opPyQiKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFJlbW92 ZSBTUUxpdGUgZGF0YSBmaWxlcyAoY2FuIGJlIGdlbmVyYXRlZCkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAiRGF0YS9SRERhdGEuc3FsdCIpCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlLWZpbGUgIkRhdGEv UkRUZXN0cy5zcWx0IikpKSkpCj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1aWxkLXN5 c3RlbSkKPiArwqDCoMKgIChhcmd1bWVudHMKPiArwqDCoMKgwqAgKGxpc3QKPiArwqDCoMKgwqDC oCAjOmltcG9ydGVkLW1vZHVsZXMgKGFwcGVuZCAlY21ha2UtYnVpbGQtc3lzdGVtLW1vZHVsZXMK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAnKChndWl4IGJ1aWxkIHB5dGhvbi1idWlsZC0KPiBzeXN0ZW0pKSkKPiArwqDC oMKgwqDCoCAjOm1vZHVsZXMgJygoZ3VpeCBidWlsZCBjbWFrZS1idWlsZC1zeXN0ZW0pCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGd1aXggYnVpbGQgdXRpbHMpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKChndWl4IGJ1aWxkIHB5dGhvbi1idWls ZC1zeXN0ZW0pCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOnNlbGVj dCAoYWRkLWluc3RhbGxlZC1weXRob25wYXRoKSkpCj4gK8KgwqDCoMKgwqAgIzpjb25maWd1cmUt ZmxhZ3MKPiArwqDCoMKgwqDCoCAjfihsaXN0Cj4gK8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JV SUxEX0FWQUxPTl9TVVBQT1JUPU9OIgo+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9D QUlST19TVVBQT1JUPU9OIgo+ICvCoMKgwqDCoMKgwqDCoMKgICItRFJES19CVUlMRF9DUFBfVEVT VFM9T04iCj4gK8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JVSUxEX0ZSRUVTQVNBX1NVUFBPUlQ9 T04iCj4gK8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JVSUxEX0lOQ0hJX1NVUFBPUlQ9T04iCj4g K8KgwqDCoMKgwqDCoMKgwqAgIi1EUkRLX0JVSUxEX1lBRUhNT1BfU1VQUE9SVD1PTiIKQXJlIGFu eSBvZiB0aGVzZSBpbXBsaWVkIG9yIGRvIHRoZXkgaGF2ZSB0byBiZSBleHBsaWNpdGx5IGVuYWJs ZWQ/Cj4gK8KgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIi1EQ0FUQ0hfRElSPSIKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJCh0aGlzLXBh Y2thZ2UtbmF0aXZlLWlucHV0ICJjYXRjaDIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICIvaW5jbHVkZS9jYXRjaDIiKQo+ICvCoMKgwqDCoMKgwqDC oMKgICItRFJES19JTlNUQUxMX0RFVl9DT01QT05FTlQ9T04iCj4gK8KgwqDCoMKgwqDCoMKgwqAg Ii1EUkRLX0lOU1RBTExfSU5UUkVFPU9GRiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfSU5T VEFMTF9TVEFUSUNfTElCUz1PRkYiCj4gK8KgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQK PiArwqDCoMKgwqDCoMKgwqDCoMKgICItRFJES19PUFRJTUlaRV9QT1BDTlQ9Igo+ICvCoMKgwqDC oMKgwqDCoMKgwqAgIyQobGV0ICgoc3lzdGVtIChvciAoJWN1cnJlbnQtdGFyZ2V0LXN5c3RlbSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoJWN1cnJlbnQtc3lzdGVtKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo Y29uZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoc3RyaW5nLXByZWZpeD8gIng4 Nl82NCIgc3lzdGVtKSAiT04iKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoc3Ry aW5nLXByZWZpeD8gImk2ODYiIHN5c3RlbSkgIk9OIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoZWxzZSAiT0ZGIikpKSkKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfVVNFX0JP T1NUX0lPU1RSRUFNUz1PTiIKPiArwqDCoMKgwqDCoMKgwqDCoCAiLURSREtfVVNFX0ZMRVhCSVNP Tj1PTiIpCj4gK8KgwqDCoMKgwqAgIzpwaGFzZXMKPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhh c2VzICVzdGFuZGFyZC1waGFzZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3Vu cGFjayAnY29weS1leHRlcm5hbC1kZXBlbmRlbmNpZXMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN5bWxpbmsKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgIyQodGhpcy1wYWNrYWdlLWlucHV0ICJmb250LWNvbWljLW5ldWUi KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi9zaGFyZS9mb250cy90cnVldHlw ZS9Db21pY05ldWUtUmVndWxhci50dGYiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICJEYXRhL0ZvbnRzL0NvbWljTmV1ZS1SZWd1bGFyLnR0ZiIpKSkKVHJ5IChzZWFyY2gtaW5wdXQt ZmlsZSkgaW5zdGVhZC4KPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2NvcHktZXh0 ZXJuYWwtZGVwZW5kZW5jaWVzICdwYXRjaC1zb3VyY2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAobGFtYmRhIF8KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJF eHRlcm5hbC9BdmFsb25Ub29scy9DTWFrZUxpc3RzLnR4dCIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICgoIl5pZlxcKE5PVCBSREtfQlVJTEQiIG9yaWcpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kICJpZigwKVxuIiBvcmlnKSkKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImluY2x1ZGVfZGlyZWN0b3JpZXMuKkFW QUxPTl9TUkNfUEFUSC4qIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0 cmluZy1hcHBlbmQgImVuZGlmKClcbmluY2x1ZGVfZGlyZWN0b3JpZXMoIgo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJGF2 YWxvbnRvb2xraXQKPiAiL2luY2x1ZGUvYXZhbG9udG9vbGtpdClcbiIpKQo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiTElOS19MSUJSQVJJRVMgYXZhbG9uX2NsaWIiKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJMSU5LX0xJQlJBUklFUyAtTCIgIyRhdmFsb250 b29sa2l0ICIvbGliIC0KPiBsYXZhbG9udG9vbGtpdCIpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGxldCAoKHBvcnQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAob3Blbi1maWxlICJFeHRlcm5hbC9SaW5nRmFtaWxpZXMvZHVtbXkuY3BwIgo+ICJ3 IikpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRpc3BsYXkgIiIgcG9ydCkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjbG9zZSBwb3J0KSkKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxldCAoKHBvcnQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAob3Blbi1maWxlCj4gIkV4dGVybmFsL1JpbmdGYW1pbGllcy9D TWFrZUxpc3RzLnR4dCIgInciKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo ZGlzcGxheSAoc3RyaW5nLWFwcGVuZAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAicmRraXRfbGlicmFyeShSaW5nRGVjb21wb3NlckxpYiBkdW1t eS5jcHAKPiBTSEFSRUQiCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICIgTElOS19MSUJSQVJJRVMgLWxSaW5nRGVjb21wb3NlckxpYilcbiIKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInNldChS REtfVVJGX0xJQlMgUmluZ0RlY29tcG9zZXJMaWIgQ0FDSEUKPiBTVFJJTkcgXCJcIiBGT1JDRSlc biIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBw b3J0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNsb3NlIHBvcnQpKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSoKPiAiQ29kZS9HcmFwaE1vbC9N b2xJbnRlcmNoYW5nZS9DTWFrZUxpc3RzLnR4dCIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICgoImlmXFwoTk9UIiBvcmlnKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoc3RyaW5nLWFwcGVuZCAiaWYoMClcbiIgb3JpZykpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoKCJeaW5jbHVkZV9kaXJlY3Rvcmllcy4qIikgImVuZGlmKClcbiIpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogIkV4dGVybmFsL1lBZUhN T1AvRUhUVG9vbHMuY3BwIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiPHlh ZWhtb3AvdGlnaHRiaW5kL2JpbmQuaD4iKQo+ICI8eWFlaG1vcC9iaW5kLmg+IikpKSkKSSB0aGlu ayB5b3UgbWlnaHQgd2FudCB0byB1bmJ1bmRsZSB0aGVzZSB3aXRoIGEgcGF0Y2guCj4gK8KgwqDC oMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ2ZpeC1pbmNoaS1pbmNsdWRlCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzdWJzdGl0dXRlKiAiQ29kZS9jbWFrZS9Nb2R1bGVzL0ZpbmRJbmNoaS5jbWFrZSIKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImluY2hpX2FwaS5oLipcXCkiKSAiaW5j aGkvaW5jaGlfYXBpLmgpIikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoIklO Q0hJX0xJQlJBUlkgTkFNRVMuKlxcKSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICJJTkNISV9MSUJSQVJZIE5BTUVTIGluY2hpIFBBVEhfU1VGRklYRVMgaW5jaGkpIikKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImZpbmRfbGlicmFyeSIgcHJldikKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAibGlzdChBUFBFTkQgQ01BS0VfRklORF9MSUJS QVJZX1NVRkZJWEVTIC5zby4xKVxuIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHByZXYpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJF eHRlcm5hbC9JTkNISS1BUEkvaW5jaGkuY3BwIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKCgiPGluY2hpX2FwaS5oPiIpICI8aW5jaGkvaW5jaGlfYXBpLmg+IikpKSkKPiArwqDC oMKgwqDCoMKgwqDCoMKgIChhZGQtYmVmb3JlICdidWlsZCAnZW5hYmxlLWJ5dGVjb2RlLWRldGVy bWluaXNtCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNldGVudiAiUFlUSE9OSEFTSFNFRUQiICIwIikKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZXRlbnYgIlBZVEhPTkRPTlRXUklURUJZ VEVDT0RFIiAiMSIpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2luc3RhbGwg J3ByZS1jaGVjawo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEqICgjOmtleSBpbnB1 dHMgb3V0cHV0cyAjOmFsbG93LW90aGVyLWtleXMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICh3aXRoLWRpcmVjdG9yeS1leGN1cnNpb24gIi4uL3NvdXJjZSIKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgInNxbGl0ZTMiICJEYXRhL1JERGF0YS5zcWx0Igo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICIucmVhZCBy ZGtpdC9EYmFzZS90ZXN0X2RhdGEvUkREYXRhLnNxbGl0ZSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoaW52b2tlICJzcWxpdGUzIiAiRGF0YS9SRFRlc3RzLnNxbHQiCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi5yZWFkCj4gcmRr aXQvRGJhc2UvdGVzdF9kYXRhL1JEVGVzdHMuc3FsaXRlIikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChzZXRlbnYgIlJEQkFTRSIgKGNhbm9uaWNhbGl6ZS1wYXRoICIuIikpKQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWluc3RhbGxlZC1weXRob25wYXRoIGlu cHV0cyBvdXRwdXRzKSkpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoZGVsZXRlICdjaGVjaykKPiAr wqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3ByZS1jaGVjayAnY2hlY2sKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhKiAoIzprZXkgdGVzdHM/IHBhcmFsbGVsLXRlc3RzPyAj OmFsbG93LW90aGVyLQo+IGtleXMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh3aGVu IHRlc3RzPwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxldCAoKGpvYi1jb3Vu dCAobnVtYmVyLT5zdHJpbmcKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpZiBwYXJhbGxlbC10ZXN0cz8gKHBhcmFs bGVsLWpvYi0KPiBjb3VudCkgMSkpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoaW52b2tlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiY3Rl c3QiICItaiIgam9iLWNvdW50Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAiLUUiIChzdHJpbmctYXBwZW5kCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAiKCIgKHN0cmluZy1qb2luCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJyg7OyBuZWVkIHBpY2tsZWQg ZGF0YQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAiKHB5RGlzY3JldGVWYWx1ZVZlY3QiCj4gInB5U3BhcnNlSW50VmVjdCIK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgImdyYXBobW9sdGVzdFBpY2tsZXIiCj4gInB5UGFydGlhbENoYXJnZXMiCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICJzdWJzdHJ1Y3RMaWJyYXJ5VGVzdCIgInB5RmVhdHVyZXMiCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJweXRob25U ZXN0RGlyTUwiCj4gInB5dGhvblRlc3REaXJDaGVtIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7OyBDYXRjaGluZyBQeXRo b24gZXhjZXB0aW9uIGZhaWxzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJweVJhbmtlcikiKSAifCIpICIpIikpKSkpKSkp KQpJIHRoaW5rIHlvdSBoYXZlIHR3byBsYXllcnMgb2YgYnJhY2tldHMgbm93IOKAkyBkZWxldGUg dGhlIGlubmVyIG9uZXMuCj4gK8KgwqDCoCAobmF0aXZlLWlucHV0cwo+ICvCoMKgwqDCoCAobGlz dCBiaXNvbgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBib29zdAo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoCBjYXRjaDIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgZWlnZW4KPiArwqDCoMKgwqDCoMKg wqDCoMKgwqAgZmxleAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBmcmVlc2FzYQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoCBwa2ctY29uZmlnCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHJhcGlkanNv bgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCB0YXIpKQo+ICvCoMKgwqAgKGlucHV0cwo+ICvCoMKg wqDCoCAobGlzdCBhdmFsb250b29sa2l0Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIGNhaXJvCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgIGNvb3JkZ2VubGlicwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oCBmb250LWNvbWljLW5ldWUKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgZnJlZXR5cGUKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqAgaW5jaGkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWFlcGFyc2Vy Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgIHB5dGhvbgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBy aW5nZGVjb21wb3NlcmxpYgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBzcWxpdGUKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqAgeWFlaG1vcCkpCj4gK8KgwqDCoCAocHJvcGFnYXRlZC1pbnB1dHMKPiAr wqDCoMKgwqAgKGxpc3QgcHl0aG9uLW51bXB5IHB5dGhvbi1jYWlyb2NmZmkgcHl0aG9uLXBpbGxv dykpCj4gK8KgwqDCoCAoaG9tZS1wYWdlICJodHRwczovL3Jka2l0Lm9yZy8iKQo+ICvCoMKgwqAg KHN5bm9wc2lzICJDb2xsZWN0aW9uIG9mIGNoZW1pbmZvcm1hdGljcyBzb2Z0d2FyZSIpCj4gK8Kg wqDCoCAoZGVzY3JpcHRpb24gIlJES2l0IGlzIGEgQysrIGFuZCBQeXRob24gbGlicmFyeSBmb3IK PiBjaGVtaW5mb3JtYXRpY3MsIHdoaWNoCj4gK2luY2x1ZGVzIChhbW9uZyBvdGhlciB0aGluZ3Mp IHRoZSBhbmFseXNpcyBhbmQgbW9kaWZpY2F0aW9uIG9mCj4gbW9sZWN1bGVzIGluIDJECj4gK2Fu ZCAzRCBhbmQgZGVzY3JpcHRvciBnZW5lcmF0aW9uIGZvciBtYWNoaW5lIGxlYXJuaW5nLiIpCj4g K8KgwqDCoCAobGljZW5zZSBsaWNlbnNlOmJzZC0zKSkpCj4gZGlmZiAtLWdpdCBhL2dudS9wYWNr YWdlcy9wYXRjaGVzL3Jka2l0LWNtYWtlLWV4dGVybmFsLQo+IGRlcGVuZGVuY2llcy5wYXRjaCBi L2dudS9wYWNrYWdlcy9wYXRjaGVzL3Jka2l0LWNtYWtlLWV4dGVybmFsLQo+IGRlcGVuZGVuY2ll cy5wYXRjaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMC4uNWI3Mzg2 NGY1MQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9yZGtpdC1j bWFrZS1leHRlcm5hbC1kZXBlbmRlbmNpZXMucGF0Y2gKPiBAQCAtMCwwICsxLDEwMiBAQAo+ICtk aWZmIC11ciBhL0V4dGVybmFsL0ZyZWVTQVNBL0NNYWtlTGlzdHMudHh0Cj4gYi9FeHRlcm5hbC9G cmVlU0FTQS9DTWFrZUxpc3RzLnR4dAo+ICstLS0gYS9FeHRlcm5hbC9GcmVlU0FTQS9DTWFrZUxp c3RzLnR4dAo+ICsrKysgYi9FeHRlcm5hbC9GcmVlU0FTQS9DTWFrZUxpc3RzLnR4dAo+ICtAQCAt MTAsNyArMTAsNyBAQAo+ICvCoMKgIGVuZGlmKCkKPiArIGVuZGlmKCkKPiArIAo+ICstaWYobmVl ZERvd25sb2FkKQo+ICsraWYoRkFMU0UpCj4gK8KgwqAgIyBkb24ndCBhY3R1YWxseSB1c2UgdGhl IG1kNSBoZXJlCj4gK8KgwqAgc2V0KEZSRUVTQVNBX1ZFUlNJT04gIjIuMC4zIikKPiArwqDCoCBz ZXQoRlJFRVNBU0FfU1JDX0RJUiAiJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L2ZyZWVzYXNh LQo+ICR7RlJFRVNBU0FfVkVSU0lPTn0iKQo+ICtAQCAtNjYsMjQgKzY2LDI0IEBACj4gKyBlbmRp ZigpCj4gKyAKPiArIHNldCAoZnJlZXNhc2FfaCAke0ZSRUVTQVNBX1NSQ19ESVJ9L3NyYy9mcmVl c2FzYS5oKQo+ICstZmlsZShSRUFEICR7ZnJlZXNhc2FfaH0gZnJlZXNhc2FfaF9kYXRhKQo+ICsr I2ZpbGUoUkVBRCAke2ZyZWVzYXNhX2h9IGZyZWVzYXNhX2hfZGF0YSkKPiArIHN0cmluZyhSRUdF WCBSRVBMQUNFICIoI2luY2x1ZGUgPHN0ZGlvLmg+KSIgIlxcMVxuI2luY2x1ZGUKPiA8UkRHZW5l cmFsL2V4cG9ydC5oPiIgZnJlZXNhc2FfaF9kYXRhICIke2ZyZWVzYXNhX2hfZGF0YX0iKQo+ICsg c3RyaW5nKFJFR0VYIFJFUExBQ0UKPiAiKFteUl1bXkRdW15LXVteSV1bXlRdW15fXVteRl1bXlJd W15FXVteRV1bXlNdW15BXVteU11bXkFdW15fXVteQ11bXkwKPiBdW15JXVteQl1bXl9dW15FXVte WF1bXlBdW15PXVteUl1bXlRdW14gXSkoZXh0ZXJuIGNvbnN0KSIKPiAiXFwxUkRLSVRfRlJFRVNB U0FfQ0xJQl9FWFBPUlQgXFwyIiBmcmVlc2FzYV9oX2RhdGEKPiAiJHtmcmVlc2FzYV9oX2RhdGF9 IikKPiArLWZpbGUoV1JJVEUgJHtmcmVlc2FzYV9ofSAiJHtmcmVlc2FzYV9oX2RhdGF9IikKPiAr KyNmaWxlKFdSSVRFICR7ZnJlZXNhc2FfaH0gIiR7ZnJlZXNhc2FfaF9kYXRhfSIpCj4gKyAKPiAr IGFkZF9kZWZpbml0aW9ucygtRFVTRV9USFJFQURTPTApCj4gKyBhZGRfZGVmaW5pdGlvbnMoLURV U0VfSlNPTj0wKQo+ICsgYWRkX2RlZmluaXRpb25zKC1EVVNFX1hNTD0wKQo+ICstcmRraXRfbGli cmFyeShmcmVlc2FzYV9jbGliICR7ZnJlZXNhc2FfY2xpYl9zcmNzfSkKPiArLXRhcmdldF9jb21w aWxlX2RlZmluaXRpb25zKGZyZWVzYXNhX2NsaWIgUFJJVkFURQo+IFJES0lUX0ZSRUVTQVNBTElC X0JVSUxEKQo+ICsrI3Jka2l0X2xpYnJhcnkoZnJlZXNhc2FfY2xpYiAke2ZyZWVzYXNhX2NsaWJf c3Jjc30pCj4gKysjdGFyZ2V0X2NvbXBpbGVfZGVmaW5pdGlvbnMoZnJlZXNhc2FfY2xpYiBQUklW QVRFCj4gUkRLSVRfRlJFRVNBU0FMSUJfQlVJTEQpCj4gKyAKPiArIGlmKChNU1ZDIEFORCBSREtf SU5TVEFMTF9ETExTX01TVkMpIE9SICgoTk9UIE1TVkMpIEFORCBXSU4zMikpCj4gK8KgwqAgc2V0 X3RhcmdldF9wcm9wZXJ0aWVzKGZyZWVzYXNhX2NsaWIgUFJPUEVSVElFUwo+IFdJTkRPV1NfRVhQ T1JUX0FMTF9TWU1CT0xTIFRSVUUpCj4gKyBlbmRpZigpCj4gKy1pbmNsdWRlX2RpcmVjdG9yaWVz KCIke0ZSRUVTQVNBX1NSQ19ESVJ9L3NyYyIpCj4gKysjaW5jbHVkZV9kaXJlY3RvcmllcygiJHtG UkVFU0FTQV9TUkNfRElSfS9zcmMiKQo+ICsgCj4gKyByZGtpdF9saWJyYXJ5KEZyZWVTQVNBTGli IFJERnJlZVNBU0EuY3BwIFNIQVJFRCAKPiArLcKgwqDCoCBMSU5LX0xJQlJBUklFUyBmcmVlc2Fz YV9jbGliIEdyYXBoTW9sICkKPiArK8KgwqDCoCBMSU5LX0xJQlJBUklFUyAtbGZyZWVzYXNhIEdy YXBoTW9sICkKPiArIHRhcmdldF9jb21waWxlX2RlZmluaXRpb25zKEZyZWVTQVNBTGliIFBSSVZB VEUKPiBSREtJVF9GUkVFU0FTQUxJQl9CVUlMRCkKPiArIAo+ICsgcmRraXRfaGVhZGVycyhSREZy ZWVTQVNBLmggREVTVCBHcmFwaE1vbCkKPiArZGlmZiAtdXIgYS9FeHRlcm5hbC9ZQWVITU9QL0NN YWtlTGlzdHMudHh0Cj4gYi9FeHRlcm5hbC9ZQWVITU9QL0NNYWtlTGlzdHMudHh0Cj4gKy0tLSBh L0V4dGVybmFsL1lBZUhNT1AvQ01ha2VMaXN0cy50eHQKPiArKysrIGIvRXh0ZXJuYWwvWUFlSE1P UC9DTWFrZUxpc3RzLnR4dAo+ICtAQCAtMTgsMzIgKzE4LDMyIEBACj4gKyAKPiArIGluY2x1ZGVf ZGlyZWN0b3JpZXMoICR7UkRLaXRfRXh0ZXJuYWxEaXJ9L1lBZUhNT1AgKQo+ICsgCj4gKy1FeHRl cm5hbFByb2plY3RfQWRkKHlhZWhtb3BfcHJvamVjdAo+ICstwqAgR0lUX1JFUE9TSVRPUlkgaHR0 cHM6Ly9naXRodWIuY29tL2dyZWdsYW5kcnVtL3lhZWhtb3AuZ2l0Cj4gKy3CoCBHSVRfVEFHIG1h c3Rlcgo+ICstwqAgVVBEQVRFX0NPTU1BTkQgIiIKPiArLcKgIFBBVENIX0NPTU1BTkQgIiIKPiAr LcKgIFBSRUZJWCAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0KPiArLcKgIFNPVVJDRV9ESVIg IiR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS95YWVobW9wIgo+ICstwqAgU09VUkNFX1NVQkRJ UiAidGlnaHRiaW5kIgo+ICstwqAgQ01BS0VfQVJHUyAtRFVTRV9CTEFTX0xBUEFDSz1PRkYgLQo+ IERDTUFLRV9JTlNUQUxMX1BSRUZJWD0ke1BST0pFQ1RfQklOQVJZX0RJUn0gLQo+IERDTUFLRV9D X0ZMQUdTPSR7Q01BS0VfQ19GTEFHU30gLQo+IERDTUFLRV9CVUlMRF9UWVBFPSR7Q01BS0VfQlVJ TERfVFlQRX0KPiArLcKgIFRFU1RfQ09NTUFORCAiIikKPiArLQo+ICstaW5jbHVkZV9kaXJlY3Rv cmllcygke1BST0pFQ1RfQklOQVJZX0RJUn0vaW5jbHVkZSkKPiArLWxpbmtfZGlyZWN0b3JpZXMo JHtQUk9KRUNUX0JJTkFSWV9ESVJ9L2xpYikKPiArLWxpbmtfZGlyZWN0b3JpZXMoJHtDTUFLRV9D VVJSRU5UX1NPVVJDRV9ESVJ9L3NyYy95YWVobW9wX3Byb2plY3QtCj4gYnVpbGQpCj4gKy0KPiAr LXNldChFSFRfUEFSQU1fRklMRQo+ICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS95YWVobW9w L3RpZ2h0YmluZC9laHRfcGFybXMuZGF0ICkKPiArLWluc3RhbGwoRklMRVMgJHtFSFRfUEFSQU1f RklMRX0KPiArLcKgwqDCoMKgwqDCoMKgIERFU1RJTkFUSU9OICR7UkRLaXRfU2hhcmVEaXJ9L0Rh dGEKPiArLcKgwqDCoMKgwqDCoMKgIENPTVBPTkVOVCBkYXRhKQo+ICsrI0V4dGVybmFsUHJvamVj dF9BZGQoeWFlaG1vcF9wcm9qZWN0Cj4gKysjwqAgR0lUX1JFUE9TSVRPUlkgaHR0cHM6Ly9naXRo dWIuY29tL2dyZWdsYW5kcnVtL3lhZWhtb3AuZ2l0Cj4gKysjwqAgR0lUX1RBRyBtYXN0ZXIKPiAr KyPCoCBVUERBVEVfQ09NTUFORCAiIgo+ICsrI8KgIFBBVENIX0NPTU1BTkQgIiIKPiArKyPCoCBQ UkVGSVggJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9Cj4gKysjwqAgU09VUkNFX0RJUiAiJHtD TUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L3lhZWhtb3AiCj4gKysjwqAgU09VUkNFX1NVQkRJUiAi dGlnaHRiaW5kIgo+ICsrI8KgIENNQUtFX0FSR1MgLURVU0VfQkxBU19MQVBBQ0s9T0ZGIC0KPiBE Q01BS0VfSU5TVEFMTF9QUkVGSVg9JHtQUk9KRUNUX0JJTkFSWV9ESVJ9IC0KPiBEQ01BS0VfQ19G TEFHUz0ke0NNQUtFX0NfRkxBR1N9IC0KPiBEQ01BS0VfQlVJTERfVFlQRT0ke0NNQUtFX0JVSUxE X1RZUEV9Cj4gKysjwqAgVEVTVF9DT01NQU5EICIiKQo+ICsrCj4gKysjaW5jbHVkZV9kaXJlY3Rv cmllcygke1BST0pFQ1RfQklOQVJZX0RJUn0vaW5jbHVkZSkKPiArKyNsaW5rX2RpcmVjdG9yaWVz KCR7UFJPSkVDVF9CSU5BUllfRElSfS9saWIpCj4gKysjbGlua19kaXJlY3Rvcmllcygke0NNQUtF X0NVUlJFTlRfU09VUkNFX0RJUn0vc3JjL3lhZWhtb3BfcHJvamVjdC0KPiBidWlsZCkKPiArKwo+ ICsrI3NldChFSFRfUEFSQU1fRklMRQo+ICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS95YWVo bW9wL3RpZ2h0YmluZC9laHRfcGFybXMuZGF0ICkKPiArKyNpbnN0YWxsKEZJTEVTICR7RUhUX1BB UkFNX0ZJTEV9Cj4gKysjwqDCoMKgwqDCoMKgwqAgREVTVElOQVRJT04gJHtSREtpdF9TaGFyZURp cn0vRGF0YQo+ICsrI8KgwqDCoMKgwqDCoMKgIENPTVBPTkVOVCBkYXRhKQo+ICsgCj4gKy1tZXNz YWdlKCJZQWVITU9QIGluY2x1ZGVfZGlyczogJHtQUk9KRUNUX0JJTkFSWV9ESVJ9L2luY2x1ZGUi KQo+ICstbWVzc2FnZSgiWUFlSE1PUCBsaW5rX2RpcnM6ICR7UFJPSkVDVF9CSU5BUllfRElSfS9s aWIKPiAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vc3JjL3lhZWhtb3BfcHJvamVjdC1idWls ZCIpCj4gKysjbWVzc2FnZSgiWUFlSE1PUCBpbmNsdWRlX2RpcnM6ICR7UFJPSkVDVF9CSU5BUllf RElSfS9pbmNsdWRlIikKPiArKyNtZXNzYWdlKCJZQWVITU9QIGxpbmtfZGlyczogJHtQUk9KRUNU X0JJTkFSWV9ESVJ9L2xpYgo+ICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9zcmMveWFlaG1v cF9wcm9qZWN0LWJ1aWxkIikKPiArIAo+ICstcmRraXRfbGlicmFyeShFSFRMaWIgRUhUVG9vbHMu Y3BwIFNIQVJFRCBMSU5LX0xJQlJBUklFUyB5YWVobW9wX2VodAo+IEdyYXBoTW9sICkKPiArK3Jk a2l0X2xpYnJhcnkoRUhUTGliIEVIVFRvb2xzLmNwcCBTSEFSRUQgTElOS19MSUJSQVJJRVMgLQo+ IGx5YWVobW9wX2VodCBHcmFwaE1vbCApCj4gKyB0YXJnZXRfY29tcGlsZV9kZWZpbml0aW9ucyhF SFRMaWIgUFJJVkFURSBSREtJVF9FSFRMSUJfQlVJTEQpCj4gKy1hZGRfZGVwZW5kZW5jaWVzKEVI VExpYiB5YWVobW9wX3Byb2plY3QpCj4gKysjYWRkX2RlcGVuZGVuY2llcyhFSFRMaWIgeWFlaG1v cF9wcm9qZWN0KQo+ICsgcmRraXRfaGVhZGVycyhFSFRUb29scy5oIERFU1QgR3JhcGhNb2wpCj4g KyByZGtpdF9jYXRjaF90ZXN0KHRlc3RFSFRMaWIxIHRlc3QxLmNwcAo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIExJTktfTElCUkFSSUVTIEVIVExpYiBGaWxlUGFyc2VycyBTbWlsZXNQYXJzZSAp CkNoZWVycwoK From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 16:58:40 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 20:58:40 +0000 Received: from localhost ([127.0.0.1]:35083 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Hr-0005Ty-Kq for submit@debbugs.gnu.org; Thu, 13 Oct 2022 16:58:39 -0400 Received: from mout01.posteo.de ([185.67.36.65]:47789) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Ho-0005Th-O8 for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 16:58:38 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id BD2D4240029 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 22:58:30 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694710; bh=UmcE56rSv06qKtH5qIS9dtNKI3vzf2888m7dfEW0LuE=; h=From:To:Subject:Date:From; b=Q+U5u3u8veaXfb3wpIVSC4khLoqNZkTjieJMBIRA9I1HYugj5RLw8TjbOlZPN17Kt s7iWdi38OLMR/d5tgBpEq4yGu5JBgKGi2U9i44wAS4gj3evagIGHGEtoZpTyzob+e1 qlgK5LutAOzTSxDRbeFKksUfTa2k9BblApWIXaJKZz/plqSiMMz8vaLndMmuTTiuI1 kV27aM+PJClexTj0UA3A0cSKP1jVtMME2d2RDidB/GVHi4vxRxMTocTbTpV7IcRj1E LMcIzktIdv3hispIGNIcRBZ2OWVzr2vSiaDYxP3mUlV7rpZ5fc51LGkQnRCrgEQUeU VAtmTpUEHQlYg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMLX6nTGz9rxL; Thu, 13 Oct 2022 22:58:28 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 00/13] Add rdkit v2. In-Reply-To: <94dea77277ecdc07d120d912aa0af43301b74004.camel@gmail.com> Date: Thu, 13 Oct 2022 20:58:28 +0000 Message-ID: <865ygnbfuz.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Freitag, dem 07.10.2022 um 15:21 +0000 schrieb David Elsing: >> Thanks a lot for your comments, they are very helpful! >> Sorry about the descriptions, I took them mostly from upstream. :) >> Are they still too short? > I don't think we can magically poof good descriptions into existence > when upstreams don't provide them. That being said, it's best to clean > up whatever's there. Changing descriptions is a lowball issue, though, > I (or another committer) can do so as we're upstreaming it. > >> I still have the following problems: >> * The tests of tinydir contain a bundled fork of cbehave which uses a >> =C2=A0 (bundled) copy of rlutil, so I left them disabled for now. > I mentioned this in a reply to another message already, but the idea > would be to 1. try to use upstream versions or 2. try to package the > bundles.=20 I noticed that there was only one test anyway, so I just made a patch to run it with the upstream version (which was last updated in 2013). > >> * Building the documentation of yaehmop with pdflatex is not >> reproducible even >> =C2=A0 though I set FORCE_SOURCE_DATE=3D1. Is it even necessary to build= the >> =C2=A0 documentation? > Maybe pdftrailerid can help you? You could also try to convert the > documentation into a reproducible format -- e.g. using pandoc. It worked with \pdfsuppressptexinfo=3D-1. :) > >> * Using @abbr in the description does not work (I also did not find >> it in any >> =C2=A0 other package). > My bad, that should be @acronym. Ok thanks! > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 16:59:30 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 20:59:30 +0000 Received: from localhost ([127.0.0.1]:35089 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Ig-0005VV-3C for submit@debbugs.gnu.org; Thu, 13 Oct 2022 16:59:30 -0400 Received: from mout01.posteo.de ([185.67.36.65]:42889) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Id-0005VF-QR for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 16:59:28 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 4B67F240026 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 22:59:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694762; bh=EipU/HpzbRgf/UuHAbTSlCQMeJbvewMhxGkF+2KCAsA=; h=From:To:Subject:Date:From; b=A6z/Bs/CSazd40ax7i0yDW0o21fq0oig8SRTpmFRlmZ4NWGpjAqWD+r67CM6s8PcA 9wRh//njMnuM4EtV6mfYh9qFDGrMkEoewcUaAXkjhJzMIL1am04rYKijg1BZEqB/KF DY4pELSsPruJLxTc4QM9PZWGrdWxqRiePuNu3sM3SNz0sm5cZUnEm73fRo1brQ38vk GIcgIxwea5Mp4NPTMMjmoqQotI2PG0AAamjT4vkhP5V21jfnDhDwu2DcQbt2o1+EyN jwRybYjnACma/SKZ0uzMgl0rN3LtOiJT0PBx37J/Ohhk9scHMQ4P0dQCghT9M6h/Kr DZ16RZbW+ovoQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMMY60fBz9rxD; Thu, 13 Oct 2022 22:59:21 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 03/13] gnu: Add sajson. In-Reply-To: <8fbe13ce961324619084c6972edcb7a3784f17f8.camel@gmail.com> Date: Thu, 13 Oct 2022 20:59:21 +0000 Message-ID: <864jw7bfti.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwuY29tPiB3cml0ZXM6 DQoNCj4gQW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBE YXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jcHAuc2NtIChzYWpzb24pOiBOZXcgdmFy aWFibGUuDQo+PiAtLS0NCj4+IMKgZ251L3BhY2thZ2VzL2NwcC5zY23CoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDYwDQo+PiArKysrKysrKysrKysr KysrKysrDQo+PiDCoC4uLi9wYXRjaGVzL3NhanNvbi1idWlsZC13aXRoLWdjYzEwLnBhdGNowqDC oMKgwqAgfCA0NSArKysrKysrKysrKysrKw0KPj4gwqAyIGZpbGVzIGNoYW5nZWQsIDEwNSBpbnNl cnRpb25zKCspDQo+PiDCoGNyZWF0ZSBtb2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hlcy9z YWpzb24tYnVpbGQtd2l0aC0NCj4+IGdjYzEwLnBhdGNoDQo+PiANCj4+IGRpZmYgLS1naXQgYS9n bnUvcGFja2FnZXMvY3BwLnNjbSBiL2dudS9wYWNrYWdlcy9jcHAuc2NtDQo+PiBpbmRleCAzOGEy YTllODI5Li5kY2EwMjQ1ZGY1IDEwMDY0NA0KPj4gLS0tIGEvZ251L3BhY2thZ2VzL2NwcC5zY20N Cj4+ICsrKyBiL2dudS9wYWNrYWdlcy9jcHAuc2NtDQo+PiBAQCAtNTcsNiArNTcsNyBAQCAoZGVm aW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNwcCkNCj4+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4 IGJ1aWxkLXN5c3RlbSBnbnUpDQo+PiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0 ZW0gbWVzb24pDQo+PiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gcHl0aG9u KQ0KPj4gK8KgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gc2NvbnMpDQo+PiDCoMKg ICM6dXNlLW1vZHVsZSAoZ3VpeCBtb2R1bGVzKQ0KPj4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXgg Z2V4cCkNCj4+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMpDQo+PiBAQCAtMjAwNSwz ICsyMDA2LDYyIEBAIChkZWZpbmUtcHVibGljIHBvY2tldGZmdC1jcHANCj4+IMKgY29tcHV0aW5n IEZhc3QgRm91cmllciB0cmFuc2Zvcm1hdGlvbnMuwqAgSXQgc3VwcG9ydHMNCj4+IG11bHRpZGlt ZW5zaW9uYWwgYXJyYXlzLA0KPj4gwqBkaWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgc2l6ZXMgYW5k IGNvbXBsZXggdHJhbnNmb3JtYXRpb25zLiIpDQo+PiDCoMKgwqDCoMKgwqAgKGxpY2Vuc2UgbGlj ZW5zZTpic2QtMykpKSkNCj4+ICsNCj4+ICsoZGVmaW5lLXB1YmxpYyBzYWpzb24NCj4+ICvCoCAo bGV0ICgoY29tbWl0ICJlYzY0NDAxM2UzNGY5OTg0YTNjYzliYTU2OGNhYjk3YTM5MWRiOWNkIikN Cj4+ICvCoMKgwqDCoMKgwqDCoCAocmV2aXNpb24gIjAiKSkNCj4+ICvCoMKgwqAgKHBhY2thZ2UN Cj4+ICvCoMKgwqDCoMKgIChuYW1lICJzYWpzb24iKQ0KPj4gK8KgwqDCoMKgwqAgKHZlcnNpb24g KGdpdC12ZXJzaW9uICIxLjAiIHJldmlzaW9uIGNvbW1pdCkpDQo+PiArwqDCoMKgwqDCoCAoc291 cmNlIChvcmlnaW4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBn aXQtZmV0Y2gpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkgKGdpdC1y ZWZlcmVuY2UNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KHVybCAiaHR0cHM6Ly9naXRodWIuY29tL2NoYWRhdXN0aW4vc2Fqc29uIikNCj4+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdCBjb21taXQpKSkNCj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFt ZSBuYW1lIHZlcnNpb24pKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocGF0 Y2hlcw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0Y2hl cyAic2Fqc29uLWJ1aWxkLXdpdGgtZ2NjMTAucGF0Y2giKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHNoYTI1Ng0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChiYXNlMzINCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgDQo+PiAi MGZqYWcyN3c3Z3ZrYzVwZGhxM2FkN3ljMDlyYWJwemFobmR3MXNnc2cwNGlwem5pZG1tcSIpKQ0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxk IHV0aWxzKSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzbmlwcGV0ICco ZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkgInRoaXJkLXBhcnR5IikpKSkNCj4+ICvCoMKgwqDCoMKg IChidWlsZC1zeXN0ZW0gc2NvbnMtYnVpbGQtc3lzdGVtKQ0KPj4gK8KgwqDCoMKgwqAgKGFyZ3Vt ZW50cw0KPj4gK8KgwqDCoMKgwqDCoCAobGlzdA0KPj4gK8KgwqDCoMKgwqDCoMKgICM6cGhhc2Vz DQo+PiArwqDCoMKgwqDCoMKgwqAgI34obW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzDQo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ2Rpc2FibGUtb3Ro ZXItYnVpbGRzDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiU0NvbnN0cnVjdCIN Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImZvciBuYW1lLCB0b29s cyBpbiBidWlsZHM6IikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg ImZvciBuYW1lLCB0b29scyBpbiBbKCdvcHQnLCBbZ2NjLCBvcHRdKV06IikpKSkNCj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAndXNlLWV4dGVybmFsLXVuaXR0 ZXN0LWNwcA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEqICgjOmtleSBp bnB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoc3Vic3RpdHV0ZSogIlNDb25zY3JpcHQiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoKCJ1bml0dGVzdHBwX2VudlxcLkxpYnJhcnkiKSAiX2R1bW15ID0gIikN Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInRlc3RfZW52ID0gZW52 LkNsb25lXFwodG9vbHM9XFxbdW5pdHRlc3RwcCwNCj4+IHNhanNvblxcXVxcKSIpDQo+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kDQo+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInRlc3RfZW52ID0gZW52LkNsb25l KHRvb2xzPVtzYWpzb25dKVxuIg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICJ0ZXN0X2Vudi5BcHBlbmQoQ1BQUEFUSD0nIg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtaW5wdXQtZGlyZWN0b3J5IGlucHV0cw0KPj4g Ii9pbmNsdWRlL1VuaXRUZXN0KysiKQ0KPiBOb3RlIHRoYXQgeW91IG5lZWQgKG9yIG5hdGl2ZS1p bnB1dHMgaW5wdXRzKSB3aGVyZXZlciB5b3Ugd3JvdGUgaW5wdXRzLg0KSXMgJWJ1aWxkLWlucHV0 cyBvaz8NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiJywgTElC UEFUSD0nIg0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJp bmctYXBwZW5kICMkKHRoaXMtcGFja2FnZS1uYXRpdmUtaW5wdXQNCj4+ICJ1bml0dGVzdC1jcHAi KQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICIvbGliIikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAiJywgTElCUz1bJ1VuaXRUZXN0KysnXSkiKSkpKSkNCj4+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdjaGVjaw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChsYW1iZGEqICgjOmtleSB0ZXN0cz8gIzphbGxvdy1vdGhlci1rZXlzKQ0KPj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAod2hlbiB0ZXN0cz8NCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgImJ1aWxkL29wdC90ZXN0IikNCj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnZva2UgImJ1aWxkL29wdC90ZXN0 X3Vuc29ydGVkIikpKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChyZXBsYWNlICdpbnN0 YWxsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfDQo+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsZXQgKChvdXQgKHN0cmluZy1hcHBlbmQgIyRvdXRw dXQgIi9pbmNsdWRlIikpKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGluc3RhbGwtZmlsZSAiaW5jbHVkZS9zYWpzb24uaCIgb3V0KQ0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluc3RhbGwtZmlsZSAiaW5jbHVkZS9zYWpzb25fb3N0cmVh bS5oIg0KPj4gb3V0KSkpKSkpKQ0KPiBGb3IgdGhlIHJlY29yZCwgd2hhdCB3b3VsZCBhIHJlZ3Vs YXIgaW5zdGFsbCBkbz8NCkp1c3Qgbm90aGluZy4NCj4+ICvCoMKgwqDCoMKgIChuYXRpdmUtaW5w dXRzIChsaXN0IHVuaXR0ZXN0LWNwcCkpDQo+PiArwqDCoMKgwqDCoCAoaG9tZS1wYWdlICJodHRw czovL2dpdGh1Yi5jb20vY2hhZGF1c3Rpbi9zYWpzb24iKQ0KPj4gK8KgwqDCoMKgwqAgKHN5bm9w c2lzICJDKysxMSBoZWFkZXItb25seSwgaW4tcGxhY2UgSlNPTiBwYXJzZXIiKQ0KPj4gK8KgwqDC oMKgwqAgKGRlc2NyaXB0aW9uICJAY29kZXtzYWpzb259IGlzIGFuIGluLXBsYWNlIEpTT04gcGFy c2VyIHdpdGgNCj4+IHN1cHBvcnQgZm9yDQo+PiArcGFyc2luZyB3aXRoIG9ubHkgYSBzaW5nbGUg bWVtb3J5IGFsbG9jYXRpb24uIikNCj4+ICvCoMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6ZXhw YXQpKSkpDQo+PiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWJ1aWxk LXdpdGgtZ2NjMTAucGF0Y2gNCj4+IGIvZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWJ1aWxk LXdpdGgtZ2NjMTAucGF0Y2gNCj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+PiBpbmRleCAwMDAw MDAwMDAwLi44Nzg3MDZkYzc5DQo+PiAtLS0gL2Rldi9udWxsDQo+PiArKysgYi9nbnUvcGFja2Fn ZXMvcGF0Y2hlcy9zYWpzb24tYnVpbGQtd2l0aC1nY2MxMC5wYXRjaA0KPj4gQEAgLTAsMCArMSw0 NSBAQA0KPj4gK1RoaXMgcGF0Y2ggaXMgZnJvbSB0aGUgdXBzdHJlYW0gcHVsbCByZXF1ZXN0DQo+ PiAraHR0cHM6Ly9naXRodWIuY29tL2NoYWRhdXN0aW4vc2Fqc29uL3B1bGwvNTQuDQo+PiArSXQg Zml4ZXMgbGlua2luZyB3aXRoIEdDQy4NCj4+ICsNCj4+ICtkaWZmIC0tZ2l0IGEvaW5jbHVkZS9z YWpzb24uaCBiL2luY2x1ZGUvc2Fqc29uLmgNCj4+ICtpbmRleCA4YjRlMDVhLi4xYmQwNDViIDEw MDY0NA0KPj4gKy0tLSBhL2luY2x1ZGUvc2Fqc29uLmgNCj4+ICsrKysgYi9pbmNsdWRlL3NhanNv bi5oDQo+PiArQEAgLTEzOCwxMiArMTM4LDE3IEBAIGNvbnN0ZXhwciBpbmxpbmUgc2l6ZV90IG1h a2VfZWxlbWVudCh0YWcgdCwNCj4+IHNpemVfdCB2YWx1ZSkgew0KPj4gKyAvLyBoZWFkZXIuIFRo aXMgdHJpY2sgY291cnRlc3kgb2YgUmljaCBHZWxkcmVpY2gncyBQdXJwbGUgSlNPTg0KPj4gcGFy c2VyLg0KPj4gKyB0ZW1wbGF0ZSA8dHlwZW5hbWUgdW51c2VkID0gdm9pZD4NCj4+ICsgc3RydWN0 IGdsb2JhbHNfc3RydWN0IHsNCj4+ICsrwqDCoMKgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IHBhcnNlX2ZsYWdzWzI1Nl07DQo+PiArK307DQo+PiArK3R5cGVkZWYgZ2xvYmFsc19zdHJ1Y3Q8 PiBnbG9iYWxzOw0KPj4gKysNCj4+ICsgLy8gY2xhbmctZm9ybWF0IG9mZg0KPj4gKyANCj4+ICvC oMKgwqDCoCAvLyBiaXQgMCAoMSkgLSBzZXQgaWY6IHBsYWluIEFTQ0lJIHN0cmluZyBjaGFyYWN0 ZXINCj4+ICvCoMKgwqDCoCAvLyBiaXQgMSAoMikgLSBzZXQgaWY6IHdoaXRlc3BhY2UNCj4+ICvC oMKgwqDCoCAvLyBiaXQgNCAoMHgxMCkgLSBzZXQgaWY6IDAtOSBlIEUgLg0KPj4gKy3CoMKgwqAg Y29uc3RleHByIHN0YXRpYyBjb25zdCB1aW50OF90IHBhcnNlX2ZsYWdzWzI1Nl0gPSB7DQo+PiAr K8KgwqDCoCB0ZW1wbGF0ZSA8dHlwZW5hbWUgdW51c2VkPg0KPj4gKyvCoMKgwqAgY29uc3QgdW5z aWduZWQgY2hhciBnbG9iYWxzX3N0cnVjdDx1bnVzZWQ+OjpwYXJzZV9mbGFnc1syNTZdID0NCj4+ IHsNCj4+ICvCoMKgwqDCoMKgIC8vIDDCoMKgwqAgMcKgwqDCoCAywqDCoMKgIDPCoMKgwqAgNMKg wqDCoCA1wqDCoMKgIDbCoMKgwqAgN8KgwqDCoMKgwqAgOMKgwqDCoCA5wqDCoMKgIEHCoMKgwqAN Cj4+IELCoMKgwqAgQ8KgwqDCoCBEwqDCoMKgIEXCoMKgwqAgRg0KPj4gK8KgwqDCoMKgwqDCoMKg wqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDC oMKgwqAgMCzCoMKgIDIswqDCoCAyLMKgwqANCj4+IDAswqDCoCAwLMKgwqAgMizCoMKgIDAswqDC oCAwLCAvLyAwDQo+PiArwqDCoMKgwqDCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKg wqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoA0K Pj4gMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgIDAsIC8vIDENCj4+ICtAQCAtMTYyLDE1ICsx NjcsMTMgQEAgc3RydWN0IGdsb2JhbHNfc3RydWN0IHsNCj4+ICvCoMKgwqDCoCB9Ow0KPj4gKyAN Cj4+ICsgLy8gY2xhbmctZm9ybWF0IG9uDQo+PiArLX07DQo+PiArLXR5cGVkZWYgZ2xvYmFsc19z dHJ1Y3Q8PiBnbG9iYWxzOw0KPj4gKyANCj4+ICstY29uc3RleHByIGlubGluZSBib29sIGlzX3Bs YWluX3N0cmluZ19jaGFyYWN0ZXIoY2hhciBjKSB7DQo+PiArK2lubGluZSBib29sIGlzX3BsYWlu X3N0cmluZ19jaGFyYWN0ZXIoY2hhciBjKSB7DQo+PiArwqDCoMKgwqAgLy8gcmV0dXJuIGMgPj0g MHgyMCAmJiBjIDw9IDB4N2YgJiYgYyAhPSAweDIyICYmIGMgIT0gMHg1YzsNCj4+ICvCoMKgwqDC oCByZXR1cm4gKGdsb2JhbHM6OnBhcnNlX2ZsYWdzW3N0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+ KGMpXSAmDQo+PiAxKSAhPSAwOw0KPj4gKyB9DQo+PiArIA0KPj4gKy1jb25zdGV4cHIgaW5saW5l IGJvb2wgaXNfd2hpdGVzcGFjZShjaGFyIGMpIHsNCj4+ICsraW5saW5lIGJvb2wgaXNfd2hpdGVz cGFjZShjaGFyIGMpIHsNCj4+ICvCoMKgwqDCoCAvLyByZXR1cm4gYyA9PSAnXHInIHx8IGMgPT0g J1xuJyB8fCBjID09ICdcdCcgfHwgYyA9PSAnICc7DQo+PiArwqDCoMKgwqAgcmV0dXJuIChnbG9i YWxzOjpwYXJzZV9mbGFnc1tzdGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyPihjKV0gJg0KPj4gMikg IT0gMDsNCj4+ICsgfQ0K From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:00:22 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:00:22 +0000 Received: from localhost ([127.0.0.1]:35094 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5JU-0005Yj-PV for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:00:22 -0400 Received: from mout02.posteo.de ([185.67.36.66]:59393) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5JQ-0005YJ-ME for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:00:18 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id A8E59240103 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:00:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694810; bh=oZeTnAgffM4vUcu+MB0DAcvpZlo/H1cKq8jILuasxpw=; h=From:To:Subject:Date:From; b=PvmV3w6gJoG8a/d4HGo9q7uCWBmASRJq7XdrTMqIQh0hy+BXSdxxuO1I2kY+pzpiO IiIrdqYGv/Ob/hMvCvZUpCzQqzz5A0xGkdXKU3eo4Lj/j0DKABWhMWYo4w2CrpAVJc Ui74c8TZIk47TFkq0RS2hVZAL9OSRyYWq9HVXzMKXUCvaB4o5/kkZy4qPFbGNmPqIa qe9rC8TDLSvAR2nxygjfSla3H7NbwiYJMLwht06erOINV/KQCKw9lldw13iFr/WXuO hFalHnjMcPeS3PKB8ZgJ99zWXDxbs1qZQE3JB8ZXWWjvGTrpKHwf5ngMUQyCiTsB2M /TmjSyqN5jSHA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMNR4bWKz9rxL; Thu, 13 Oct 2022 23:00:07 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 06/13] gnu: Add gemmi. In-Reply-To: <41a42d6bd81ec3a1c63d65286d97a419be25db72.camel@gmail.com> Date: Thu, 13 Oct 2022 21:00:07 +0000 Message-ID: <8635brbfs8.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Freitag, dem 07.10.2022 um 15:21 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (gemmi): New variable. >> --- >> =C2=A0gnu/packages/chemistry.scm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 118 +++++++++++ >> =C2=A0.../patches/gemmi-fix-sajson-types.patch=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 |=C2=A0 11 + >> =C2=A0.../sajson-for-gemmi-build-with-gcc10.patch=C2=A0=C2=A0 |=C2=A0 45= ++++ >> =C2=A0.../sajson-for-gemmi-numbers-as-strings.patch | 195 >> ++++++++++++++++++ >> =C2=A04 files changed, 369 insertions(+) >> =C2=A0create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.pat= ch >> =C2=A0create mode 100644 gnu/packages/patches/sajson-for-gemmi-build-wit= h- >> gcc10.patch >> =C2=A0create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-a= s- >> strings.patch >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index c517610fe8..d8f1608a3a 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -6,6 +6,7 @@ >> =C2=A0;;; Copyright =C2=A9 2020 Bj=C3=B6rn H=C3=B6fling >> >> =C2=A0;;; Copyright =C2=A9 2020 Vincent Legoll >> =C2=A0;;; Copyright =C2=A9 2021 Ricardo Wurmus >> +;;; Copyright =C2=A9 2022 David Elsing >> =C2=A0;;; >> =C2=A0;;; This file is part of GNU Guix. >> =C2=A0;;; >> @@ -23,6 +24,7 @@ >> =C2=A0;;; along with GNU Guix.=C2=A0 If not, see >> . >> =C2=A0 >> =C2=A0(define-module (gnu packages chemistry) >> +=C2=A0 #:use-module (guix gexp) >> =C2=A0=C2=A0 #:use-module (guix packages) >> =C2=A0=C2=A0 #:use-module (guix utils) >> =C2=A0=C2=A0 #:use-module ((guix licenses) #:prefix license:) >> @@ -35,6 +37,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages boost) >> =C2=A0=C2=A0 #:use-module (gnu packages check) >> =C2=A0=C2=A0 #:use-module (gnu packages compression) >> +=C2=A0 #:use-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> @@ -50,8 +53,10 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages qt) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> +=C2=A0 #:use-module (gnu packages stb) >> =C2=A0=C2=A0 #:use-module (gnu packages xml) >> =C2=A0=C2=A0 #:use-module (guix build-system cmake) >> +=C2=A0 #:use-module (guix build-system copy) >> =C2=A0=C2=A0 #:use-module (guix build-system gnu) >> =C2=A0=C2=A0 #:use-module (guix build-system python)) >> =C2=A0 >> @@ -566,3 +571,116 @@ (define-public python-pymol >> =C2=A0used to prepare publication-quality figures, to share interactive >> results with >> =C2=A0your colleagues, or to generate pre-rendered animations.") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3))) >> + >> +(define-public sajson-for-gemmi >> +=C2=A0 (package/inherit sajson >> +=C2=A0=C2=A0=C2=A0 (name "sajson-for-gemmi") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (inherit (package-source sajson)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches (search-patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "sajs= on-for-gemmi-numbers-as-strings.patch" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "sajs= on-for-gemmi-build-with- >> gcc10.patch")))) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (substitute-keyword-arguments (package-argumen= ts sajson) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ((#:tests? _ #f) #f) > Don't forget the comment as to why they're disabled. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ((#:phases phases) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases #$phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (del= ete 'build))))))) > Why is the build deleted? It fails due to the change and only builds the tests anyway. > > Split here. >> +(define-public gemmi >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "gemmi") >> +=C2=A0=C2=A0=C2=A0 (version "0.5.7") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/proj= ect-gemmi/gemmi") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" ve= rsion)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "00km5q726bslrw7xbfwb3f3mrsk19qbimfnl3hvr4wi1y3z8i18a")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (search-patches "gemmi-fix-sajson-types.patch")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 '(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively >> "include/gemmi/third_party") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively "third_party")))= )) >> +=C2=A0=C2=A0=C2=A0 (outputs '("out" "bin" "python")) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (native-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list fast-float >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 optionpars= er >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pegtl >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pocketfft-= cpp >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pybind11 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sajson-for= -gemmi >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 stb-sprintf >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tinydir)) >> +=C2=A0=C2=A0=C2=A0 (inputs (list python zlib)) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(let* ((python-lib >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 #$output:python "/lib/python" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(version-major+minor (package-version python)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "/site-packages"))) > Note that python-build-system has a (site-packages) procedure. Writing > the boilerplate to include it in the build shouldn't be much worse in > terms of lines than what you're doing here. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (list "-DUSE_PYT= HON=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (string-append "-DPYTHON_INSTALL_DIR=3D" python-lib))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'patch-includes >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/sprintf.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/dirwalk.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/tinydir.h\"") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/cif.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/tao/pegtl.hpp\"") >> "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/json.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/sajson.h\"") "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "python/gemmi.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* '("include/gemmi/atof.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 "include/gemmi/numb.hpp") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/fast_float.h\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/fourier.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\"third_party/pocketfft_hdronly.h\"") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "")))) > I'd collect all the files into a (list ...) and then write out the > substitutes. Is it preferred to put list elements on separate lines (also in inputs)? > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'patc= h-includes 'patch-cif >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "include/gemmi/cif.hpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (((string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "^.*using analyze_t =3D pegtl::anal= ysis::generic" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ";= .*$")) "") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("TAOCPP_PEGTL_") "TAO_PEGTL_")))) > Uhm... I think I'd prefer a patch for this one. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'change-bin-prefix >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "CMakeLists.txt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("install\\(TARGETS program DESTINATION bin\\)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "install(TARGETS program DESTINATION " >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$output:bin "/bin)"))))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (replace 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key tests? #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (with-directory-excursion "../source" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONPATH" "../build") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke "python3" "-m" "unittest" "discov= er" "-v" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "-s" "tests")))))))) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://gemmi.readthedocs.io/en/latest/") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Macromolecular crystallography library and >> utilities") >> +=C2=A0=C2=A0=C2=A0 (description "GEMMI is a C++ library for macromolecu= lar >> crystallography. >> +It can be used for working with >> +@enumerate >> +@item macromolecular models (content of PDB, PDBx/mmCIF and mmJSON >> files), >> +@item refinement restraints (CIF files), >> +@item reflection data (MTZ and mmCIF formats), >> +@item data on a 3D grid (electron density maps, masks, MRC/CCP4 >> format) >> +@item crystallographic symmetry. >> +@end enumerate") >> +=C2=A0=C2=A0=C2=A0 (license license:mpl2.0))) >> diff --git a/gnu/packages/patches/gemmi-fix-sajson-types.patch >> b/gnu/packages/patches/gemmi-fix-sajson-types.patch >> new file mode 100644 >> index 0000000000..9633ddac8b >> --- /dev/null >> +++ b/gnu/packages/patches/gemmi-fix-sajson-types.patch >> @@ -0,0 +1,11 @@ >> +diff -ur a/include/gemmi/json.hpp b/include/gemmi/json.hpp >> +--- a/include/gemmi/json.hpp >> ++++ b/include/gemmi/json.hpp >> +@@ -38,6 +38,7 @@ >> +=20 >> + inline std::string as_cif_value(const sajson::value& val) { >> +=C2=A0=C2=A0 switch (val.get_type()) { >> ++=C2=A0=C2=A0=C2=A0 case sajson::TYPE_INTEGER: >> +=C2=A0=C2=A0=C2=A0=C2=A0 case sajson::TYPE_DOUBLE: >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return val.as_string(); >> +=C2=A0=C2=A0=C2=A0=C2=A0 case sajson::TYPE_NULL: >> diff --git a/gnu/packages/patches/sajson-for-gemmi-build-with- >> gcc10.patch b/gnu/packages/patches/sajson-for-gemmi-build-with- >> gcc10.patch >> new file mode 100644 >> index 0000000000..878706dc79 >> --- /dev/null >> +++ b/gnu/packages/patches/sajson-for-gemmi-build-with-gcc10.patch >> @@ -0,0 +1,45 @@ >> +This patch is from the upstream pull request >> +https://github.com/chadaustin/sajson/pull/54. >> +It fixes linking with GCC. >> + >> +diff --git a/include/sajson.h b/include/sajson.h >> +index 8b4e05a..1bd045b 100644 >> +--- a/include/sajson.h >> ++++ b/include/sajson.h >> +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, >> size_t value) { >> + // header. This trick courtesy of Rich Geldreich's Purple JSON >> parser. >> + template >> + struct globals_struct { >> ++=C2=A0=C2=A0=C2=A0 static const unsigned char parse_flags[256]; >> ++}; >> ++typedef globals_struct<> globals; >> ++ >> + // clang-format off >> +=20 >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 0 (1) - set if: plain ASCII string char= acter >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 1 (2) - set if: whitespace >> +=C2=A0=C2=A0=C2=A0=C2=A0 // bit 4 (0x10) - set if: 0-9 e E . >> +-=C2=A0=C2=A0=C2=A0 constexpr static const uint8_t parse_flags[256] =3D= { >> ++=C2=A0=C2=A0=C2=A0 template >> ++=C2=A0=C2=A0=C2=A0 const unsigned char globals_struct::parse_f= lags[256] =3D >> { >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // 0=C2=A0=C2=A0=C2=A0 1=C2=A0=C2=A0=C2= =A0 2=C2=A0=C2=A0=C2=A0 3=C2=A0=C2=A0=C2=A0 4=C2=A0=C2=A0=C2=A0 5=C2=A0=C2= =A0=C2=A0 6=C2=A0=C2=A0=C2=A0 7=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 8=C2=A0=C2=A0= =C2=A0 9=C2=A0=C2=A0=C2=A0 A=C2=A0=C2=A0=C2=A0 >> B=C2=A0=C2=A0=C2=A0 C=C2=A0=C2=A0=C2=A0 D=C2=A0=C2=A0=C2=A0 E=C2=A0=C2= =A0=C2=A0 F >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 2,=C2=A0=C2=A0 2,=C2=A0= =C2=A0 >> 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 2,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0, // 0 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2= =A0=C2=A0 0,=C2=A0=C2=A0=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0= =C2=A0 >> 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0,=C2=A0=C2=A0 0, // 1 >> +@@ -162,15 +167,13 @@ struct globals_struct { >> +=C2=A0=C2=A0=C2=A0=C2=A0 }; >> +=20 >> + // clang-format on >> +-}; >> +-typedef globals_struct<> globals; >> +=20 >> +-constexpr inline bool is_plain_string_character(char c) { >> ++inline bool is_plain_string_character(char c) { >> +=C2=A0=C2=A0=C2=A0=C2=A0 // return c >=3D 0x20 && c <=3D 0x7f && c !=3D= 0x22 && c !=3D 0x5c; >> +=C2=A0=C2=A0=C2=A0=C2=A0 return (globals::parse_flags[static_cast(c)] & >> 1) !=3D 0; >> + } >> +=20 >> +-constexpr inline bool is_whitespace(char c) { >> ++inline bool is_whitespace(char c) { >> +=C2=A0=C2=A0=C2=A0=C2=A0 // return c =3D=3D '\r' || c =3D=3D '\n' || c = =3D=3D '\t' || c =3D=3D ' '; >> +=C2=A0=C2=A0=C2=A0=C2=A0 return (globals::parse_flags[static_cast(c)] & >> 2) !=3D 0; >> + } >> diff --git a/gnu/packages/patches/sajson-for-gemmi-numbers-as- >> strings.patch b/gnu/packages/patches/sajson-for-gemmi-numbers-as- >> strings.patch >> new file mode 100644 >> index 0000000000..6f476b8583 >> --- /dev/null >> +++ b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch >> @@ -0,0 +1,195 @@ >> +Patch for gemmi: Keep numbers in JSON file as strings. >> + >> +Adapted from this commit of the bundled fork of sajson in gemmi: >> + >> https://github.com/project-gemmi/gemmi/commit/fccbca4f6040364ba708613e >> 1429c2251872240d >> + >> +diff -ur a/include/sajson.h b/include/sajson.h >> +--- a/include/sajson.h >> ++++ b/include/sajson.h >> +@@ -411,43 +411,6 @@ >> + }; >> + } // namespace internal >> +=20 >> +-namespace integer_storage { >> +-enum { word_length =3D 1 }; >> +- >> +-inline int load(const size_t* location) { >> +-=C2=A0=C2=A0=C2=A0 int value; >> +-=C2=A0=C2=A0=C2=A0 memcpy(&value, location, sizeof(value)); >> +-=C2=A0=C2=A0=C2=A0 return value; >> +-} >> +- >> +-inline void store(size_t* location, int value) { >> +-=C2=A0=C2=A0=C2=A0 // NOTE: Most modern compilers optimize away this c= onstant-size >> +-=C2=A0=C2=A0=C2=A0 // memcpy into a single instruction. If any don't, = and treat >> +-=C2=A0=C2=A0=C2=A0 // punning through a union as legal, they can be sp= ecial-cased. >> +-=C2=A0=C2=A0=C2=A0 static_assert( >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sizeof(value) <=3D sizeof(*= location), >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "size_t must not be smaller= than int"); >> +-=C2=A0=C2=A0=C2=A0 memcpy(location, &value, sizeof(value)); >> +-} >> +-} // namespace integer_storage >> +- >> +-namespace double_storage { >> +-enum { word_length =3D sizeof(double) / sizeof(size_t) }; >> +- >> +-inline double load(const size_t* location) { >> +-=C2=A0=C2=A0=C2=A0 double value; >> +-=C2=A0=C2=A0=C2=A0 memcpy(&value, location, sizeof(double)); >> +-=C2=A0=C2=A0=C2=A0 return value; >> +-} >> +- >> +-inline void store(size_t* location, double value) { >> +-=C2=A0=C2=A0=C2=A0 // NOTE: Most modern compilers optimize away this c= onstant-size >> +-=C2=A0=C2=A0=C2=A0 // memcpy into a single instruction. If any don't, = and treat >> +-=C2=A0=C2=A0=C2=A0 // punning through a union as legal, they can be sp= ecial-cased. >> +-=C2=A0=C2=A0=C2=A0 memcpy(location, &value, sizeof(double)); >> +-} >> +-} // namespace double_storage >> +- >> + /// Represents a JSON value.=C2=A0 First, call get_type() to check its >> type, >> + /// which determines which methods are available. >> + /// >> +@@ -585,70 +548,10 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return length; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +-=C2=A0=C2=A0=C2=A0 /// If a numeric value was parsed as a 32-bit integ= er, returns >> it. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER. >> +-=C2=A0=C2=A0=C2=A0 int get_integer_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::integer); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return integer_storage::loa= d(payload); >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// If a numeric value was parsed as a double, retu= rns it. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 double get_double_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return double_storage::load= (payload); >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// Returns a numeric value as a double-precision f= loat. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER or TYP= E_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 double get_number_value() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_2(tag::integer, = tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (value_tag =3D=3D tag::i= nteger) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn get_integer_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } else { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn get_double_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +-=C2=A0=C2=A0=C2=A0 /// Returns true and writes to the output argument = if the >> numeric value >> +-=C2=A0=C2=A0=C2=A0 /// fits in a 53-bit integer.=C2=A0 This is useful = for timestamps >> and other >> +-=C2=A0=C2=A0=C2=A0 /// situations where integral values with greater t= han 32-bit >> precision >> +-=C2=A0=C2=A0=C2=A0 /// are used, as 64-bit values are not understood b= y all JSON >> +-=C2=A0=C2=A0=C2=A0 /// implementations or languages. >> +-=C2=A0=C2=A0=C2=A0 /// Returns false if the value is not an integer or= not in >> range. >> +-=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_INTEGER or TYP= E_DOUBLE. >> +-=C2=A0=C2=A0=C2=A0 bool get_int53_value(int64_t* out) const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // Make sure the output var= iable is always defined to avoid >> any >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // possible situation like >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // >> https://gist.github.com/chadaustin/2c249cb850619ddec05b23ca42cf7a18 >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *out =3D 0; >> +- >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_2(tag::integer, = tag::double_); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 switch (value_tag) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 case tag::integer: >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *ou= t =3D get_integer_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn true; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 case tag::double_: { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dou= ble v =3D get_double_value(); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (v < -(1LL << 53) || v > (1LL << 53)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int= 64_t as_int =3D static_cast(v); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (as_int !=3D v) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 *ou= t =3D as_int; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn true; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 default: >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn false; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0 } >> +- >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Returns the length of the string. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 size_t get_string_length() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return payload[1] - pa= yload[0]; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +@@ -659,7 +562,7 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// embedded NULs. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 const char* as_cstring() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return text + payload[= 0]; >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> +@@ -667,7 +570,7 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Returns a string's value as a std::string. >> +=C2=A0=C2=A0=C2=A0=C2=A0 /// Only legal if get_type() is TYPE_STRING. >> +=C2=A0=C2=A0=C2=A0=C2=A0 std::string as_string() const { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag(tag::string); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert_tag_3(tag::string, t= ag::integer, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return std::string(tex= t + payload[0], text + payload[1]); >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> + #endif >> +@@ -690,6 +593,10 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert(e1 =3D=3D value= _tag || e2 =3D=3D value_tag); >> +=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=20 >> ++=C2=A0=C2=A0=C2=A0 void assert_tag_3(tag e1, tag e2, tag e3) const { >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 assert(e1 =3D=3D value_tag = || e2 =3D=3D value_tag || e3 =3D=3D >> value_tag); >> ++=C2=A0=C2=A0=C2=A0 } >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0 void assert_in_bounds(size_t i) const { assert= (i < >> get_length()); } >> +=20 >> +=C2=A0=C2=A0=C2=A0=C2=A0 const tag value_tag; >> +@@ -2059,6 +1966,8 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0 std::pair parse_number(c= har* p) { >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 using internal::tag; >> +=20 >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0size_t start =3D p - input.get_dat= a(); >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // Assume 32-bit, two'= s complement integers. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 static constexpr unsig= ned RISKY =3D INT_MAX / 10u; >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned max_digit_aft= er_risky =3D INT_MAX % 10u; >> +@@ -2235,23 +2144,18 @@ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 u =3D 0u - u; >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 } >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> ++ >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bool success; >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 size_t* out =3D allocator.r= eserve(2, &success); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (SAJSON_UNLIKELY(!succes= s)) { >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret= urn std::make_pair(oom(p, "number"), tag::null); >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 out[0] =3D start; >> ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 out[1] =3D p - input.get_da= ta(); >> ++ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (try_double) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 boo= l success; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 siz= e_t* out >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =3D allocator.reserve(double_storage::word_length, >> &success); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (SAJSON_UNLIKELY(!success)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return std::make_pair(oom(p, "double"), tag::null); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dou= ble_storage::store(out, d); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 return std::make_pair(p, tag::double_); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } else { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 boo= l success; >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 siz= e_t* out >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =3D allocator.reserve(integer_storage::word_length, >> &success); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = (SAJSON_UNLIKELY(!success)) { >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 return std::make_pair(oom(p, "integer"), >> tag::null); >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int= eger_storage::store(out, static_cast(u)); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 return std::make_pair(p, tag::integer); >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } >> +=C2=A0=C2=A0=C2=A0=C2=A0 } From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:00:40 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:00:40 +0000 Received: from localhost ([127.0.0.1]:35098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Jo-0005Zb-6s for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:00:40 -0400 Received: from mout01.posteo.de ([185.67.36.65]:41025) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Jn-0005ZI-4Q for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:00:39 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 9C421240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:00:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694833; bh=kNJULLInCPSeHissFd0V8ok8CwfB/AWRmPXekd9EPNQ=; h=From:To:Subject:Date:From; b=CzwXDdmGIuA/6bHS4r3jrxqVk3Y+kAd2r4Gy/eMu6ojprO739wnac3oFUXohn4o+f oGWL8tTEaMc0O+HRqpfyq0kKyXN10LHCx0MweDt1lAf0O4jgiRQmkKBHQqAmKPSUHB l7pdBSqsQ744+PoywsDaDnI50KaVvyWCuq3M5gM8495bHK77dAw39gPp2roBAvpFwM IBs0ko1dl5hitG0CFN1lP4hvzSKodIuTD+XA22iaroHb2XRYXlsQpXdQ6WFUIoEN+b fOA0FROnkOgBH0hm3qAXmZnNepINzeSvdt9tzpSfqVrLPN8DFftdOdKbhreug7mPuO 3SKkuyG1Wt+Hw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMNw1CN6z6tq0; Thu, 13 Oct 2022 23:00:32 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 09/13] gnu: Add coordgenlibs. In-Reply-To: Date: Thu, 13 Oct 2022 21:00:31 +0000 Message-ID: <861qrbbfrk.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwuY29tPiB3cml0ZXM6 DQoNCj4gQW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBE YXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIChjb29yZGdlbmxp YnMpOiBOZXcgdmFyaWFibGUuDQo+PiAtLS0NCj4+IMKgZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5z Y20gfCAyNyArKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4+IMKgMSBmaWxlIGNoYW5nZWQs IDI3IGluc2VydGlvbnMoKykNCj4+IA0KPj4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVt aXN0cnkuc2NtIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20NCj4+IGluZGV4IDZlYjFlNGE2 OTQuLjE1MTBjYmFiNDEgMTAwNjQ0DQo+PiAtLS0gYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNj bQ0KPj4gKysrIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20NCj4+IEBAIC03OTEsMyArNzkx LDMwIEBAIChkZWZpbmUtcHVibGljIG1hZXBhcnNlcg0KPj4gwqDCoMKgwqAgKHN5bm9wc2lzICJN YWVzdHJvIGZpbGUgcGFyc2VyIikNCj4+IMKgwqDCoMKgIChkZXNjcmlwdGlvbiAibWFlcGFyc2Vy IGlzIGEgcGFyc2VyIGZvciBTY2hyb2RpbmdlciBNYWVzdHJvDQo+PiBmaWxlcy4iKQ0KPj4gwqDC oMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpleHBhdCkpKQ0KPj4gKw0KPj4gKyhkZWZpbmUtcHVibGlj IGNvb3JkZ2VubGlicw0KPj4gK8KgIChwYWNrYWdlDQo+PiArwqDCoMKgIChuYW1lICJjb29yZGdl bmxpYnMiKQ0KPj4gK8KgwqDCoCAodmVyc2lvbiAiMy4wLjEiKQ0KPj4gK8KgwqDCoCAoc291cmNl IChvcmlnaW4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWV0aG9kIGdpdC1mZXRj aCkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodXJpIChnaXQtcmVmZXJlbmNlDQo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVybA0KPj4gImh0dHBz Oi8vZ2l0aHViLmNvbS9zY2hyb2Rpbmdlci9jb29yZGdlbmxpYnMvIikNCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2 ZXJzaW9uKSkpKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmaWxlLW5hbWUgKGdp dC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc2hhMjU2DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYmFzZTMyDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgDQo+PiAiMGQwOXgzdjM4aTl5MTg0Ym1sMDIw YnE3eGl6ZHJkd25nMzhxbWR4bHBsemZocWtqZGlkdiIpKSkpDQo+PiArwqDCoMKgIChidWlsZC1z eXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQ0KPj4gK8KgwqDCoCAobmF0aXZlLWlucHV0cyAobGlz dCBib29zdCkpDQo+PiArwqDCoMKgIChpbnB1dHMgKGxpc3QgbWFlcGFyc2VyKSkNCj4+ICvCoMKg wqAgKGFyZ3VtZW50cw0KPj4gK8KgwqDCoMKgIChsaXN0DQo+PiArwqDCoMKgwqDCoCAjOmNvbmZp Z3VyZS1mbGFncw0KPj4gK8KgwqDCoMKgwqAgI34obGlzdCAiLURDT09SREdFTl9SSUdPUk9VU19C VUlMRD1PRkYiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi1EQ09PUkRHRU5fVVNF X01BRVBBUlNFUj1PTiIpKSkNCj4+ICvCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9naXRodWIu Y29tL3NjaHJvZGluZ2VyL2Nvb3JkZ2VubGlicy8iKQ0KPj4gK8KgwqDCoCAoc3lub3BzaXMgIjJE IGNvb3JkaW5hdGUgZ2VuZXJhdGlvbiIpDQo+PiArwqDCoMKgIChkZXNjcmlwdGlvbiAiQGNvZGV7 Y29vcmRnZW5saWJzfSBjb250YWlucyBhbGdvcml0aG1zIHRvDQo+PiBnZW5lcmF0ZSAyRA0KPj4g K2Nvb3JkaW5hdGVzLsKgIEl0IGhhcyBhbiBlbXBoYXNpcyBvbiBxdWFsaXR5IHJhdGhlciB0aGFu IHNwZWVkLiIpDQo+IEl0IGVtcGhhc2lzZXMgcXVhbGl0eSBvdmVyIHNwZWVkLiAgVGhhdCBiZWlu ZyBzYWlkLCBpcyBpdCB0aGF0IGhhcmQgdG8NCj4gZ2VuZXJhdGUgcG9pbnRzPyAgV2hhdCdzIHRo ZSBmdWxsIGNvbnRleHQgaGVyZT8NCkFoLCBpdCdzIDJEIGNvb3JkaW5hdGVzIGZvciBtb2xlY3Vs ZXMuIDopDQo+PiArwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkNCg== From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:01:04 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:01:04 +0000 Received: from localhost ([127.0.0.1]:35104 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5KB-0005aq-L6 for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:01:04 -0400 Received: from mout02.posteo.de ([185.67.36.66]:33759) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5K9-0005a0-M9 for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:01:02 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 30E83240101 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:00:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694856; bh=WJJRgFd1SdDmbVtafqrdJlmjngH/LCBNEeGMdZf108g=; h=From:To:Subject:Date:From; b=SXXOitJs7kmPm7V6fgtb99o4p+rTmbWQLW/h5kxrHEyTyTEGIJ4RZPGt1sZUZKxCh ZmpTOBLpfGW5v160aamHTrqEUBbZbiHIr5j87SeyboV+77Sb/jv73sU6TscR/MuEq6 T5/+nrATl44w/0Ttf/HwWx4kfyJ6+swMvj9QBFYxlBYUFm8CocdAvR9zKzUgLD+FgT bxzNU+gsUbU/RI5Y3+3Aa2PaTfZusgJcQ9fChBzUZ3NznaAlrbckUpDvZ2sbVMmObu AKM+G8YLWsxEVTcMbxLqyn8NBMWIapjG4N7ZiHDyimZL3GcXN/bPavghsacrNK5gg9 uWYw3Jh6CptJw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMPM5RwTz6tmJ; Thu, 13 Oct 2022 23:00:55 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 10/13] gnu: Add yaehmop-tightbind. In-Reply-To: Date: Thu, 13 Oct 2022 21:00:55 +0000 Message-ID: <86zgdza16g.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Freitag, dem 07.10.2022 um 15:21 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (yaehmop-tightbind): New variable. > Don't forget to update the ChangeLog. Ah thanks. :) >> --- >> =C2=A0gnu/packages/chemistry.scm | 110 >> +++++++++++++++++++++++++++++++++++++ >> =C2=A01 file changed, 110 insertions(+) >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index 1510cbab41..68d28a52c3 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -42,6 +42,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> =C2=A0=C2=A0 #:use-module (gnu packages flex) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> +=C2=A0 #:use-module (gnu packages gcc) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> =C2=A0=C2=A0 #:use-module (gnu packages graphviz) >> =C2=A0=C2=A0 #:use-module (gnu packages gv) >> @@ -56,6 +57,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> =C2=A0=C2=A0 #:use-module (gnu packages stb) >> +=C2=A0 #:use-module (gnu packages tex) >> =C2=A0=C2=A0 #:use-module (gnu packages web) >> =C2=A0=C2=A0 #:use-module (gnu packages xml) >> =C2=A0=C2=A0 #:use-module (guix build-system cmake) >> @@ -818,3 +820,111 @@ (define-public coordgenlibs >> =C2=A0=C2=A0=C2=A0=C2=A0 (description "@code{coordgenlibs} contains algo= rithms to >> generate 2D >> =C2=A0coordinates.=C2=A0 It has an emphasis on quality rather than speed= .") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3))) >> + >> +(define-public yaehmop >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "yaehmop") >> +=C2=A0=C2=A0=C2=A0 (version "2022.09.1") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/greg= landrum/yaehmop") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit (string-append "v" ve= rsion)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "1x0d75m1hgdb411fiv7c5bwq1n4y0swrll0gigh8v5c73kjxrja0")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 '(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Separate program >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively "viewkel") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove example output (some are corrup= ted) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (for-each delete-file (find-files "exampl= es" >> "\\.Z$")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Documentation outputs >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (for-each delete-file (find-files "docs" >> "\\.(ps|pdf)$")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; These are transpiled from Fortran to C= , but we >> build the >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Fortran code instead >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file-recursively "tightbind/f2c_f= iles") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "tightbind/diag.c") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "tightbind/cboris.c") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "tightbind/abfns.c") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "tightbind/lovlap.c"))))) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DUSE_BLAS_LAPACK=3DO= N" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "-DPARM= _FILE_LOC=3D" #$output >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "/sha= re/" #$name "-" #$version >> "/eht_parms.dat") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DBIND_EXE_NAME=3Dyae= hmop-bind") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'chdir >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (chdir "tightbind"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'chdi= r 'patch-fortran-functions >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* '("mov.c" "prototypes.h") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("lovlap\\(") "lovlap_(") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("abfns\\(") "abfns_(")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'chdi= r 'patch-cmake >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "CMakeLists.txt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("project\\(yaehmop C\\)") "project(yaehmop C >> Fortran)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("abfns.c") "fortran77/abfns.f") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("lovlap.c") "fortran77/lovlap.f") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("(set\\(PARM_FILE_LOC.*)\\)" all init) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append init " CACHE STRING \"\")")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("add_library\\(yaehmop_eht" lib) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append lib " SHARED ")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("target_link_libraries\\(test_eht >> \\$\\{LAPACK_LIBRARIES\\}.*" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 all) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append all >> "\ntarget_link_libraries(yaehmop_eht " >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "${LAPACK_LIBRARIES})\n"))))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'buil= d 'fix-latex >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (chdir "../docs") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "bind_manual.tex" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("\\\\usepackage\\{bindpage\\}") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 >> "\\usepackage[left=3D2cm,right=3D2cm,top=3D4cm,bottom=3D2cm]" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "{geometry}"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "Zmat_appendix.tex" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("file=3Ddihedral\\.eps") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "file=3Dfigs/dihedral.eps")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'fix-= latex 'build-doc >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 ;; TODO: not reproducible >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (setenv "FORCE_SOURCE_DATE" "1") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 ;; Needs to run twice to compile completely >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (invoke "pdflatex" "bind_manual.tex") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (invoke "pdflatex" "bind_manual.tex") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (chdir "../build"))) > Note that we have rubber to automate building PDFs. Also prefer "with- > directory-excursion" over chdir where possible. I used latexmk as it's already included in texlive-bin (it is also reproducible with \pdfsuppressptexinfo=3D-1). >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all 'install-eht-parms >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (install-file "../tightbind/eht_parms.dat" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (string-append #$output "/share/" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$name "-" #$version)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all-eht-parms 'install-doc >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (install-file "../docs/bind_manual.pdf" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 (string-append #$output "/share/doc/" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$name "-" #$version)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete 'check) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all-doc 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key tests? #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "./test_eht"))))))) >> +=C2=A0=C2=A0=C2=A0 (native-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 `(("gfortran" ,gfortran) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("texlive" ,(texlive-updmap.cfg (l= ist texlive-fonts-ec >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 texlive-latex-graphics >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 texlive-latex- >> geometry))))) > I think you can do without labels here (see my comment regarding > rubber). >> +=C2=A0=C2=A0=C2=A0 (inputs (list openblas)) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://github.com/greglandrum/yaehmop") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Yet Another extended Hueckel Molecular Or= bital >> Package") > You can use this as an @acronym in the description. For the synopsis, > I'd use something else, e.g. "Perform H=C3=BCckel calculations". >> +=C2=A0=C2=A0=C2=A0 (description "@code{YAeHMOP} contains a program and = library for >> performing >> +extended H=C3=BCckel calculations.") > I recommend adding "and analyzing and visualizing the results." (see > plug_it.tex) The visualization program is not built, so maybe without visualizing? >> +=C2=A0=C2=A0=C2=A0 (license license:bsd-2))) > > Cheers From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:01:25 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:01:26 +0000 Received: from localhost ([127.0.0.1]:35108 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5KX-0005bP-Dn for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:01:25 -0400 Received: from mout01.posteo.de ([185.67.36.65]:32875) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5KV-0005bC-KB for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:01:24 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 21F0E240026 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:01:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694878; bh=oCKBKPsKsbeydAIJNyhZTUO7+47F46r10U61jRwij+4=; h=From:To:Subject:Date:From; b=MIgdrgyAmTu9paiQc5759v9QVeF0IG3eE12vLfxvwjyMwpTx8e7B5IIicdKhmCg0t //LjPtm/6IFLDAK2UwekCJY7VspnG6cTc6JIw2u/mUbLmBqY3fnL9isPUypPvY9FD2 vqxps17W8jpYii3YeKP2uOC0Ryw4zLFJN7vO37mInnlQgjDqSGzugJbQwnfqQkvn6O KqcW3y2nnbZ20lDzlsQD9wTx3ORC17kMMoSl83HL/mIGyDQXnd4Pf59ot19AnKux/k CiGnt1hBrrbtPOACtLWPos09lbmYyiEZEnVY8nE4CYjP3FPiyeFoHo1OnIctqm7JJP yQKWB4nGd5iTQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMPn4qp9z6tq0; Thu, 13 Oct 2022 23:01:17 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 11/13] gnu: Add avalontoolkit. In-Reply-To: <99fb2123148b39be0428e3f136ba92b363c20f51.camel@gmail.com> Date: Thu, 13 Oct 2022 21:01:17 +0000 Message-ID: <86y1tja15u.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) TGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwuY29tPiB3cml0ZXM6 DQoNCj4gQW0gRnJlaXRhZywgZGVtIDA3LjEwLjIwMjIgdW0gMTU6MjEgKzAwMDAgc2NocmllYiBE YXZpZCBFbHNpbmc6DQo+PiAqIGdudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtIChhdmFsb250b29s a2l0KTogTmV3IHZhcmlhYmxlLg0KPj4gLS0tDQo+PiDCoGdudS9wYWNrYWdlcy9jaGVtaXN0cnku c2NtIHwgOTMNCj4+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+PiDC oDEgZmlsZSBjaGFuZ2VkLCA5MyBpbnNlcnRpb25zKCspDQo+PiANCj4+IGRpZmYgLS1naXQgYS9n bnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtDQo+ PiBpbmRleCA2OGQyOGE1MmMzLi5lNTJkZDJmM2I2IDEwMDY0NA0KPj4gLS0tIGEvZ251L3BhY2th Z2VzL2NoZW1pc3RyeS5zY20NCj4+ICsrKyBiL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtDQo+ PiBAQCAtOTI4LDMgKzkyOCw5NiBAQCAoZGVmaW5lLXB1YmxpYyB5YWVobW9wDQo+PiDCoMKgwqDC oCAoZGVzY3JpcHRpb24gIkBjb2Rle1lBZUhNT1B9IGNvbnRhaW5zIGEgcHJvZ3JhbSBhbmQgbGli cmFyeSBmb3INCj4+IHBlcmZvcm1pbmcNCj4+IMKgZXh0ZW5kZWQgSMO8Y2tlbCBjYWxjdWxhdGlv bnMuIikNCj4+IMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTIpKSkNCj4+ICsNCj4+ICso ZGVmaW5lLXB1YmxpYyBhdmFsb250b29sa2l0DQo+PiArwqAgKHBhY2thZ2UNCj4+ICvCoMKgwqAg KG5hbWUgImF2YWxvbnRvb2xraXQiKQ0KPiBJIHRoaW5rIHdlIGNvdWxkIGRvIGEgaHlwaGVuIGJl dHdlZW4gYXZhbG9uIGFuZCB0b29sa2l0Lg0KPj4gK8KgwqDCoCAodmVyc2lvbiAiMS4yLjAiKQ0K Pj4gK8KgwqDCoCAoc291cmNlDQo+PiArwqDCoMKgwqAgKG9yaWdpbg0KPj4gK8KgwqDCoMKgwqDC oCAobWV0aG9kIHVybC1mZXRjaCkNCj4+ICvCoMKgwqDCoMKgwqAgKHVyaSAoc3RyaW5nLWFwcGVu ZA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAibWlycm9yOi8vc291cmNlZm9yZ2UvYXZh bG9udG9vbGtpdC8iDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJBdmFsb25Ub29sa2l0 XyIgKHN1YnN0cmluZyB2ZXJzaW9uIDAgMykNCj4+ICIvQXZhbG9uVG9vbGtpdF8iDQo+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZlcnNpb24gIi5zb3VyY2UudGFyIikpDQo+PiArwqDCoMKg wqDCoMKgIChzaGEyNTYNCj4+ICvCoMKgwqDCoMKgwqDCoCAoYmFzZTMyDQo+PiArwqDCoMKgwqDC oMKgwqDCoCAiMHJubnl5NmF4czJkYTdhYTRxNmwzMGxkYXZiazQ5djZsMjJsbGoxYWRuNzRoMWk2 N2JwdiIpKQ0KPj4gK8KgwqDCoMKgwqDCoCAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0aWxzKSAo aWNlLTkgZnR3KSkpDQo+PiArwqDCoMKgwqDCoMKgIChzbmlwcGV0DQo+PiArwqDCoMKgwqDCoMKg wqAgI34oYmVnaW4NCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjaGRpciAiLi4iKQ0KPj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJTb3VyY2VE aXN0cmlidXRpb24vamF2YSIpKSkpKQ0KPj4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGdudS1idWls ZC1zeXN0ZW0pDQo+PiArwqDCoMKgIChhcmd1bWVudHMNCj4+ICvCoMKgwqDCoCAobGlzdA0KPj4g K8KgwqDCoMKgwqAgOzsgVGhlcmUgYXJlIG5vIHRlc3RzDQo+PiArwqDCoMKgwqDCoCAjOnRlc3Rz PyAjZg0KPj4gK8KgwqDCoMKgwqAgIzpwaGFzZXMNCj4+ICvCoMKgwqDCoMKgICN+KGxldCAoKHBy b2dyYW1zICcoImNhbm9uaXplciIgIm1hdGNodGVzdCIgInNtaTJtb2wiDQo+PiAic3RydWNoayIp KSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNl cw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZSAnY29uZmlndXJlKQ0KPj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1iZWZvcmUgJ2J1aWxkICdyZW1vdmUtZnJlZQ0KPj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXw0KPj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA7OyBSZW1vdmUgaW5jb3JyZWN0IGZyZWUgb2YgZ2V0ZW52IHJlc3Vs dCAocGF0Y2gNCj4+IGFsc28gaW4gcmRraXQpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChzdWJzdGl0dXRlKiAiY29tbW9uL3JlYWNjc2lvLmMiDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJNeUZyZWUuKnRlbXBkaXIuKiIpICIiKSkpKQ0KPj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHJlcGxhY2UgJ2J1aWxkDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChjaGRpciAiY29tbW9uIikNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGxldCogKChwYXJ0cw0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGxpc3QNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgImFhY2hlY2siICJjYXN1dGlscyIgImRlbm9ybWFsIg0KPj4gImRlcGljdHV0 aWwiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg ICJkaWRlcGljdCIgImZpeGNoYXJnZXMiICJmb3JpbyIgImdlb21ldHJ5Ig0KPj4gImdyYXBoIg0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiaGFz aGNvZGUiICJsYXlvdXQiICJsb2NhbCIgInBhdGNsZWFuIg0KPj4gInBhdHRlcm4iDQo+PiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJwZXJjZWl2ZSIg InJlYWNjc2lvIiAicnR1dGlscyIgInNldCINCj4+ICJzaG9ydGN1dCINCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgInNrZXRjaCIgInNzbWF0Y2gi ICJzdGVyZW8iICJzeW1ib2xfbGlzdHMiDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICJzeW1ib2x0YWJsZSIgInV0aWxpdGllcyIpKQ0KPj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChvYmplY3RzIChtYXAg KGxhbWJkYSAobmFtZSkgKHN0cmluZy1hcHBlbmQNCj4+IG5hbWUgIi5vIikpDQo+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHBhcnRzKSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoZm9yLWVhY2gNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxh bWJkYSAobmFtZSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChkaXNwbGF5IChzdHJpbmctYXBwZW5kICJDb21waWxpbmcgIiBuYW1lDQo+PiAiLmNcbiIpKQ0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAiZ2Nj IiAiLWMiICItZlBJQyIgIi1PMiINCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBuYW1lICIuYyIpDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Ii1vIiAoc3RyaW5nLWFwcGVuZCBuYW1lICIubyIpKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgcGFydHMpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAoZGlzcGxheSAiQnVpbGRpbmcgc2hhcmVkIGxpYnJhcnlcbiIpDQo+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYXBwbHkgaW52b2tlICJnY2MiICItZlBJQyIg Ii1zaGFyZWQiICItbG0iDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgICItbyIgImxpYmF2YWxvbnRvb2xraXQuc28iDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJjYW5vbml6ZXIuYyIgInNtaTJt b2wuYyIgInN0cnVjaGsuYyINCj4+IG9iamVjdHMpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoZm9yLWVhY2gNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGxhbWJkYSAocHJvZ3JhbSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChkaXNwbGF5IChzdHJpbmctYXBwZW5kICJCdWlsZGluZyAiIHByb2dy YW0NCj4+ICJcbiIpKQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKGludm9rZSAiZ2NjIiAiLUwuIiAiLWxhdmFsb250b29sa2l0IiAiLWxtIiAiLQ0KPj4gTzIi DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKHN0cmluZy1hcHBlbmQgIi1XbCwtcnBhdGg9IiAjJG91dHB1dA0KPj4gIi9saWIiKQ0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICItRE1BSU4iIChzdHJpbmctYXBwZW5kIHByb2dyYW0gIi5jIikNCj4+ICItbyIgcHJvZ3Jh bSkpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHByb2dyYW1zKSkp KQ0KPiBVaG0uLi4gaXMgdGhlIE1ha2VmaWxlIHRoYXQgdW51c2FibGU/DQpQcmV0dHkgbXVjaDog Tm90IGFsbCBwcm9ncmFtcyBhcmUgYnVpbHQsIHRoZSBjb21waWxlciBhbmQgbGlua2VyIG9wdGlv bnMNCm5lZWQgdG8gYmUgYWRqdXN0ZWQgaW4gc2V2ZXJhbCBwbGFjZXMgYW5kIHRoZSBzaGFyZWQg bGlicmFyeSBpcyBtaXNzaW5nDQpzb21lIG9iamVjdCBmaWxlcy4gOikNCj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChyZXBsYWNlICdpbnN0YWxsDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGxhbWJkYSBfDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IEV4 ZWN1dGFibGVzDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmb3ItZWFjaA0K Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgKHByb2dyYW0pDQo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUgcHJv Z3JhbSAoc3RyaW5nLWFwcGVuZCAjJG91dHB1dA0KPj4gIi9iaW4iKSkpDQo+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHJvZ3JhbXMpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChmb3ItZWFjaA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChsYW1iZGEgKG5hbWUpDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChzeW1saW5rIChzdHJpbmctYXBwZW5kICMkb3V0cHV0ICIvYmluL3NtaTJtb2wiKQ0KPj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c3RyaW5nLWFwcGVuZCAjJG91dHB1dCAiL2Jpbi8iIG5hbWUpKSkNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAnKCJtb2wyc21pIiAicmRmMnNtaSIgIm1vbDJ0YmwiICJtb2wy c21hIg0KPj4gInNtaTJyZGYiKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg OzsgTGlicmFyeQ0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1m aWxlICJsaWJhdmFsb250b29sa2l0LnNvIiAoc3RyaW5nLWFwcGVuZA0KPj4gIyRvdXRwdXQgIi9s aWIiKSkNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNoDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSAoZmlsZSkNCj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluc3RhbGwtZmlsZSBmaWxlIChzdHJp bmctYXBwZW5kICMkb3V0cHV0DQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgDQo+PiAiL2luY2x1ZGUvYXZhbG9udG9vbGtpdCIpKSkNCj4+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmluZC1maWxlcyAiLiIgIlxcLmgkIikpDQo+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbnN0YWxsLWZpbGUgIi4uL2xpY2Vuc2Uu dHh0Ig0KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgIyRvdXRwdXQgIi9zaGFyZS9kb2MvIg0KPj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyRuYW1lICItIiAjJHZlcnNpb24NCj4+ICIv IikpKSkpKSkpDQo+IFNhbWUgYXMgYWJvdmUuDQpUaGVyZSBpcyBubyBpbnN0YWxsIHRhcmdldC4N Cj4+ICvCoMKgwqAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMv YXZhbG9udG9vbGtpdC8iKQ0KPj4gK8KgwqDCoCAoc3lub3BzaXMgIlRvb2xzIGZvciBTTUlMRVMg YW5kIE1PTCBmaWxlcyBhbmQgZm9yIHN0cnVjdHVyZQ0KPj4gZmluZ2VycHJpbnRpbmciKQ0KPj4g K8KgwqDCoCAoZGVzY3JpcHRpb24gIlRoaXMgcGFja2FnZSBjb250YWlucyBhIGxpYnJhcnkgYW5k IHByb2dyYW1zIGZvcg0KPj4gK2Nhbm9uaWNhbGl6YXRpb24gb2YgU01JTEVTIGFuZCBNT0wgZmls ZXMsIG1vbGVjdWxhciBzdHJ1Y3R1cmUNCj4+IGZpbmdlcnByaW50aW5nDQo+PiArYW5kIHJlbmRl cmluZyBtb2xlY3VsZXMuIikNCj4+ICvCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKQ0K From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:02:02 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:02:02 +0000 Received: from localhost ([127.0.0.1]:35112 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5L7-0005cN-1O for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:02:02 -0400 Received: from mout02.posteo.de ([185.67.36.66]:47493) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5L4-0005c8-Hl for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:01:59 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 10CBD240101 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:01:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665694913; bh=CCfH5xPW/AWkq8K5wJaiRAEfK1ZX7rsGczumClpsbtc=; h=From:To:Subject:Date:From; b=SaHjqBFOkKFp2YmWPYyjIqy/3XX8vxzjE5iC5JmGlpbWLlT3BikONZjCfkN0NyOoT uqeRhxwvySB0AatOB77yNNa4f7oA4tvKElJt0yZb2djjbTvDWM9Qb7j0BnTG6KcDz+ 3eQmdIfv8Iqaw4U2duVuz5obu82nU+qmNozUcNMU34ZNnqMWzl0xkp6Kq8qpddVtsS bwQdkzkd/f4O857r3qeq8PgjsQuySCRpfLT056JpwFlXvNZE3TgA0kBhsdZh35CvKa HPA+VGPMQiwZQSEwKLKbKSu64wFtgSQgSXkxmqBd07VRuQaxFtOsUEWWN28YjZYklI COUM9SC9zCdpg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMQS4M86z6tmv; Thu, 13 Oct 2022 23:01:52 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261@debbugs.gnu.org Subject: Re: [PATCH v2 13/13] gnu: Add rdkit. In-Reply-To: Date: Thu, 13 Oct 2022 21:01:52 +0000 Message-ID: <86wn93a14v.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Liliana Marie Prikler writes: > Am Freitag, dem 07.10.2022 um 15:22 +0000 schrieb David Elsing: >> * gnu/packages/chemistry.scm (rdkit): New variable. >> --- >> =C2=A0gnu/packages/chemistry.scm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 178 >> ++++++++++++++++++ >> =C2=A0.../rdkit-cmake-external-dependencies.patch=C2=A0=C2=A0 | 102 ++++= ++++++ >> =C2=A02 files changed, 280 insertions(+) >> =C2=A0create mode 100644 gnu/packages/patches/rdkit-cmake-external- >> dependencies.patch >>=20 >> diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm >> index 43953238cd..4b34a38797 100644 >> --- a/gnu/packages/chemistry.scm >> +++ b/gnu/packages/chemistry.scm >> @@ -34,6 +34,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages algebra) >> =C2=A0=C2=A0 #:use-module (gnu packages autotools) >> =C2=A0=C2=A0 #:use-module (gnu packages backup) >> +=C2=A0 #:use-module (gnu packages base) >> =C2=A0=C2=A0 #:use-module (gnu packages bison) >> =C2=A0=C2=A0 #:use-module (gnu packages boost) >> =C2=A0=C2=A0 #:use-module (gnu packages check) >> @@ -41,10 +42,12 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages cpp) >> =C2=A0=C2=A0 #:use-module (gnu packages documentation) >> =C2=A0=C2=A0 #:use-module (gnu packages flex) >> +=C2=A0 #:use-module (gnu packages fonts) >> =C2=A0=C2=A0 #:use-module (gnu packages fontutils) >> =C2=A0=C2=A0 #:use-module (gnu packages gcc) >> =C2=A0=C2=A0 #:use-module (gnu packages gl) >> =C2=A0=C2=A0 #:use-module (gnu packages graphviz) >> +=C2=A0 #:use-module (gnu packages gtk) >> =C2=A0=C2=A0 #:use-module (gnu packages gv) >> =C2=A0=C2=A0 #:use-module (gnu packages image) >> =C2=A0=C2=A0 #:use-module (gnu packages maths) >> @@ -56,6 +59,7 @@ (define-module (gnu packages chemistry) >> =C2=A0=C2=A0 #:use-module (gnu packages qt) >> =C2=A0=C2=A0 #:use-module (gnu packages serialization) >> =C2=A0=C2=A0 #:use-module (gnu packages sphinx) >> +=C2=A0 #:use-module (gnu packages sqlite) >> =C2=A0=C2=A0 #:use-module (gnu packages stb) >> =C2=A0=C2=A0 #:use-module (gnu packages tex) >> =C2=A0=C2=A0 #:use-module (gnu packages web) >> @@ -1101,3 +1105,177 @@ (define-public ringdecomposerlib >> =C2=A0unique ring families, relevant cycles, the smallest set of smallest >> rings and >> =C2=A0other ring topology descriptions.") >> =C2=A0=C2=A0=C2=A0=C2=A0 (license license:bsd-3))) >> + >> +(define-public rdkit >> +=C2=A0 (package >> +=C2=A0=C2=A0=C2=A0 (name "rdkit") >> +=C2=A0=C2=A0=C2=A0 (version "2022.03.5") >> +=C2=A0=C2=A0=C2=A0 (source (origin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (method git-fetch) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (uri (git-reference >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (url "https://github.com/rdki= t/rdkit") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "Release_" (strin= g-replace-substring version >> "." "_"))))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (file-name (git-file-name name version)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (sha256 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (base32 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 >> "19idgilabh04cbr1qj6zgrgsfjm248mmfz6fsr0smrd68d0xnml9")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (patches >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (search-patches "rdkit-cmake-external- >> dependencies.patch")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (modules '((guix build utils))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (snippet >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 #~(begin >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove pickle files (only used i= n tests), >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; as they are compiled programs >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (for-each >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lambda (name) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (display (string-= append name "\n")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file name= )) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (find-files "." "\\.pkl(\\.gz= )?$")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Remove SQLite data files (can be= generated) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "Data/RDData.sqlt") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete-file "Data/RDTests.sqlt")))= )) >> +=C2=A0=C2=A0=C2=A0 (build-system cmake-build-system) >> +=C2=A0=C2=A0=C2=A0 (arguments >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:imported-modules (append %cmake-build-= system-modules >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 '((guix build python-build- >> system))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:modules '((guix build cmake-build-syst= em) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (guix build utils) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ((guix build python-build-system) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:select (add-installed-pythonpath)= )) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:configure-flags >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(list >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_AVALON_SU= PPORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_CAIRO_SUP= PORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_CPP_TESTS= =3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_FREESASA_= SUPPORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_INCHI_SUP= PORT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_BUILD_YAEHMOP_S= UPPORT=3DON" > Are any of these implied or do they have to be explicitly enabled? Oops, I overlooked some, now only flags changing the default are specified. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "-DCATC= H_DIR=3D" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(th= is-package-native-input "catch2") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "/inc= lude/catch2") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_DEV_COM= PONENT=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_INTREE= =3DOFF" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_INSTALL_STATIC_= LIBS=3DOFF" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_OPTIMIZE_= POPCNT=3D" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$(let ((system = (or (%current-target-system) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (%current-system)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (cond >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 ((string-prefix? "x86_64" system) "ON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 ((string-prefix? "i686" system) "ON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (else "OFF")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_USE_BOOST_IOSTR= EAMS=3DON" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-DRDK_USE_FLEXBISON= =3DON") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #:phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #~(modify-phases %standard-phases >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'copy-external-dependencies >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (symlink >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 #$(this-package-input "font-comic-neue") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 "/share/fonts/truetype/ComicNeue-Regular.ttf") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 "Data/Fonts/ComicNeue-Regular.ttf"))) > Try (search-input-file) instead. >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'copy= -external-dependencies 'patch-source >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "External/AvalonTools/CMakeLists.txt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("^if\\(NOT RDK_BUILD" orig) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "if(0)\n" orig)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("include_directories.*AVALON_SRC_PATH.*") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "endif()\ninclude_directories(" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 #$avalontoolkit >> "/include/avalontoolkit)\n")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("LINK_LIBRARIES avalon_clib") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "LINK_LIBRARIES -L" #$avalontoolkit "/lib= - >> lavalontoolkit"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (let ((port >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (open-file "External/Ri= ngFamilies/dummy.cpp" >> "w"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (display "" port) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (close port)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (let ((port >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (open-file >> "External/RingFamilies/CMakeLists.txt" "w"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (display (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "rdkit_library(RingDecomposerLib dummy.cpp >> SHARED" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 " LINK_LIBRARIES -lRingDecomposerLib)\n" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 "set(RDK_URF_LIBS RingDecomposerLib CACHE >> STRING \"\" FORCE)\n") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= port) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (close port)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* >> "Code/GraphMol/MolInterchange/CMakeLists.txt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("if\\(NOT" orig) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "if(0)\n" orig)) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("^include_directories.*") "endif()\n")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "External/YAeHMOP/EHTTools.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") >> "")))) > I think you might want to unbundle these with a patch. Is the patch ok? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'unpa= ck 'fix-inchi-include >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "Code/cmake/Modules/FindInchi.cmake" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("inchi_api.h.*\\)") "inchi/inchi_api.h)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("INCHI_LIBRARY NAMES.*\\)") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 "INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)= ") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("find_library" prev) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES = .so.1)\n" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 prev))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (substitute* "External/INCHI-API/inchi.cpp" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (("") "")))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-before 'bui= ld 'enable-bytecode-determinism >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (lambda _ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONHASHSEED" "0") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (setenv "PYTHONDONTWRITEBYTECODE" "1"))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'inst= all 'pre-check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key inputs outputs #:allow-other-keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (with-directory-excursion "../source" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "sqlite3" "Data/RDData.sqlt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".rea= d rdkit/Dbase/test_data/RDData.sqlite") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (invoke "sqlite3" "Data/RDTests.sqlt" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".read >> rdkit/Dbase/test_data/RDTests.sqlite") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (setenv "RDBASE" (canonicalize-path "."))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (add-installed-pythonpath inputs outputs))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (delete 'check) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (add-after 'pre-= check 'check >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lam= bda* (#:key tests? parallel-tests? #:allow-other- >> keys) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (when tests? >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 (let ((job-count (number->string >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (if parallel-tests? = (parallel-job- >> count) 1)))) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (invoke >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "ctest" "-j" job-count >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "-E" (string-append >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= "(" (string-join >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 '(;; need pickled data >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "(pyDiscreteValueVect" >> "pySparseIntVect" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "graphmoltestPickler" >> "pyPartialCharges" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "substructLibraryTest" "pyFeatur= es" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "pythonTestDirML" >> "pythonTestDirChem" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ;; Catching Python exception fai= ls >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "pyRanker)") "|") ")"))))))))) > I think you have two layers of brackets now =E2=80=93 delete the inner on= es. Oh thanks! >> +=C2=A0=C2=A0=C2=A0 (native-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list bison >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 boost >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 catch2 >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 eigen >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 flex >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 freesasa >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pkg-config >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 rapidjson >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tar)) >> +=C2=A0=C2=A0=C2=A0 (inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list avalontoolkit >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cairo >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 coordgenli= bs >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 font-comic= -neue >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 freetype >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 inchi >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 maeparser >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 python >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ringdecomp= oserlib >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sqlite >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 yaehmop)) >> +=C2=A0=C2=A0=C2=A0 (propagated-inputs >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list python-numpy python-cairocffi python-pil= low)) >> +=C2=A0=C2=A0=C2=A0 (home-page "https://rdkit.org/") >> +=C2=A0=C2=A0=C2=A0 (synopsis "Collection of cheminformatics software") >> +=C2=A0=C2=A0=C2=A0 (description "RDKit is a C++ and Python library for >> cheminformatics, which >> +includes (among other things) the analysis and modification of >> molecules in 2D >> +and 3D and descriptor generation for machine learning.") >> +=C2=A0=C2=A0=C2=A0 (license license:bsd-3))) >> diff --git a/gnu/packages/patches/rdkit-cmake-external- >> dependencies.patch b/gnu/packages/patches/rdkit-cmake-external- >> dependencies.patch >> new file mode 100644 >> index 0000000000..5b73864f51 >> --- /dev/null >> +++ b/gnu/packages/patches/rdkit-cmake-external-dependencies.patch >> @@ -0,0 +1,102 @@ >> +diff -ur a/External/FreeSASA/CMakeLists.txt >> b/External/FreeSASA/CMakeLists.txt >> +--- a/External/FreeSASA/CMakeLists.txt >> ++++ b/External/FreeSASA/CMakeLists.txt >> +@@ -10,7 +10,7 @@ >> +=C2=A0=C2=A0 endif() >> + endif() >> +=20 >> +-if(needDownload) >> ++if(FALSE) >> +=C2=A0=C2=A0 # don't actually use the md5 here >> +=C2=A0=C2=A0 set(FREESASA_VERSION "2.0.3") >> +=C2=A0=C2=A0 set(FREESASA_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/freesasa- >> ${FREESASA_VERSION}") >> +@@ -66,24 +66,24 @@ >> + endif() >> +=20 >> + set (freesasa_h ${FREESASA_SRC_DIR}/src/freesasa.h) >> +-file(READ ${freesasa_h} freesasa_h_data) >> ++#file(READ ${freesasa_h} freesasa_h_data) >> + string(REGEX REPLACE "(#include )" "\\1\n#include >> " freesasa_h_data "${freesasa_h_data}") >> + string(REGEX REPLACE >> "([^R][^D][^K][^I][^T][^_][^F][^R][^E][^E][^S][^A][^S][^A][^_][^C][^L >> ][^I][^B][^_][^E][^X][^P][^O][^R][^T][^ ])(extern const)" >> "\\1RDKIT_FREESASA_CLIB_EXPORT \\2" freesasa_h_data >> "${freesasa_h_data}") >> +-file(WRITE ${freesasa_h} "${freesasa_h_data}") >> ++#file(WRITE ${freesasa_h} "${freesasa_h_data}") >> +=20 >> + add_definitions(-DUSE_THREADS=3D0) >> + add_definitions(-DUSE_JSON=3D0) >> + add_definitions(-DUSE_XML=3D0) >> +-rdkit_library(freesasa_clib ${freesasa_clib_srcs}) >> +-target_compile_definitions(freesasa_clib PRIVATE >> RDKIT_FREESASALIB_BUILD) >> ++#rdkit_library(freesasa_clib ${freesasa_clib_srcs}) >> ++#target_compile_definitions(freesasa_clib PRIVATE >> RDKIT_FREESASALIB_BUILD) >> +=20 >> + if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) >> +=C2=A0=C2=A0 set_target_properties(freesasa_clib PROPERTIES >> WINDOWS_EXPORT_ALL_SYMBOLS TRUE) >> + endif() >> +-include_directories("${FREESASA_SRC_DIR}/src") >> ++#include_directories("${FREESASA_SRC_DIR}/src") >> +=20 >> + rdkit_library(FreeSASALib RDFreeSASA.cpp SHARED=20 >> +-=C2=A0=C2=A0=C2=A0 LINK_LIBRARIES freesasa_clib GraphMol ) >> ++=C2=A0=C2=A0=C2=A0 LINK_LIBRARIES -lfreesasa GraphMol ) >> + target_compile_definitions(FreeSASALib PRIVATE >> RDKIT_FREESASALIB_BUILD) >> +=20 >> + rdkit_headers(RDFreeSASA.h DEST GraphMol) >> +diff -ur a/External/YAeHMOP/CMakeLists.txt >> b/External/YAeHMOP/CMakeLists.txt >> +--- a/External/YAeHMOP/CMakeLists.txt >> ++++ b/External/YAeHMOP/CMakeLists.txt >> +@@ -18,32 +18,32 @@ >> +=20 >> + include_directories( ${RDKit_ExternalDir}/YAeHMOP ) >> +=20 >> +-ExternalProject_Add(yaehmop_project >> +-=C2=A0 GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git >> +-=C2=A0 GIT_TAG master >> +-=C2=A0 UPDATE_COMMAND "" >> +-=C2=A0 PATCH_COMMAND "" >> +-=C2=A0 PREFIX ${CMAKE_CURRENT_SOURCE_DIR} >> +-=C2=A0 SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" >> +-=C2=A0 SOURCE_SUBDIR "tightbind" >> +-=C2=A0 CMAKE_ARGS -DUSE_BLAS_LAPACK=3DOFF - >> DCMAKE_INSTALL_PREFIX=3D${PROJECT_BINARY_DIR} - >> DCMAKE_C_FLAGS=3D${CMAKE_C_FLAGS} - >> DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} >> +-=C2=A0 TEST_COMMAND "") >> +- >> +-include_directories(${PROJECT_BINARY_DIR}/include) >> +-link_directories(${PROJECT_BINARY_DIR}/lib) >> +-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project- >> build) >> +- >> +-set(EHT_PARAM_FILE >> ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) >> +-install(FILES ${EHT_PARAM_FILE} >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 DESTINATION ${RDKit_ShareDi= r}/Data >> +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 COMPONENT data) >> ++#ExternalProject_Add(yaehmop_project >> ++#=C2=A0 GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git >> ++#=C2=A0 GIT_TAG master >> ++#=C2=A0 UPDATE_COMMAND "" >> ++#=C2=A0 PATCH_COMMAND "" >> ++#=C2=A0 PREFIX ${CMAKE_CURRENT_SOURCE_DIR} >> ++#=C2=A0 SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" >> ++#=C2=A0 SOURCE_SUBDIR "tightbind" >> ++#=C2=A0 CMAKE_ARGS -DUSE_BLAS_LAPACK=3DOFF - >> DCMAKE_INSTALL_PREFIX=3D${PROJECT_BINARY_DIR} - >> DCMAKE_C_FLAGS=3D${CMAKE_C_FLAGS} - >> DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} >> ++#=C2=A0 TEST_COMMAND "") >> ++ >> ++#include_directories(${PROJECT_BINARY_DIR}/include) >> ++#link_directories(${PROJECT_BINARY_DIR}/lib) >> ++#link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project- >> build) >> ++ >> ++#set(EHT_PARAM_FILE >> ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) >> ++#install(FILES ${EHT_PARAM_FILE} >> ++#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 DESTINATION ${RDKit_ShareD= ir}/Data >> ++#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 COMPONENT data) >> +=20 >> +-message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") >> +-message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib >> ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") >> ++#message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") >> ++#message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib >> ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") >> +=20 >> +-rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES yaehmop_eht >> GraphMol ) >> ++rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES - >> lyaehmop_eht GraphMol ) >> + target_compile_definitions(EHTLib PRIVATE RDKIT_EHTLIB_BUILD) >> +-add_dependencies(EHTLib yaehmop_project) >> ++#add_dependencies(EHTLib yaehmop_project) >> + rdkit_headers(EHTTools.h DEST GraphMol) >> + rdkit_catch_test(testEHTLib1 test1.cpp >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 LINK= _LIBRARIES EHTLib FileParsers SmilesParse ) > Cheers From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:04:48 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:04:48 +0000 Received: from localhost ([127.0.0.1]:35118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nn-0005gy-Rl for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:48 -0400 Received: from mout02.posteo.de ([185.67.36.66]:34247) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nm-0005gl-7U for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:46 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 91B3F240101 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:40 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695080; bh=8NbezGz2fG4ykU05jQJTUovZNXdqf2BYg8S8KitX5qo=; h=From:To:Cc:Subject:Date:From; b=RA9hbb5d+chn4DmtbuMjeni2a+KpABdp6hg1iwp9YiewpadyyiQU7nJf7+jKaFWfS cv8ie+hKhwOdCaxee+YXdtGNiuhq8mrvTPnyA1frreuep8nw0z/RkV1BzCt35czvcH mDg105j4s8/8HzBfQcCthmnCcMIdBG1o8GdVJf46ROFbqxv/f9AJqfBfSmpJ/qZEka ITEPrwAfInunFxGRy3J+TSTr14sHCmMU6Cc82nyDaGziocFwCH5ZJdP7TUaQs/ii85 gGQ3ERKJwr/wJv9ZpKgsmWhxxGT87i1EsjMXaLkemWe2f/JEeYYbag0JS7tfis7YgU cHBO61QOSZZeA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTh0Zxrz6tnh; Thu, 13 Oct 2022 23:04:40 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 00/15] Add rdkit v3. Date: Thu, 13 Oct 2022 21:04:09 +0000 Message-Id: <20221013210424.993-1-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Thanks again for your comments! Here is the next version. :) Now all packages were reproducible again after two rounds. David Elsing (15): gnu: Add fast-float. gnu: Add pocketfft-cpp. gnu: Add sajson. gnu: Add cbehave. gnu: Add tinydir. gnu: Add optionparser. gnu: Add sajson-for-gemmi. gnu: Add gemmi. gnu: Add freesasa. gnu: Add maeparser. gnu: Add coordgenlibs. gnu: Add yaehmop. gnu: Add avalon-toolkit. gnu: Add ringdecomposerlib. gnu: Add rdkit. gnu/packages/check.scm | 56 ++ gnu/packages/chemistry.scm | 686 ++++++++++++++++++ gnu/packages/cpp.scm | 228 ++++++ .../patches/gemmi-fix-pegtl-usage.patch | 31 + .../patches/gemmi-fix-sajson-types.patch | 11 + .../pocketfft-cpp-default-disable-simd.patch | 108 +++ ...rdkit-unbundle-external-dependencies.patch | 384 ++++++++++ .../patches/sajson-build-with-gcc10.patch | 45 ++ .../sajson-for-gemmi-numbers-as-strings.patch | 195 +++++ .../patches/tinydir-fix-cbehave-test.patch | 16 + 10 files changed, 1760 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-pegtl-usage.patch create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch create mode 100644 gnu/packages/patches/pocketfft-cpp-default-disable-simd.patch create mode 100644 gnu/packages/patches/rdkit-unbundle-external-dependencies.patch create mode 100644 gnu/packages/patches/sajson-build-with-gcc10.patch create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch create mode 100644 gnu/packages/patches/tinydir-fix-cbehave-test.patch -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:04:56 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:04:56 +0000 Received: from localhost ([127.0.0.1]:35125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nv-0005he-7p for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:56 -0400 Received: from mout02.posteo.de ([185.67.36.66]:35171) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nt-0005gz-1u for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:53 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 8CB86240104 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695087; bh=ZEQwkGyZhylBk05fowt1HYDbjUAw+eHEYckcxP4pMUA=; h=From:To:Cc:Subject:Date:From; b=mUB0Eec9HXSiv4uRis/b5tG1gpE2qzwkeBkCqgf+Th+0LF4HJ5lRbZ0w+RDOgaJag c15Lu7imk1wGk7MpwvwZ5XexT+ZuK6SnpWlJfWdHBp8XDtQrRS5x/xTYs8vXo8KwsF VHf6Lp8abAxj/o0Yb/HfJkOpiwABZZkW+ZTMGPzd05tMcXIsbWPFzRTfTlqcH287W9 wegHvaYH/YeVoL4AoVxKD5DRjLwW2rAwhRdCUhLMU9nStngI6YuNUK3+HAiBl7uygd 1c3tg/lxEjhV6IeFvJh/DySjXiSzW9/Fh0uWdiIVvtnN6INxCV1rcyzufBsoJMrpCN n2nmmrFsakKXw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTq0tmFz6tr3; Thu, 13 Oct 2022 23:04:47 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 02/15] gnu: Add pocketfft-cpp. Date: Thu, 13 Oct 2022 21:04:11 +0000 Message-Id: <20221013210424.993-3-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (pocketfft-cpp): New variable. --- gnu/packages/cpp.scm | 29 +++++ .../pocketfft-cpp-default-disable-simd.patch | 108 ++++++++++++++++++ 2 files changed, 137 insertions(+) create mode 100644 gnu/packages/patches/pocketfft-cpp-default-disable-simd.patch diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index eba39ed660..2b5841e777 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2004,3 +2004,32 @@ (define-public fast-float floating point numbers from strings. It implements the C++ from_chars functions for the float and double types.") (license (list license:asl2.0 license:expat)))) ; dual licensed + +(define-public pocketfft-cpp + (let ((commit "daa8bb18327bc5c7d22c69428c25cf5dc64167d3") + (revision "0")) + (package + (name "pocketfft-cpp") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mreineck/pocketfft") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dbkkqkmkxgmz1qjpsqzic5ig3qw1pqndbb3dvjc7xq5f2rdzyq1")) + (patches (search-patches + "pocketfft-cpp-default-disable-simd.patch")))) + (build-system copy-build-system) + (arguments + (list + #:install-plan + #~'(("pocketfft_hdronly.h" "include/")))) + (home-page "https://github.com/mreineck/pocketfft") + (synopsis "C++11 header-only Fast Fourier Transform library") + (description "This package provides a single-header C++11 library for +computing Fast Fourier transformations. It supports multidimensional arrays, +different floating point sizes and complex transformations.") + (license license:bsd-3)))) diff --git a/gnu/packages/patches/pocketfft-cpp-default-disable-simd.patch b/gnu/packages/patches/pocketfft-cpp-default-disable-simd.patch new file mode 100644 index 0000000000..4d2ddae4b5 --- /dev/null +++ b/gnu/packages/patches/pocketfft-cpp-default-disable-simd.patch @@ -0,0 +1,108 @@ +Disable SIMD instructions by default. +They can be enabled by setting -DPOCKETFFT_NO_VECTORS=0. + +diff --git a/pocketfft_hdronly.h b/pocketfft_hdronly.h +index d75ada6..b2d0a23 100644 +--- a/pocketfft_hdronly.h ++++ b/pocketfft_hdronly.h +@@ -39,6 +39,10 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + #ifndef POCKETFFT_HDRONLY_H + #define POCKETFFT_HDRONLY_H + ++#ifndef POCKETFFT_NO_VECTORS ++#define POCKETFFT_NO_VECTORS 1 ++#endif ++ + #ifndef __cplusplus + #error This file is C++ and requires a C++ compiler. + #endif +@@ -106,29 +110,29 @@ constexpr bool FORWARD = true, + BACKWARD = false; + + // only enable vector support for gcc>=5.0 and clang>=5.0 +-#ifndef POCKETFFT_NO_VECTORS +-#define POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) ++#define POCKETFFT_NO_VECTORS 1 + #if defined(__INTEL_COMPILER) + // do nothing. This is necessary because this compiler also sets __GNUC__. + #elif defined(__clang__) + // AppleClang has their own version numbering + #ifdef __apple_build_version__ + # if (__clang_major__ > 9) || (__clang_major__ == 9 && __clang_minor__ >= 1) +-# undef POCKETFFT_NO_VECTORS ++#define POCKETFFT_NO_VECTORS 0 + # endif + #elif __clang_major__ >= 5 +-# undef POCKETFFT_NO_VECTORS ++#define POCKETFFT_NO_VECTORS 0 + #endif + #elif defined(__GNUC__) + #if __GNUC__>=5 +-#undef POCKETFFT_NO_VECTORS ++#define POCKETFFT_NO_VECTORS 0 + #endif + #endif + #endif + + template struct VLEN { static constexpr size_t val=1; }; + +-#ifndef POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) + #if (defined(__AVX512F__)) + template<> struct VLEN { static constexpr size_t val=16; }; + template<> struct VLEN { static constexpr size_t val=8; }; +@@ -145,7 +149,7 @@ template<> struct VLEN { static constexpr size_t val=2; }; + template<> struct VLEN { static constexpr size_t val=4; }; + template<> struct VLEN { static constexpr size_t val=2; }; + #else +-#define POCKETFFT_NO_VECTORS ++#define POCKETFFT_NO_VECTORS 1 + #endif + #endif + +@@ -180,7 +184,7 @@ template class arr + T *p; + size_t sz; + +-#if defined(POCKETFFT_NO_VECTORS) ++#if POCKETFFT_NO_VECTORS + static T *ralloc(size_t num) + { + if (num==0) return nullptr; +@@ -3026,7 +3030,7 @@ class rev_iter + template struct VTYPE {}; + template using vtype_t = typename VTYPE::type; + +-#ifndef POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) + template<> struct VTYPE + { + using type = float __attribute__ ((vector_size (VLEN::val*sizeof(float)))); +@@ -3139,7 +3143,7 @@ POCKETFFT_NOINLINE void general_nd(const cndarr &in, ndarr &out, + auto storage = alloc_tmp(in.shape(), len, sizeof(T)); + const auto &tin(iax==0? in : out); + multi_iter it(tin, out, axes[iax]); +-#ifndef POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) + if (vlen>1) + while (it.remaining()>=vlen) + { +@@ -3245,7 +3249,7 @@ template POCKETFFT_NOINLINE void general_r2c( + constexpr auto vlen = VLEN::val; + auto storage = alloc_tmp(in.shape(), len, sizeof(T)); + multi_iter it(in, out, axis); +-#ifndef POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) + if (vlen>1) + while (it.remaining()>=vlen) + { +@@ -3300,7 +3304,7 @@ template POCKETFFT_NOINLINE void general_c2r( + constexpr auto vlen = VLEN::val; + auto storage = alloc_tmp(out.shape(), len, sizeof(T)); + multi_iter it(in, out, axis); +-#ifndef POCKETFFT_NO_VECTORS ++#if !(POCKETFFT_NO_VECTORS) + if (vlen>1) + while (it.remaining()>=vlen) + { -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:06 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:06 +0000 Received: from localhost ([127.0.0.1]:35128 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nw-0005hp-5b for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:05 -0400 Received: from mout01.posteo.de ([185.67.36.65]:59041) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nt-0005h0-J1 for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:54 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id C42F0240028 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:46 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695087; bh=B+pRMSyt2aDgmtRbUQDp6Zx/3Eu6eQq13c2eV88zmzY=; h=From:To:Cc:Subject:Date:From; b=Bi2ot5HW3Mclf8fBo1a+mEfdibbibQnJExSL2VpFqMmKsFkDOeKwRArZB1RkApqwy xbIGsS/CQkWPj5PhG8J8FxLnLImsmpbR0uuIG+AAUBk4yTQlGJ69dHHaRxcIpt/Rk0 0JV7Xe9TE0pBVSiI/CBs+bhA+M7vNpeTSZr42bSkobsXj3ufxjThE2OKGto5D3jSIz wlzS78veReMjvBRUsSLVvhhoywbHOqWiqVx0XSinfJtEGdALzc4aOUU1wHZxL0RzSp Ucp2CCvmpqTA6MB5BCRuS/C7agvaELVa/vlM3Y5zKQF20GZcC4zzlGV77xpFbYipfm 0mTKAH4/1Hi/w== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTp2jqmz6tpd; Thu, 13 Oct 2022 23:04:46 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 01/15] gnu: Add fast-float. Date: Thu, 13 Oct 2022 21:04:10 +0000 Message-Id: <20221013210424.993-2-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (fast-float): New variable. --- gnu/packages/cpp.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 805413cc61..eba39ed660 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2022 muradm ;;; Copyright © 2022 Attila Lendvai ;;; Copyright © 2022 Arun Isaac +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -1954,3 +1955,52 @@ (define-public crc32c "This package provides architecture-specific implementations of the CRC32C algorithm, which is specified in RFC 3720, section 12.1.") (license license:bsd-3))) + +(define-public fast-float + (package + (name "fast-float") + (version "3.5.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fastfloat/fast_float") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0z3rxxd0pwvw70dbnv63rm67biw829vdqf50y16isxm6g3sbrz8g")))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list + "-DFASTFLOAT_TEST=ON" + "-DSYSTEM_DOCTEST=ON") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-cmake-tests + (lambda _ + (substitute* "tests/CMakeLists.txt" + (("FetchContent_GetProperties\\(supplemental_test_files.*") + "") + (("if\\(NOT supplemental_test_files_POPULATED.*") + (string-append + "set(supplemental_test_files_BINARY_DIR " + #$(origin + (method git-fetch) + (uri (git-reference + (url (string-append "https://github.com/fastfloat" + "/supplemental_test_files.git")) + (commit "97a0b2e638feb479387554cf253e346500541e7e"))) + (file-name (git-file-name "fast_float_test-data" version)) + (sha256 + (base32 + "0dxbiyzyh7i847i89ablfzypfc3ckhm7f74w98jsh73v1mppmxlf"))) + "/data)\nif(0)\n")))))))) + (native-inputs (list doctest)) + (home-page "https://github.com/fastfloat/fast_float") + (synopsis "Floating point number parser for C++") + (description "@code{fast_float} is a header-only C++ library for parsing +floating point numbers from strings. It implements the C++ from_chars +functions for the float and double types.") + (license (list license:asl2.0 license:expat)))) ; dual licensed -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:06 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:06 +0000 Received: from localhost ([127.0.0.1]:35141 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5O6-0005jd-70 for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:06 -0400 Received: from mout01.posteo.de ([185.67.36.65]:59621) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nt-0005h8-LW for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:54 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 2BBFE240029 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695088; bh=3RB/qoUS8+xbzKN61VD0Gg9UUu4vU88He+j5Lprdjc4=; h=From:To:Cc:Subject:Date:From; b=PeT7NmXZ2qVzSwL+IknBBFyOHNQ5gJzfC8QXZXiLNK20sj/ZCPhdXURikjiptGvuZ aOvFFCZupbEBOANGo/jQoezqAD/mhNhJpdXNfsLPnwtcbS200Qo7Gf40JAW42C6+mk o4yIiDDgxxYn45j8oc+fDKcR9UtlZFvODkELYo5Tq713Xy8FP8zH6y1+9L/ffi2Q0n K1WBHVAXKmKtAtQ19tQy8z/AAenmDhoIIhfXMyacMzKWjYwfXe0mTUuyMbnMWzvP8a rDNMGamrP64OfPhVfNYo5Eb9KZ4OIaFYqEzkb16rrFD0xPpqybLiKpB+hkP3/aNQNg 3I/OLFRECWWWg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTq5V0Cz6tnd; Thu, 13 Oct 2022 23:04:47 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 03/15] gnu: Add sajson. Date: Thu, 13 Oct 2022 21:04:12 +0000 Message-Id: <20221013210424.993-4-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (sajson): New variable. --- gnu/packages/cpp.scm | 60 +++++++++++++++++++ .../patches/sajson-build-with-gcc10.patch | 45 ++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 gnu/packages/patches/sajson-build-with-gcc10.patch diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 2b5841e777..b6a0a70ed7 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -57,6 +57,7 @@ (define-module (gnu packages cpp) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (guix build-system scons) #:use-module (guix modules) #:use-module (guix gexp) #:use-module (gnu packages) @@ -2033,3 +2034,62 @@ (define-public pocketfft-cpp computing Fast Fourier transformations. It supports multidimensional arrays, different floating point sizes and complex transformations.") (license license:bsd-3)))) + +(define-public sajson + (let ((commit "ec644013e34f9984a3cc9ba568cab97a391db9cd") + (revision "0")) + (package + (name "sajson") + (version (git-version "1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chadaustin/sajson") + (commit commit))) + (file-name (git-file-name name version)) + (patches + (search-patches "sajson-build-with-gcc10.patch")) + (sha256 + (base32 + "0fjag27w7gvkc5pdhq3ad7yc09rabpzahndw1sgsg04ipznidmmq")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "third-party")))) + (build-system scons-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-other-builds + (lambda _ + (substitute* "SConstruct" + (("for name, tools in builds:") + "for name, tools in [('opt', [gcc, opt])]:")))) + (add-after 'unpack 'use-external-unittest-cpp + (lambda _ + (substitute* "SConscript" + (("unittestpp_env\\.Library") "_dummy = ") + (("test_env = env.Clone\\(tools=\\[unittestpp, sajson\\]\\)") + (string-append + "test_env = env.Clone(tools=[sajson])\n" + "test_env.Append(CPPPATH='" + (search-input-directory %build-inputs "/include/UnitTest++") + "', LIBPATH='" + (string-append #$(this-package-native-input "unittest-cpp") + "/lib") + "', LIBS=['UnitTest++'])"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "build/opt/test") + (invoke "build/opt/test_unsorted")))) + (replace 'install + (lambda _ + (let ((out (string-append #$output "/include"))) + (install-file "include/sajson.h" out) + (install-file "include/sajson_ostream.h" out))))))) + (native-inputs (list unittest-cpp)) + (home-page "https://github.com/chadaustin/sajson") + (synopsis "C++11 header-only, in-place JSON parser") + (description "@code{sajson} is an in-place JSON parser with support for +parsing with only a single memory allocation.") + (license license:expat)))) diff --git a/gnu/packages/patches/sajson-build-with-gcc10.patch b/gnu/packages/patches/sajson-build-with-gcc10.patch new file mode 100644 index 0000000000..878706dc79 --- /dev/null +++ b/gnu/packages/patches/sajson-build-with-gcc10.patch @@ -0,0 +1,45 @@ +This patch is from the upstream pull request +https://github.com/chadaustin/sajson/pull/54. +It fixes linking with GCC. + +diff --git a/include/sajson.h b/include/sajson.h +index 8b4e05a..1bd045b 100644 +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -138,12 +138,17 @@ constexpr inline size_t make_element(tag t, size_t value) { + // header. This trick courtesy of Rich Geldreich's Purple JSON parser. + template + struct globals_struct { ++ static const unsigned char parse_flags[256]; ++}; ++typedef globals_struct<> globals; ++ + // clang-format off + + // bit 0 (1) - set if: plain ASCII string character + // bit 1 (2) - set if: whitespace + // bit 4 (0x10) - set if: 0-9 e E . +- constexpr static const uint8_t parse_flags[256] = { ++ template ++ const unsigned char globals_struct::parse_flags[256] = { + // 0 1 2 3 4 5 6 7 8 9 A B C D E F + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 2, 0, 0, // 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 1 +@@ -162,15 +167,13 @@ struct globals_struct { + }; + + // clang-format on +-}; +-typedef globals_struct<> globals; + +-constexpr inline bool is_plain_string_character(char c) { ++inline bool is_plain_string_character(char c) { + // return c >= 0x20 && c <= 0x7f && c != 0x22 && c != 0x5c; + return (globals::parse_flags[static_cast(c)] & 1) != 0; + } + +-constexpr inline bool is_whitespace(char c) { ++inline bool is_whitespace(char c) { + // return c == '\r' || c == '\n' || c == '\t' || c == ' '; + return (globals::parse_flags[static_cast(c)] & 2) != 0; + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:15 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:15 +0000 Received: from localhost ([127.0.0.1]:35143 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OE-0005k2-OF for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:15 -0400 Received: from mout01.posteo.de ([185.67.36.65]:33925) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nv-0005hD-0e for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:55 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 831EE240028 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:49 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695089; bh=WEjO2xUfGUfJHiDrGCqsm4gPn5KttkaWp62v4uzPXeY=; h=From:To:Cc:Subject:Date:From; b=Q7CZMvgBfKanTyKmyREjlGRfmCKhJI7aSriKuX3oLLv1xj8lPUSBgp5vUjcVMBTkX 8rHptbmQUW3ncm6mg4/KMGkpq5yyiSBw+ZrBbHuSMzlNsut/nNmunuQWupcOAW9Ygp BEc3azSHnTFXDjLATzFMBKNhG2voPlpfxMTAR5oUFFmdykNhKihq9x6azxqGH439wy H3cgPzFcLJpPxLtGaS7uSVhBwVmINSBGn8+pZaSzMr5t1XYnD6v2oKlVSX5RCydvOW pLByof4ur/UDgg91Jsk3+TrEOQuI+IcP9RzWO5t5xeBKU+pOekSCnSoQsM8MTvBsxY 943SJq7MS3nAw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTs17V8z6tmB; Thu, 13 Oct 2022 23:04:49 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 05/15] gnu: Add tinydir. Date: Thu, 13 Oct 2022 21:04:14 +0000 Message-Id: <20221013210424.993-6-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (tinydir): New variable. --- gnu/packages/cpp.scm | 41 +++++++++++++++++++ .../patches/tinydir-fix-cbehave-test.patch | 16 ++++++++ 2 files changed, 57 insertions(+) create mode 100644 gnu/packages/patches/tinydir-fix-cbehave-test.patch diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index b6a0a70ed7..7871660611 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2093,3 +2093,44 @@ (define-public sajson (description "@code{sajson} is an in-place JSON parser with support for parsing with only a single memory allocation.") (license license:expat)))) + +(define-public tinydir + (package + (name "tinydir") + (version "1.2.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cxong/tinydir") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1nprgdfx4i8wzc1idw6chan4fjfa75b5ll8kghdc0q2278pny259")) + (patches (search-patches "tinydir-fix-cbehave-test.patch")) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "tests/cbehave")))) + (build-system cmake-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'path-cmake + (lambda _ + (substitute* "tests/CMakeLists.txt" + (("^include_dir.*cbehave.*") + (string-append "include_directories("#$cbehave "/include)")) + (("^add_subdir.*cbeha.*") "")))) + (add-before 'configure 'chdir + (lambda _ + (chdir "tests"))) + (replace 'install + (lambda _ + (install-file "../tinydir.h" + (string-append #$output "/include"))))))) + (native-inputs (list cbehave)) + (home-page "https://github.com/cxong/tinydir") + (synopsis "Directory listing wrapper") + (description "@code{tinydir} is a header-only C wrapper for listing +directory contents.") + (license license:bsd-2))) diff --git a/gnu/packages/patches/tinydir-fix-cbehave-test.patch b/gnu/packages/patches/tinydir-fix-cbehave-test.patch new file mode 100644 index 0000000000..84ecee12c2 --- /dev/null +++ b/gnu/packages/patches/tinydir-fix-cbehave-test.patch @@ -0,0 +1,16 @@ +Make test work with upstream cbehave +(tinydir bundles a modified version) + +diff --git a/tests/file_open_test.c b/tests/file_open_test.c +index 3e659bc..9f6f88d 100644 +--- a/tests/file_open_test.c ++++ b/tests/file_open_test.c +@@ -19,4 +19,7 @@ FEATURE(file_open, "File open") + SCENARIO_END + FEATURE_END + +-CBEHAVE_RUN("File open:", TEST_FEATURE(file_open)) ++int main(void) { ++ cbehave_feature _cfeatures[] = {{feature_idx(file_open)}}; ++ return cbehave_runner("File open:", _cfeatures); ++} -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:15 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:15 +0000 Received: from localhost ([127.0.0.1]:35145 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OF-0005k4-3k for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:15 -0400 Received: from mout02.posteo.de ([185.67.36.66]:34859) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nv-0005hE-Qe for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:56 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 5305B240101 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695090; bh=+HDnWYXbih95168h1mcdHXf9NLtQInYIOnII2JH5StA=; h=From:To:Cc:Subject:Date:From; b=Z/EcqLQyhKXhl+bA7XBXZEbYxngfRVbcj4y3CyRmrmei7IEdZxB5q8LwPgNdnAiB7 yM3p7LXVXK1JdLF2QzCj4lzX8BSHdUL8jOgZlG+FHL5Q+qp4JV5LEsZfOnVeyicMC0 7SnY8LQagxWBC1ENWrFUovFXuiXFFNfwSnlwWQuGIzzA7dOTL92taYU0SXNgUGABbV do8UHqtIriV/OA274BSgp4+EjGfHJCpTgkHJ4B7UVdRiI5+DfnsTpQpkG6UqzdeNcD MMcxhbs+uYnh3+8lOuHPtXcy2hCahQqxJwqHmgRkjRZf4IFzAagx2J7iyzXYIt4PaM P/urRC6qXRYgw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTs6ZhHz6tmH; Thu, 13 Oct 2022 23:04:49 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 06/15] gnu: Add optionparser. Date: Thu, 13 Oct 2022 21:04:15 +0000 Message-Id: <20221013210424.993-7-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/cpp.scm (optionparser): New variable. --- gnu/packages/cpp.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 7871660611..51d146476f 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2134,3 +2134,51 @@ (define-public tinydir (description "@code{tinydir} is a header-only C wrapper for listing directory contents.") (license license:bsd-2))) + +(define-public optionparser + (package + (name "optionparser") + (version "1.7") + (source (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/optionparser/" + "optionparser-" version ".tar.gz")) + (sha256 + (base32 + "04gfxrdzwacaynb8scsz6rr7nh64n6yk6w9dh2qdhrxw4caqr0dk")))) + (outputs '("out" "doc")) + (build-system gnu-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'chdir + (lambda _ (chdir "src"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (begin + (invoke "./example_arg") + (invoke "./testparse") + (invoke "./testprintusage") + (invoke "./testodr") + (invoke "./example"))))) + (replace 'install + (lambda _ + (install-file "optionparser.h" + (string-append #$output "/include")))) + (add-after 'install 'install-doc + (lambda _ + (copy-recursively + "../html" + (string-append #$output:doc "/share/doc/optionparser/html"))))))) + (native-inputs (list doxygen)) + (home-page "https://optionparser.sourceforge.net/") + (synopsis "Header-only C++ library to parse command line options") + (description "This library can be used to handle the command line +arguments of a C++ program. It supports the short and long option formats of +getopt(), getopt_long() and getopt_long_only(), but has a more convenient +interface.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:16 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:16 +0000 Received: from localhost ([127.0.0.1]:35147 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OF-0005kB-ET for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:16 -0400 Received: from mout01.posteo.de ([185.67.36.65]:55361) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nw-0005hF-FO for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:57 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id F2343240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695091; bh=IWZ0Gtu/G8X7HUVM4xl8sRc99uIUqsH3k5jyIto+DXI=; h=From:To:Cc:Subject:Date:From; b=OiaaulYl144IN2JJq9wSoTF0hbo4lhMApfuTkLrXoPGhp6uoL22fYCreTzPlu1h8k WYIHzkEYUo2nn3nVMZCWbjzm5CP7ueFPBAiWHMhZZ558sXdoL71e4rZWMQHwcEsXVi ndiD5mEikYLKi2QG1ZVasOL7GpsgvnT3meecSu8XQOiWJSFQG+P/uGmievhxoLib+s DDjqwqdqLtYe+USut0E/I2oKjNTc2wvCXpaGB7gJtBdOW29jYWThw0Vna5BPHiRwRA OWG/X5Ex2r5ilDDAl5raDtJjf98hyxskW6Fgq+NPvp5W48PIEy6vZMsfs7LzEC7X2i EUgKLej0G9lpw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTt44wpz6tmH; Thu, 13 Oct 2022 23:04:50 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 07/15] gnu: Add sajson-for-gemmi. Date: Thu, 13 Oct 2022 21:04:16 +0000 Message-Id: <20221013210424.993-8-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (sajson-for-gemmi): New variable. --- gnu/packages/chemistry.scm | 23 +++ .../sajson-for-gemmi-numbers-as-strings.patch | 195 ++++++++++++++++++ 2 files changed, 218 insertions(+) create mode 100644 gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index c517610fe8..723b7ee8db 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2020 Björn Höfling ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2021 Ricardo Wurmus +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +28,7 @@ (define-module (gnu packages chemistry) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix git-download) #:use-module (gnu packages) #:use-module (gnu packages algebra) @@ -35,6 +37,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) @@ -50,8 +53,10 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages stb) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system python)) @@ -566,3 +571,21 @@ (define-public python-pymol used to prepare publication-quality figures, to share interactive results with your colleagues, or to generate pre-rendered animations.") (license license:bsd-3))) + +(define-public sajson-for-gemmi + (package/inherit sajson + (name "sajson-for-gemmi") + (source (origin + (inherit (package-source sajson)) + (patches (cons + (search-patch + "sajson-for-gemmi-numbers-as-strings.patch") + (origin-patches (package-source sajson)))))) + (arguments + (substitute-keyword-arguments (package-arguments sajson) + ;; This is a modified version used in gemmi, in which numbers are kept + ;; as strings. Building the tests fails with the modification. + ((#:tests? _ #f) #f) + ((#:phases phases) + #~(modify-phases #$phases + (delete 'build))))))) diff --git a/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch new file mode 100644 index 0000000000..6f476b8583 --- /dev/null +++ b/gnu/packages/patches/sajson-for-gemmi-numbers-as-strings.patch @@ -0,0 +1,195 @@ +Patch for gemmi: Keep numbers in JSON file as strings. + +Adapted from this commit of the bundled fork of sajson in gemmi: +https://github.com/project-gemmi/gemmi/commit/fccbca4f6040364ba708613e1429c2251872240d + +diff -ur a/include/sajson.h b/include/sajson.h +--- a/include/sajson.h ++++ b/include/sajson.h +@@ -411,43 +411,6 @@ + }; + } // namespace internal + +-namespace integer_storage { +-enum { word_length = 1 }; +- +-inline int load(const size_t* location) { +- int value; +- memcpy(&value, location, sizeof(value)); +- return value; +-} +- +-inline void store(size_t* location, int value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- static_assert( +- sizeof(value) <= sizeof(*location), +- "size_t must not be smaller than int"); +- memcpy(location, &value, sizeof(value)); +-} +-} // namespace integer_storage +- +-namespace double_storage { +-enum { word_length = sizeof(double) / sizeof(size_t) }; +- +-inline double load(const size_t* location) { +- double value; +- memcpy(&value, location, sizeof(double)); +- return value; +-} +- +-inline void store(size_t* location, double value) { +- // NOTE: Most modern compilers optimize away this constant-size +- // memcpy into a single instruction. If any don't, and treat +- // punning through a union as legal, they can be special-cased. +- memcpy(location, &value, sizeof(double)); +-} +-} // namespace double_storage +- + /// Represents a JSON value. First, call get_type() to check its type, + /// which determines which methods are available. + /// +@@ -585,70 +548,10 @@ + return length; + } + +- /// If a numeric value was parsed as a 32-bit integer, returns it. +- /// Only legal if get_type() is TYPE_INTEGER. +- int get_integer_value() const { +- assert_tag(tag::integer); +- return integer_storage::load(payload); +- } +- +- /// If a numeric value was parsed as a double, returns it. +- /// Only legal if get_type() is TYPE_DOUBLE. +- double get_double_value() const { +- assert_tag(tag::double_); +- return double_storage::load(payload); +- } +- +- /// Returns a numeric value as a double-precision float. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- double get_number_value() const { +- assert_tag_2(tag::integer, tag::double_); +- if (value_tag == tag::integer) { +- return get_integer_value(); +- } else { +- return get_double_value(); +- } +- } +- +- /// Returns true and writes to the output argument if the numeric value +- /// fits in a 53-bit integer. This is useful for timestamps and other +- /// situations where integral values with greater than 32-bit precision +- /// are used, as 64-bit values are not understood by all JSON +- /// implementations or languages. +- /// Returns false if the value is not an integer or not in range. +- /// Only legal if get_type() is TYPE_INTEGER or TYPE_DOUBLE. +- bool get_int53_value(int64_t* out) const { +- // Make sure the output variable is always defined to avoid any +- // possible situation like +- // https://gist.github.com/chadaustin/2c249cb850619ddec05b23ca42cf7a18 +- *out = 0; +- +- assert_tag_2(tag::integer, tag::double_); +- switch (value_tag) { +- case tag::integer: +- *out = get_integer_value(); +- return true; +- case tag::double_: { +- double v = get_double_value(); +- if (v < -(1LL << 53) || v > (1LL << 53)) { +- return false; +- } +- int64_t as_int = static_cast(v); +- if (as_int != v) { +- return false; +- } +- *out = as_int; +- return true; +- } +- default: +- return false; +- } +- } +- + /// Returns the length of the string. + /// Only legal if get_type() is TYPE_STRING. + size_t get_string_length() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return payload[1] - payload[0]; + } + +@@ -659,7 +562,7 @@ + /// embedded NULs. + /// Only legal if get_type() is TYPE_STRING. + const char* as_cstring() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return text + payload[0]; + } + +@@ -667,7 +570,7 @@ + /// Returns a string's value as a std::string. + /// Only legal if get_type() is TYPE_STRING. + std::string as_string() const { +- assert_tag(tag::string); ++ assert_tag_3(tag::string, tag::integer, tag::double_); + return std::string(text + payload[0], text + payload[1]); + } + #endif +@@ -690,6 +593,10 @@ + assert(e1 == value_tag || e2 == value_tag); + } + ++ void assert_tag_3(tag e1, tag e2, tag e3) const { ++ assert(e1 == value_tag || e2 == value_tag || e3 == value_tag); ++ } ++ + void assert_in_bounds(size_t i) const { assert(i < get_length()); } + + const tag value_tag; +@@ -2059,6 +1966,8 @@ + std::pair parse_number(char* p) { + using internal::tag; + ++ size_t start = p - input.get_data(); ++ + // Assume 32-bit, two's complement integers. + static constexpr unsigned RISKY = INT_MAX / 10u; + unsigned max_digit_after_risky = INT_MAX % 10u; +@@ -2235,23 +2144,18 @@ + u = 0u - u; + } + } ++ ++ bool success; ++ size_t* out = allocator.reserve(2, &success); ++ if (SAJSON_UNLIKELY(!success)) { ++ return std::make_pair(oom(p, "number"), tag::null); ++ } ++ out[0] = start; ++ out[1] = p - input.get_data(); ++ + if (try_double) { +- bool success; +- size_t* out +- = allocator.reserve(double_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "double"), tag::null); +- } +- double_storage::store(out, d); + return std::make_pair(p, tag::double_); + } else { +- bool success; +- size_t* out +- = allocator.reserve(integer_storage::word_length, &success); +- if (SAJSON_UNLIKELY(!success)) { +- return std::make_pair(oom(p, "integer"), tag::null); +- } +- integer_storage::store(out, static_cast(u)); + return std::make_pair(p, tag::integer); + } + } -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:18 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:18 +0000 Received: from localhost ([127.0.0.1]:35149 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OG-0005kJ-4Q for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:17 -0400 Received: from mout01.posteo.de ([185.67.36.65]:59209) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nu-0005hA-Bk for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:57 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id D6135240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695088; bh=/v+U3h5ILVWz56VBDwUv8OGMC9qq3QZiF67+ghyqIdc=; h=From:To:Cc:Subject:Date:From; b=j71PqMPE509BYf/fFdSZ+5fQuxrWySQIEoYKYUs9sPSlRKf2rbxFezk3GlWJfn7Fi jrc4GWo3BuLD4N4h1ukAUBHe/pcvys/Vyd7kPEZTyNGstnCk0ot94qRXKDXqEF+cYR X0i1IMFl9o6Wx+EdyRZ3gukZnGISMGsGfigoCaH0m0DlMgfwlAEIO4WI4UT6mM2ldT lPGOXdDvS+uY/0XPScepNVtZCJOOysjvEtJCdp6zWK/8Ws+kwO/83L5XGaxi/TgxFf rnrGrTPOv+oil8LNi64zKw3T/VDF6brlEJmMz3QDa36pES+j14VJdWWEttNWvyy3lV S1uLrT2gI0sHw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTr3DXlz6trC; Thu, 13 Oct 2022 23:04:48 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 04/15] gnu: Add cbehave. Date: Thu, 13 Oct 2022 21:04:13 +0000 Message-Id: <20221013210424.993-5-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/check.scm (cbehave): New variable. --- gnu/packages/check.scm | 56 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 797fe71277..70dfbbac27 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -38,6 +38,7 @@ ;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer ;;; Copyright © 2021 Hugo Lecomte ;;; Copyright © 2022 Maxime Devos +;;; Copyright © 2022 David Elsing ;;; ;;; This file is part of GNU Guix. ;;; @@ -3190,3 +3191,58 @@ (define-public python-pytest-regressions tables by saving expected data in a data directory (courtesy of pytest-datadir) that can be used to verify that future runs produce the same data.") (license license:expat))) + +(define-public cbehave + (let ((commit "5deaea0eaaf52f1c5ccdac0c68c003988f348fb4") + (revision "1")) + (package + (name "cbehave") + (version (git-version "0.2.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bigwhite/cbehave") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0kicawxmxn059n3rmfc7r2q5wfjrqbr6lm8dmsi86ba76ak0f9gi")) + (snippet + #~(begin + (for-each + (lambda (file) + (delete-file file)) + '("Makefile.in" "aclocal.m4" "config.guess" "config.sub" + "configure" "depcomp" "install-sh" "libtool" + "ltmain.sh" "missing" "src/Makefile.in" + "src/example/Makefile.in")))))) + (build-system gnu-build-system) + (arguments + (list + #:configure-flags #~(list "--enable-shared" "--disable-static") + #:phases + #~(modify-phases %standard-phases + (add-before 'bootstrap 'rename-configure.in + (lambda _ + (rename-file "configure.in" "configure.ac"))) + (add-after 'rename-configure.in 'set-AM_PROG_AR + (lambda _ + (substitute* "configure.ac" + (("^AC_PROG_LIBTOOL.*" orig) + (string-append "AM_PROG_AR\n" orig))))) + (add-after 'set-AM_PROG_AR 'enable-tests + (lambda _ + (let ((port (open-file "src/example/Makefile.am" "a"))) + (display (string-append "\nTESTS = calculator_test" + " text_editor_test string_test" + " product_database_test mock_test\n") + port) + (close-port port)))) + (add-before 'check 'create-dummy-file + (lambda _ + (invoke "touch" "src/example/foo.txt")))))) + (native-inputs (list autoconf automake libtool)) + (home-page "https://github.com/bigwhite/cbehave") + (synopsis "Behavior-driven development framework for C") + (description "CBehave is a C framework for behavior-driven development.") + (license license:apsl2)))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:19 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:19 +0000 Received: from localhost ([127.0.0.1]:35151 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OI-0005kU-1P for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:19 -0400 Received: from mout02.posteo.de ([185.67.36.66]:34785) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nx-0005hH-RG for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:58 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 57EC2240101 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695092; bh=d52oTREH465b1cVlWmsh9LgN+tmCIg/imYKO6s7j27g=; h=From:To:Cc:Subject:Date:From; b=jn8QKYFspIJfZrdmUg1WDOEmIrjznvnFn9O/iQu9BhgSc6Y8mFmCeFV2V/veDf1US 4nJJu3P51CpqjP4iplX4eMAriSyPWATGcI6yyi9Oo2g//KGOoESyGp7YnOCBMZq61i g+q01iR/U4ecihi8n/wxyAZLNKGKGQYFDh2CiRfat348D92CcP+TbASTD2U+llyQvP vYwFLFDOGGr7Ctre2AQE3lQMNzK2hmubmI0XgEpF2hgPslQTPeERIzvVlTdEz/UyFH sDRyjIBd0VKajV1Lh48rJrw05enZlvJbO3eVqtMilJDBv9FPjX3a/aKg17U2OvBEMw eOmdGnZMA+LEA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTv6vTbz6tnd; Thu, 13 Oct 2022 23:04:51 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 09/15] gnu: Add freesasa. Date: Thu, 13 Oct 2022 21:04:18 +0000 Message-Id: <20221013210424.993-10-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (freesasa): New variable. --- gnu/packages/chemistry.scm | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index c6b8376248..a9868ed64d 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,11 +34,13 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) + #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) @@ -54,6 +56,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages stb) + #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) #:use-module (guix build-system copy) @@ -685,3 +688,86 @@ (define-public gemmi @item crystallographic symmetry. @end enumerate") (license license:mpl2.0))) + +(define-public freesasa + (package + (name "freesasa") + (version "2.1.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mittinatten/freesasa") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07wdnahf3g355ryaiqvfxd5f4rl54wv8jwxcbn0nia89fqysbv0f")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove C files generated by Flex and Bison + (for-each delete-file + '("src/parser.c" "src/parser.h" + "src/lexer.c" "src/lexer.h")))))) + (outputs '("out" "doc")) + (build-system gnu-build-system) + (arguments + (list + #:configure-flags + #~(list "--enable-check" + "--enable-parser-generator" + "CXXFLAGS=-std=c++17" + "--enable-doxygen") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-libc++-linking + (lambda _ + (substitute* "src/Makefile.am" + (("-lc\\+\\+") "")))) + (add-after 'unpack 'build-shared-library + (lambda _ + (substitute* "src/Makefile.am" + (("lib_LIBRARIES") "lib_LTLIBRARIES") + (("libfreesasa\\.a") "libfreesasa.la") + (("freesasa_LDADD \\+= libfreesasa\\.la" prev) + (string-append prev "\nlibfreesasa_la_LIBADD" + " = -ljson-c ${libxml2_LIBS}\n")) + (("_a_SOURCES") "_la_SOURCES")) + (substitute* "configure.ac" + (("AC_PROG_INSTALL" inst) + (string-append "AM_PROG_LIBTOOL\n" inst))) + (substitute* "tests/Makefile.am" + (("libfreesasa\\.a") "libfreesasa.la")))) + (add-before 'build 'build-lexer-and-parser + (lambda _ + (with-directory-excursion "src" + (invoke "make" "lexer.h" "parser.h")))) + (add-after 'install 'install-doc + (lambda _ + (copy-recursively + "doc/html" + (string-append #$output:doc "/share/doc/" + #$name "-" #$version))))))) + (native-inputs + (list autoconf + automake + bison + check + doxygen + fast-float + flex + libtool + pegtl + perl + pkg-config)) + (inputs + (list gemmi json-c libxml2)) + (home-page "https://freesasa.github.io/") + (synopsis "Calculate the solvent accessible surface area (SASA) of +molecules") + (description "FreeSASA is a command line tool and C-library for +calculating @acronym{SASAs, solvent accessible surface areas}. By default Lee +& Richards'algorithm is used, but Shrake & Rupley's is also available. Both +can be parameterized to arbitrary precision, and for high resolution versions +of the algorithms, the calculations give identical results.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:19 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:19 +0000 Received: from localhost ([127.0.0.1]:35153 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OJ-0005kc-5A for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:19 -0400 Received: from mout02.posteo.de ([185.67.36.66]:55181) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nz-0005hP-6P for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:04:59 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id AD583240103 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695093; bh=8byrgJxPEs3MjxtUlkCioVgZjZ/SfO6Ge5c8/pjNbhg=; h=From:To:Cc:Subject:Date:From; b=KEgUo+d1t6vDtcIH+zvb7OzpTJpBjiFdZj4DQgGhQ6qajvritEIiZU35bRxbwQbpE kHlClc3BMuvlS+rfpr842g0S5ottOQXyM8EvM8NDN9DCAuv95vUzd9d6BmGpdhZz+o S3qBqqMMrY9OmzU9e0+vZAVfsctB5i+yJVyObJg0WoF8XCHOAlMBIHAbyQ4mSl/RWw 91jPcKkbwEMSfSYm1xAUUU79l64OTAGAcKgYV+cdKDyeF1k2IkXspUzYR6m2a/W7an PZx52G2kBOpAHawt+jFtpTUjkEro000tnNzKdvEj+HHQAw1EmCfk5CjVo1ouJgKshR V1w40HsUvsgpA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTx2GSFz6tmH; Thu, 13 Oct 2022 23:04:53 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 11/15] gnu: Add coordgenlibs. Date: Thu, 13 Oct 2022 21:04:20 +0000 Message-Id: <20221013210424.993-12-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (coordgenlibs): New variable. --- gnu/packages/chemistry.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 0712c44ad9..4da1bc10f1 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -792,3 +792,31 @@ (define-public maeparser (synopsis "Maestro file parser") (description "maeparser is a parser for Schrodinger Maestro files.") (license license:expat))) + +(define-public coordgenlibs + (package + (name "coordgenlibs") + (version "3.0.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/coordgenlibs/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0d09x3v38i9y184bml020bq7xizdrdwng38qmdxlplzfhqkjdidv")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list maeparser)) + (arguments + (list + #:configure-flags + #~(list "-DCOORDGEN_RIGOROUS_BUILD=OFF" + "-DCOORDGEN_USE_MAEPARSER=ON"))) + (home-page "https://github.com/schrodinger/coordgenlibs/") + (synopsis "2D molecule coordinate generation") + (description "@code{coordgenlibs} contains algorithms to generate 2D +coordinates of molecules including macrocycles and metal complexes. It has an +emphasis on quality rather than speed.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:19 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:20 +0000 Received: from localhost ([127.0.0.1]:35155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OJ-0005kp-I4 for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:19 -0400 Received: from mout01.posteo.de ([185.67.36.65]:40107) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nz-0005hb-Kn for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:00 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 05FFE240029 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695093; bh=2QmAVmeULfPqXDeiy0Wu4AcytRymfaVMLyY+I1KUpqs=; h=From:To:Cc:Subject:Date:From; b=NxSxAUxpT1aIhUQpidkVNOg+pWRsSHeAakNccILNT3o3u1w16RQ/nDMpiVwDxkfxs zgXyLwACfmd+Mi7iTDx1Kiv1CCU6d6cZ/ei2TsEP6QAMzMIoOhSEuFxCopcq3g8qnT AyuUNrKuD9RD8ZKqhJh2cZHzms6hxmPZULy0NS4tJQ6YUjsnPqvI9Ev06AzP3u2+xW gVJecfoja6icqE+FHE6zSEzlBAG3a5uqtKM425C8HTPehTdox0ZVcz6Vx1fExmFF9b powWjkJ76YsqWyWxTNikNHUsgC0TDpuaFvq5rbv0sFuLMXAvhQ5RLj9CYaCyVm/D00 vWLqvdD/+fCYg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTw4VZgz6tpd; Thu, 13 Oct 2022 23:04:52 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 10/15] gnu: Add maeparser. Date: Thu, 13 Oct 2022 21:04:19 +0000 Message-Id: <20221013210424.993-11-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (maeparser): New variable. --- gnu/packages/chemistry.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index a9868ed64d..0712c44ad9 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -771,3 +771,24 @@ (define-public freesasa can be parameterized to arbitrary precision, and for high resolution versions of the algorithms, the calculations give identical results.") (license license:expat))) + +(define-public maeparser + (package + (name "maeparser") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schrodinger/maeparser") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1yv4y5hn49fhylziigsg922bb244lb57p69r7vg9q899zd3l5b7l")))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (inputs (list zlib)) + (home-page "https://github.com/schrodinger/maeparser") + (synopsis "Maestro file parser") + (description "maeparser is a parser for Schrodinger Maestro files.") + (license license:expat))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:20 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:20 +0000 Received: from localhost ([127.0.0.1]:35157 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OJ-0005ks-UN for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:20 -0400 Received: from mout01.posteo.de ([185.67.36.65]:35259) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nz-0005ha-Kn for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:00 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 9EAAC240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695091; bh=Q2lEA2faRu8zy11QOt+w6OkaUhkUhPUw/mCXjD9ih30=; h=From:To:Cc:Subject:Date:From; b=D44FkDa8PtTEg2iUKTZq4vkgaS0klvnh/NovZIIbbO2NChupr76Y2/CM2MQEdk09X SFXZD4RYDBN+QsnI2PQBSw9k0oFjMdf1GXRxVeMwT93T/suJmZS0ntbR5c/pmjXlmU PYkTbaIWK9oAUmWv+qj4SrNI4cza/fVmht3fx3rod6OlbpmiW4rhIhJqyKOHl9CaZ2 XgFiYs480rLNmGehi+v8lf49R4mHMe4tLmcUElJO1pamAzdWSktEQBycITop1VpHcM 79dk6DnteOynjWTE5bg3L2KR7GEgY4vbnfGgqwMFOVZwb/+swrDuxTagJ8/lWbhf7I gfyXa/r8lV1BQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTv1qnGz6tnd; Thu, 13 Oct 2022 23:04:51 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 08/15] gnu: Add gemmi. Date: Thu, 13 Oct 2022 21:04:17 +0000 Message-Id: <20221013210424.993-9-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (gemmi): New variable. --- gnu/packages/chemistry.scm | 96 +++++++++++++++++++ .../patches/gemmi-fix-pegtl-usage.patch | 31 ++++++ .../patches/gemmi-fix-sajson-types.patch | 11 +++ 3 files changed, 138 insertions(+) create mode 100644 gnu/packages/patches/gemmi-fix-pegtl-usage.patch create mode 100644 gnu/packages/patches/gemmi-fix-sajson-types.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 723b7ee8db..c6b8376248 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -589,3 +589,99 @@ (define-public sajson-for-gemmi ((#:phases phases) #~(modify-phases #$phases (delete 'build))))))) + +(define-public gemmi + (package + (name "gemmi") + (version "0.5.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/project-gemmi/gemmi") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00km5q726bslrw7xbfwb3f3mrsk19qbimfnl3hvr4wi1y3z8i18a")) + (patches + (search-patches "gemmi-fix-sajson-types.patch" + "gemmi-fix-pegtl-usage.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "include/gemmi/third_party") + (delete-file-recursively "third_party"))))) + (outputs '("out" "bin" "python")) + (build-system cmake-build-system) + (native-inputs + (list fast-float + optionparser + pegtl + pocketfft-cpp + pybind11 + sajson-for-gemmi + stb-sprintf + tinydir)) + (inputs (list python zlib)) + (arguments + (list + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (site-packages))) + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:configure-flags + #~(list "-DUSE_PYTHON=ON" + (string-append "-DPYTHON_INSTALL_DIR=" + (site-packages %build-inputs %outputs))) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-includes + (lambda _ + (substitute* + (list + "include/gemmi/sprintf.hpp" + "include/gemmi/dirwalk.hpp" + "include/gemmi/cif.hpp" + "include/gemmi/json.hpp" + "python/gemmi.cpp" + "include/gemmi/atof.hpp" + "include/gemmi/numb.hpp" + "include/gemmi/fourier.hpp") + (("") "") + (("\"third_party/tinydir.h\"") "") + (("\"third_party/tao/pegtl.hpp\"") "") + (("\"third_party/sajson.h\"") "") + (("\"gemmi/third_party/tao/pegtl/parse_error.hpp\"") + "") + (("\"third_party/fast_float.h\"") + "") + (("\"third_party/pocketfft_hdronly.h\"") + "")))) + (add-after 'unpack 'change-bin-prefix + (lambda _ + (substitute* "CMakeLists.txt" + (("install\\(TARGETS program DESTINATION bin\\)") + (string-append + "install(TARGETS program DESTINATION " + #$output:bin "/bin)"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "../source" + (setenv "PYTHONPATH" "../build") + (invoke "python3" "-m" "unittest" "discover" "-v" + "-s" "tests")))))))) + (home-page "https://gemmi.readthedocs.io/en/latest/") + (synopsis "Macromolecular crystallography library and utilities") + (description "GEMMI is a C++ library for macromolecular crystallography. +It can be used for working with +@enumerate +@item macromolecular models (content of PDB, PDBx/mmCIF and mmJSON files), +@item refinement restraints (CIF files), +@item reflection data (MTZ and mmCIF formats), +@item data on a 3D grid (electron density maps, masks, MRC/CCP4 format) +@item crystallographic symmetry. +@end enumerate") + (license license:mpl2.0))) diff --git a/gnu/packages/patches/gemmi-fix-pegtl-usage.patch b/gnu/packages/patches/gemmi-fix-pegtl-usage.patch new file mode 100644 index 0000000000..3667474847 --- /dev/null +++ b/gnu/packages/patches/gemmi-fix-pegtl-usage.patch @@ -0,0 +1,31 @@ +Use the definitions from (newer) upstream PEGTL. + +diff --git a/include/gemmi/cif.hpp b/include/gemmi/cif.hpp +index c7ffdb44..35d24210 100644 +--- a/include/gemmi/cif.hpp ++++ b/include/gemmi/cif.hpp +@@ -37,7 +37,6 @@ namespace pegtl = tao::pegtl; + namespace rules { + + template struct lookup_char { +- using analyze_t = pegtl::analysis::generic; + template static bool match(Input& in) { + if (!in.empty() && cif::char_table(in.peek_char()) == TableVal) { + if (TableVal == 2) // this set includes new-line +@@ -71,11 +70,11 @@ namespace rules { + struct ws_or_eof : pegtl::sor {}; + + // (b) Reserved words. +- struct str_data : TAOCPP_PEGTL_ISTRING("data_") {}; +- struct str_loop : TAOCPP_PEGTL_ISTRING("loop_") {}; +- struct str_global : TAOCPP_PEGTL_ISTRING("global_") {}; +- struct str_save : TAOCPP_PEGTL_ISTRING("save_") {}; +- struct str_stop : TAOCPP_PEGTL_ISTRING("stop_") {}; ++ struct str_data : TAO_PEGTL_ISTRING("data_") {}; ++ struct str_loop : TAO_PEGTL_ISTRING("loop_") {}; ++ struct str_global : TAO_PEGTL_ISTRING("global_") {}; ++ struct str_save : TAO_PEGTL_ISTRING("save_") {}; ++ struct str_stop : TAO_PEGTL_ISTRING("stop_") {}; + struct keyword : pegtl::sor {}; + diff --git a/gnu/packages/patches/gemmi-fix-sajson-types.patch b/gnu/packages/patches/gemmi-fix-sajson-types.patch new file mode 100644 index 0000000000..9633ddac8b --- /dev/null +++ b/gnu/packages/patches/gemmi-fix-sajson-types.patch @@ -0,0 +1,11 @@ +diff -ur a/include/gemmi/json.hpp b/include/gemmi/json.hpp +--- a/include/gemmi/json.hpp ++++ b/include/gemmi/json.hpp +@@ -38,6 +38,7 @@ + + inline std::string as_cif_value(const sajson::value& val) { + switch (val.get_type()) { ++ case sajson::TYPE_INTEGER: + case sajson::TYPE_DOUBLE: + return val.as_string(); + case sajson::TYPE_NULL: -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:21 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:21 +0000 Received: from localhost ([127.0.0.1]:35159 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OK-0005l1-MO for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:21 -0400 Received: from mout01.posteo.de ([185.67.36.65]:41575) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5Nz-0005hd-Ry for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:00 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 5C94F240029 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695094; bh=Mol2jk9OkE6XDRueEQk7RLzW7BUm6XLLFtEB6As4IZg=; h=From:To:Cc:Subject:Date:From; b=CjCVrEUp4uA9ezAWziL4GhTwL4rBNXzMZhiNZblWRx/GbbrMLchbsg8/nJrGpH3pj VCnm06BCfNMEtT8tz8YScPwv/t0PjBpwR/k9c3axiEJxI5bQLESa5NAS/wxZLznLRM 6v8FcWdVDwdywT+LCdWalGDWMJFVX71SDDIdhmO78DnQQJCUEsgExryzpSBezPoY5O EEANzuwWQKi7iCxu+YtRuhyemAU9vIxyHhNACfFMfYbaWpcBWKWeUf+L8VA9VdYP5/ Ia2GmLoJ7NZOjeHmlGbLPBTVC2LI0UnBzwAIJTZhscrLoMDcelzE9oLg9IA3ntG1l5 jNozwama7tY9Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTx74nwz6tmH; Thu, 13 Oct 2022 23:04:53 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 12/15] gnu: Add yaehmop. Date: Thu, 13 Oct 2022 21:04:21 +0000 Message-Id: <20221013210424.993-13-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (yaehmop): New variable. --- gnu/packages/chemistry.scm | 106 +++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 4da1bc10f1..a1c1dbfa1b 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -42,6 +42,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) + #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages gv) @@ -56,6 +57,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages stb) + #:use-module (gnu packages tex) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (guix build-system cmake) @@ -820,3 +822,107 @@ (define-public coordgenlibs coordinates of molecules including macrocycles and metal complexes. It has an emphasis on quality rather than speed.") (license license:bsd-3))) + +(define-public yaehmop + (package + (name "yaehmop") + (version "2022.09.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/greglandrum/yaehmop") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x0d75m1hgdb411fiv7c5bwq1n4y0swrll0gigh8v5c73kjxrja0")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Separate program + (delete-file-recursively "viewkel") + ;; Remove example output (some are corrupted) + (for-each delete-file (find-files "examples" "\\.Z$")) + ;; Documentation outputs + (for-each delete-file (find-files "docs" "\\.(ps|pdf)$")) + ;; These are transpiled from Fortran to C, but we build the + ;; Fortran code instead + (delete-file-recursively "tightbind/f2c_files") + (delete-file "tightbind/diag.c") + (delete-file "tightbind/cboris.c") + (delete-file "tightbind/abfns.c") + (delete-file "tightbind/lovlap.c"))))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list + "-DUSE_BLAS_LAPACK=ON" + (string-append "-DPARM_FILE_LOC=" #$output + "/share/" #$name "-" #$version "/eht_parms.dat") + "-DBIND_EXE_NAME=yaehmop-bind") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "tightbind"))) + (add-after 'chdir 'patch-fortran-functions + (lambda _ + (substitute* '("mov.c" "prototypes.h") + (("lovlap\\(") "lovlap_(") + (("abfns\\(") "abfns_(")))) + (add-after 'chdir 'patch-cmake + (lambda _ + (substitute* "CMakeLists.txt" + (("project\\(yaehmop C\\)") "project(yaehmop C Fortran)") + (("abfns.c") "fortran77/abfns.f") + (("lovlap.c") "fortran77/lovlap.f") + (("(set\\(PARM_FILE_LOC.*)\\)" all init) + (string-append init " CACHE STRING \"\")")) + (("add_library\\(yaehmop_eht" lib) + (string-append lib " SHARED ")) + (("target_link_libraries\\(test_eht \\$\\{LAPACK_LIBRARIES\\}.*" + all) + (string-append all "\ntarget_link_libraries(yaehmop_eht " + "${LAPACK_LIBRARIES})\n"))))) + (add-after 'build 'build-doc + (lambda _ + (with-directory-excursion "../docs" + (substitute* "bind_manual.tex" + (("\\\\usepackage\\{bindpage\\}") + (string-append + "\\usepackage[left=2cm,right=2cm,top=4cm,bottom=2cm]" + "{geometry}\n" + "\\pdfsuppressptexinfo=-1\n"))) + (substitute* "Zmat_appendix.tex" + (("file=dihedral\\.eps") + "file=figs/dihedral.eps")) + (setenv "FORCE_SOURCE_DATE" "1") + (invoke "latexmk" "-pdf" "bind_manual.tex")))) + (add-after 'install 'install-eht-parms + (lambda _ + (install-file "../tightbind/eht_parms.dat" + (string-append #$output "/share/" + #$name "-" #$version)))) + (add-after 'install-eht-parms 'install-doc + (lambda _ + (install-file "../docs/bind_manual.pdf" + (string-append #$output "/share/doc/" + #$name "-" #$version)))) + (delete 'check) + (add-after 'install-doc 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "./test_eht"))))))) + (native-inputs + (list gfortran + (texlive-updmap.cfg (list texlive-fonts-ec + texlive-latex-graphics + texlive-latex-geometry)))) + (inputs (list openblas)) + (home-page "https://github.com/greglandrum/yaehmop") + (synopsis "Perform extended Hückel calculations") + (description "@acronym{YAeHMOP, Yet Another extended Hueckel Molecular +Orbital Package} contains a program and library for performing extended Hückel +calculations and analyzing the results.") + (license license:bsd-2))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:21 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:21 +0000 Received: from localhost ([127.0.0.1]:35161 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OL-0005l8-6C for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:21 -0400 Received: from mout01.posteo.de ([185.67.36.65]:41571) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5O0-0005hf-HX for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:01 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 0F0F1240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695095; bh=wl1BKsrz+eoAxE6R3d/THFqWqbcOoKEVh7637CuoC+o=; h=From:To:Cc:Subject:Date:From; b=kwpZoLM359qko766kDce9cs0K3xTdL7sLMYGDmrKqp+U9VFti2y29qHxdw7uXhQBb FGduoMk5N55pVtjTnWEc6F3Ot1wu/q/ILfohG10A8wRvo6M2KFmKWAvYX9cmftezzq 8Y/4xNmcZG/VKFmhh2irwCKWTajlK4VT/g11MGwgBsEVOfcEMZc53AzZX5ZNLV7PLh 4sXnb2++y82J49qvJlKGdVC5LHFId/cxHmOl+HXFixuILUKi08fgu1qEGmqI/ALbln /9jKwu/r0ucIjGtl98C9jCAa1G2lIGXTySZVognU4NMzXOqky7gfAB8W3+J4HUsAP6 +76Pk2eiPjG3Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTy4hKjz6tnG; Thu, 13 Oct 2022 23:04:54 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 13/15] gnu: Add avalon-toolkit. Date: Thu, 13 Oct 2022 21:04:22 +0000 Message-Id: <20221013210424.993-14-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (avalon-toolkit): New variable. --- gnu/packages/chemistry.scm | 96 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index a1c1dbfa1b..82bc3ae29e 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -926,3 +926,99 @@ (define-public yaehmop Orbital Package} contains a program and library for performing extended Hückel calculations and analyzing the results.") (license license:bsd-2))) + +(define-public avalon-toolkit + (package + (name "avalon-toolkit") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/avalontoolkit/" + "AvalonToolkit_" (substring version 0 3) "/AvalonToolkit_" + version ".source.tar")) + (sha256 + (base32 + "0rnnyy6axs2da7aa4q6l30ldavbk49v6l22llj1adn74h1i67bpv")) + (modules '((guix build utils) (ice-9 ftw))) + (snippet + #~(begin + (delete-file-recursively "../SourceDistribution/java"))))) + (build-system gnu-build-system) + (arguments + (list + ;; There are no intended tests + #:tests? #f + #:phases + #~(let ((programs '("canonizer" "matchtest" "sketch" "smi2mol" "struchk"))) + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'remove-free + (lambda _ + ;; Remove incorrect free of getenv result (patch also in rdkit) + (substitute* "common/reaccsio.c" + (("MyFree.*tempdir.*") "")))) + ;; The makefile has incorrect compiler flags and is missing some + ;; object files, so we build it ourselves. + (replace 'build + (lambda _ + (chdir "common") + (let* ((parts + (list + "aacheck" "casutils" "denormal" "depictutil" "didepict" + "fixcharges" "forio" "geometry" "graph" "hashcode" + "layout" "local" "pattern" "perceive" "reaccsio" + "rtutils" "set" "shortcut" "sketch" "ssmatch" "stereo" + "symbol_lists" "symboltable" "utilities")) + (objects (map (lambda (name) (string-append name ".o")) + parts))) + (for-each + (lambda (name) + (display (string-append "Compiling " name ".c\n")) + (invoke "gcc" "-c" "-fPIC" "-O2" + (string-append name ".c") + "-o" (string-append name ".o"))) + parts) + (display "Building shared library\n") + (apply invoke "gcc" "-fPIC" "-shared" "-lm" + "-o" "libavalontoolkit.so" "canonizer.c" "smi2mol.c" + "struchk.c" "patclean.c" objects) + ;; patclean is not built here as there is an undeclared + ;; variable in main(). + (for-each + (lambda (program) + (display (string-append "Building " program "\n")) + (invoke "gcc" "-L." "-lavalontoolkit" "-lm" "-O2" + (string-append "-Wl,-rpath=" #$output "/lib") + "-DMAIN" (string-append program ".c") "-o" program)) + programs)))) + (replace 'install + (lambda _ + ;; Executables + (for-each + (lambda (program) + (install-file program (string-append #$output "/bin"))) + programs) + (for-each + (lambda (name) + (symlink (string-append #$output "/bin/smi2mol") + (string-append #$output "/bin/" name))) + '("mol2smi" "rdf2smi" "mol2tbl" "mol2sma" "smi2rdf")) + ;; Library + (install-file "libavalontoolkit.so" + (string-append #$output "/lib")) + (for-each + (lambda (file) + (install-file file (string-append #$output + "/include/avalontoolkit"))) + (find-files "." "\\.h$")) + (install-file "../license.txt" + (string-append #$output "/share/doc/" + #$name "-" #$version "/")))))))) + (home-page "https://sourceforge.net/projects/avalontoolkit/") + (synopsis "Tools for SMILES and MOL files and for structure fingerprinting") + (description "This package contains a library and programs for +canonicalization of SMILES and MOL files, molecular structure fingerprinting +and rendering molecules.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:23 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:23 +0000 Received: from localhost ([127.0.0.1]:35163 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5OL-0005lG-Lf for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:23 -0400 Received: from mout01.posteo.de ([185.67.36.65]:40577) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5O1-0005hn-7G for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:02 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B2EAC240027 for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695095; bh=SUL91lVQfctg1CdIhUb8ZqXqO5a/ldR7qqJQ3GZwRSA=; h=From:To:Cc:Subject:Date:From; b=kBVspxtrHTG2LbBUKasUraMJMt+hUZX4BGjffGc6M2/AN24N4qcK2KOvSaqxJbNVo Ws2RAQOiYpXlatB7VeRsc2eWm2MwfN59sWPh1TT0/ML68o38m+xs9Lv7JroOM6CGDR u/7ukL/b2lv00Ib9L0ugG9Jd00qHN1frwHywjOb7zASUEWI3YIou0sm4f6lgVlyESA rciz1NZgnJ/AgPC1DgOSDsFzAqJ375MyPpZsDkP9//uZFhch393zx4OZiuo2mw9tVH jvVcprmO4ff1Epf2zrOcOThBizwEe0kakp3m/UOhNXeqnnJQUgTKouhD/KuPaQy/ba HKx9slXS/feVA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMTz2QpKz6tnd; Thu, 13 Oct 2022 23:04:55 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 14/15] gnu: Add ringdecomposerlib. Date: Thu, 13 Oct 2022 21:04:23 +0000 Message-Id: <20221013210424.993-15-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (ringdecomposerlib): New variable. --- gnu/packages/chemistry.scm | 81 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 82bc3ae29e..1a80bd1ad5 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -1022,3 +1022,84 @@ (define-public avalon-toolkit canonicalization of SMILES and MOL files, molecular structure fingerprinting and rendering molecules.") (license license:bsd-3))) + +(define-public ringdecomposerlib + (package + (name "ringdecomposerlib") + (version "1.1.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rareylab/RingDecomposerLib") + (commit (string-append "v" version "_rdkit")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rxzs2wpkkdi40wdzxc4sn0brk7dm7ivgqyfh38gf2f5c7pbg0wi")))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list "-DBUILD_PYTHON_WRAPPER=ON" + "-DPYTHON_EXECUTABLE=python3" + (string-append "-DPYTHON_FLAGS=;--prefix=" #$output ";--root=/")) + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (add-installed-pythonpath))) + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'patch-cmake + (lambda _ + (substitute* (list "src/Test/CMakeLists.txt" + "src/RingDecomposerLib/CMakeLists.txt") + (("build_.*STATIC") "#")) + (substitute* "test/CMakeLists.txt" + (("STATIC_TEST") "SHARED_TEST")) + ;; Link Python library against shared library + (substitute* "src/python/CMakeLists.txt" + (("RingDecomposerLibStatic") "RingDecomposerLib")) + (substitute* "src/python/setup.py.in" + (("static_libs =.*") "static_libs = []\n") + (("shared_libs\\s*=.*") + (string-append + "shared_libs = ['RingDecomposerLib']")) + (("library_dirs\\s*=\\s*\\[\\]") + "library_dirs = ['${CMAKE_BINARY_DIR}/src/RingDecomposerLib']") + (("extra_objects=.*") + (string-append + "extra_link_args=['-Wl,-rpath=" #$output "/lib'],\n"))))) + (add-after 'build 'build-doc + (lambda _ + ;; Disable redundant LaTeX documentation + (substitute* "../source/documentation/sphinx/conf.py" + (("^(subprocess.*latex|shutil).*") "")) + (substitute* "../source/documentation/doxygen.cfg" + (("GENERATE_LATEX.*YES") "GENERATE_LATEX = NO")) + ;; Build HTML documentation + (invoke "sphinx-build" "-b" "html" + "../source/documentation/sphinx" "html"))) + (add-after 'install 'install-doc + (lambda _ + ;; Not reproducible + (delete-file-recursively "html/.doctrees") + (copy-recursively "html" + (string-append #$output "/share/doc/" + #$name "-" #$version "/html")))) + (delete 'check) + (add-after 'install 'check + (assoc-ref %standard-phases 'check)) + (add-before 'check 'set-pythonpath + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs)))))) + (inputs (list python)) + (native-inputs (list doxygen python python-cython python-sphinx)) + (home-page "https://github.com/rareylab/RingDecomposerLib") + (synopsis "Library for calculating ring topology descriptions such as +unique ring families") + (description "ringdecomposerlib is a library for the calculation of +unique ring families, relevant cycles, the smallest set of smallest rings and +other ring topology descriptions.") + (license license:bsd-3))) -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 13 17:05:24 2022 Received: (at 58261) by debbugs.gnu.org; 13 Oct 2022 21:05:24 +0000 Received: from localhost ([127.0.0.1]:35165 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5ON-0005lO-8a for submit@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:24 -0400 Received: from mout01.posteo.de ([185.67.36.65]:39021) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oj5O1-0005i1-U2 for 58261@debbugs.gnu.org; Thu, 13 Oct 2022 17:05:04 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 6BB2D24002A for <58261@debbugs.gnu.org>; Thu, 13 Oct 2022 23:04:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1665695096; bh=muGcSCHhv68R8Z61gA1GJwRoR/JTE2jBf+oc0mhdZ2s=; h=From:To:Cc:Subject:Date:From; b=MfNMK/i1fkLux5uMUbYrHEbmJ2Vo94y6oGM9aqily6ma5UpeuC52uTJIy9MKJSQiv KInh/PwgVF7T5Ut9mZbGJh4KvylGh4NLjmvuYrwkNyt+8CUvMHwfZVw8JyESfIo8iH PoNZnhVk4TjiDWjAVj1QqvKKxkpCZJykz0eAlxhKpClhVe+bjJNq4cW/l6kRYpPpsa 6WD1ID+4+Iwa7aRrAF2DgeteBkwdl2cP4dgiIFvAkEM9rB4HJLnWexT4/ij/3bWFnB AVHbut6fe9o4eYuCxVRcaR5ort4u7cdJK+PDqh5XM/fQO8EvKIv6tqlS4erwPuulne 335k8dxx1PLyA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MpMV009RGz6tnL; Thu, 13 Oct 2022 23:04:56 +0200 (CEST) From: David Elsing To: 58261@debbugs.gnu.org Subject: [PATCH v3 15/15] gnu: Add rdkit. Date: Thu, 13 Oct 2022 21:04:24 +0000 Message-Id: <20221013210424.993-16-david.elsing@posteo.net> In-Reply-To: <20221007152148.32591-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 58261 Cc: David Elsing X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) * gnu/packages/chemistry.scm (rdkit): New variable. --- gnu/packages/chemistry.scm | 149 +++++++ ...rdkit-unbundle-external-dependencies.patch | 384 ++++++++++++++++++ 2 files changed, 533 insertions(+) create mode 100644 gnu/packages/patches/rdkit-unbundle-external-dependencies.patch diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 1a80bd1ad5..e72ecd6206 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -34,6 +34,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) + #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -41,10 +42,12 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages gv) #:use-module (gnu packages image) #:use-module (gnu packages maths) @@ -56,6 +59,7 @@ (define-module (gnu packages chemistry) #:use-module (gnu packages qt) #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) + #:use-module (gnu packages sqlite) #:use-module (gnu packages stb) #:use-module (gnu packages tex) #:use-module (gnu packages web) @@ -1103,3 +1107,148 @@ (define-public ringdecomposerlib unique ring families, relevant cycles, the smallest set of smallest rings and other ring topology descriptions.") (license license:bsd-3))) + +(define-public rdkit + (package + (name "rdkit") + (version "2022.03.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rdkit/rdkit") + (commit + (string-append + "Release_" (string-replace-substring version "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19idgilabh04cbr1qj6zgrgsfjm248mmfz6fsr0smrd68d0xnml9")) + (patches + (search-patches "rdkit-unbundle-external-dependencies.patch")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Remove pickle files (only used in tests), + ;; as they are compiled programs + (for-each + (lambda (name) + (display (string-append name "\n")) + (delete-file name)) + (find-files "." "\\.pkl(\\.gz)?$")) + ;; Remove SQLite data files (can be generated) + (delete-file "Data/RDData.sqlt") + (delete-file "Data/RDTests.sqlt"))))) + (build-system cmake-build-system) + (arguments + (list + #:imported-modules (append %cmake-build-system-modules + '((guix build python-build-system))) + #:modules '((guix build cmake-build-system) + (guix build utils) + ((guix build python-build-system) + #:select (add-installed-pythonpath))) + #:configure-flags + #~(list + "-DRDK_BUILD_AVALON_SUPPORT=ON" + "-DRDK_BUILD_CAIRO_SUPPORT=ON" + "-DRDK_BUILD_FREESASA_SUPPORT=ON" + "-DRDK_BUILD_INCHI_SUPPORT=ON" + "-DRDK_BUILD_YAEHMOP_SUPPORT=ON" + (string-append "-DCATCH_DIR=" + #$(this-package-native-input "catch2") + "/include/catch2") + "-DRDK_INSTALL_INTREE=OFF" + "-DRDK_INSTALL_STATIC_LIBS=OFF" + (string-append + "-DRDK_OPTIMIZE_POPCNT=" + #$(let ((system (or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) "ON") + ((string-prefix? "i686" system) "ON") + (else "OFF")))) + "-DRDK_USE_FLEXBISON=ON" + (string-append + "-DCMAKE_INCLUDE_PATH=" + #$(this-package-input "avalon-toolkit") "/include/avalontoolkit")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-external-dependencies + (lambda _ + (symlink + (string-append + (search-input-file + %build-inputs "/share/fonts/truetype/ComicNeue-Regular.ttf")) + "Data/Fonts/ComicNeue-Regular.ttf"))) + (add-after 'unpack 'fix-inchi-include + (lambda _ + (substitute* "Code/cmake/Modules/FindInchi.cmake" + (("inchi_api.h.*\\)") "inchi/inchi_api.h)") + (("INCHI_LIBRARY NAMES.*\\)") + "INCHI_LIBRARY NAMES inchi PATH_SUFFIXES inchi)") + (("find_library" prev) + (string-append + "list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1)\n" + prev))) + (substitute* "External/INCHI-API/inchi.cpp" + (("") "")))) + (add-before 'build 'enable-bytecode-determinism + (lambda _ + (setenv "PYTHONHASHSEED" "0") + (setenv "PYTHONDONTWRITEBYTECODE" "1"))) + (add-after 'install 'pre-check + (lambda* (#:key inputs outputs #:allow-other-keys) + (with-directory-excursion "../source" + (invoke "sqlite3" "Data/RDData.sqlt" + ".read rdkit/Dbase/test_data/RDData.sqlite") + (invoke "sqlite3" "Data/RDTests.sqlt" + ".read rdkit/Dbase/test_data/RDTests.sqlite") + (setenv "RDBASE" (canonicalize-path "."))) + (add-installed-pythonpath inputs outputs))) + (delete 'check) + (add-after 'pre-check 'check + (lambda* (#:key tests? parallel-tests? #:allow-other-keys) + (when tests? + (let ((job-count (number->string + (if parallel-tests? (parallel-job-count) 1)))) + (invoke + "ctest" "-j" job-count + "-E" (string-append + (string-join + '(;; need pickled data + "(pyDiscreteValueVect" "pySparseIntVect" + "graphmoltestPickler" "pyPartialCharges" + "substructLibraryTest" "pyFeatures" + "pythonTestDirML" "pythonTestDirChem" + ;; Catching Python exception fails + "pyRanker)") "|")))))))))) + (native-inputs + (list bison + boost + catch2 + eigen + flex + freesasa + pkg-config + rapidjson + tar)) + (inputs + (list avalon-toolkit + cairo + coordgenlibs + font-comic-neue + freetype + inchi + maeparser + python + ringdecomposerlib + sqlite + yaehmop)) + (propagated-inputs + (list python-numpy python-cairocffi python-pillow)) + (home-page "https://rdkit.org/") + (synopsis "Collection of cheminformatics software") + (description "RDKit is a C++ and Python library for cheminformatics, which +includes (among other things) the analysis and modification of molecules in 2D +and 3D and descriptor generation for machine learning.") + (license license:bsd-3))) diff --git a/gnu/packages/patches/rdkit-unbundle-external-dependencies.patch b/gnu/packages/patches/rdkit-unbundle-external-dependencies.patch new file mode 100644 index 0000000000..8ee0611d3b --- /dev/null +++ b/gnu/packages/patches/rdkit-unbundle-external-dependencies.patch @@ -0,0 +1,384 @@ +Remove CMake code for downloading and builing bundled dependencies: +They are packaged separately as rapidjson, avalon-toolkit, freesasa, +ringdecomposerlib and yaehmop. + +diff --git a/Code/GraphMol/MolInterchange/CMakeLists.txt b/Code/GraphMol/MolInterchange/CMakeLists.txt +index 1673386a4..c3504e6f1 100644 +--- a/Code/GraphMol/MolInterchange/CMakeLists.txt ++++ b/Code/GraphMol/MolInterchange/CMakeLists.txt +@@ -1,18 +1,3 @@ +- +-if(NOT EXISTS "${CMAKE_SOURCE_DIR}/External/rapidjson-1.1.0") +- downloadAndCheckMD5("https://github.com/Tencent/rapidjson/archive/v1.1.0.tar.gz" +- "${CMAKE_SOURCE_DIR}/External/rapidjson-1.1.0.tar.gz" +- "badd12c511e081fec6c89c43a7027bce") +- execute_process(COMMAND ${CMAKE_COMMAND} -E tar zxf +- ${CMAKE_SOURCE_DIR}/External/rapidjson-1.1.0.tar.gz +- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/External) +-else() +- message("-- Found RapidJSON source in ${CMAKE_SOURCE_DIR}/External") +-endif() +- +-include_directories(${CMAKE_SOURCE_DIR}/External/rapidjson-1.1.0/include) +- +- + rdkit_library(MolInterchange + Parser.cpp Writer.cpp + LINK_LIBRARIES GraphMol) +diff --git a/External/AvalonTools/AvalonTools.cpp b/External/AvalonTools/AvalonTools.cpp +index e6c382123..d83d80668 100644 +--- a/External/AvalonTools/AvalonTools.cpp ++++ b/External/AvalonTools/AvalonTools.cpp +@@ -24,15 +24,15 @@ + #include "AvalonTools.h" + + extern "C" { +-#include "local.h" +-#include "reaccs.h" +-#include "reaccsio.h" +-#include "utilities.h" +-#include "ssmatch.h" +-#include "smi2mol.h" +-#include "canonizer.h" +-#include "layout.h" +-#include "struchk.h" ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include + + extern int RunStruchk(struct reaccs_molecule_t **mpp, + struct data_line_t *data_list); +diff --git a/External/AvalonTools/CMakeLists.txt b/External/AvalonTools/CMakeLists.txt +index 3e31195fc..314ba35b5 100644 +--- a/External/AvalonTools/CMakeLists.txt ++++ b/External/AvalonTools/CMakeLists.txt +@@ -2,107 +2,14 @@ if(NOT RDK_BUILD_AVALON_SUPPORT) + return() + endif(NOT RDK_BUILD_AVALON_SUPPORT) + +-if(NOT DEFINED AVALONTOOLS_DIR) +- set(AVALONTOOLS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/SourceDistribution") +- set(fileToPatch "${CMAKE_CURRENT_SOURCE_DIR}/SourceDistribution/common/reaccsio.c") +- set(needDownload "TRUE") +- if(EXISTS "${fileToPatch}") +- file(READ "${fileToPatch}" buffer) +- if("${buffer}" MATCHES "//MyFree\\(\\(char \\*\\)tempdir\\);") +- set(needDownload "FALSE") +- endif() +- endif() +-else() +- string(REGEX REPLACE "\\\\" "/" AVALONTOOLS_DIR ${AVALONTOOLS_DIR}) +- set(needDownload "FALSE") +-endif() +- +-set(AVALON_SRC_PATH ${AVALONTOOLS_DIR}/common) +- +-if(needDownload) +- if(NOT DEFINED AVALONTOOLS_URL) +- set(AVALONTOOLS_URL "https://sourceforge.net/projects/avalontoolkit/files/AvalonToolkit_1.2/AvalonToolkit_1.2.0.source.tar") +- endif() +- if(NOT DEFINED AVALONTOOLS_MD5SUM) +- set(AVALONTOOLS_MD5SUM "092a94f421873f038aa67d4a6cc8cb54") +- endif() +- if(NOT DEFINED AVALONTOOLS_BASE) +- string(REGEX REPLACE "^.*/" "" AVALONTOOLS_BASE "${AVALONTOOLS_URL}") +- endif() +- downloadAndCheckMD5(${AVALONTOOLS_URL} "${CMAKE_CURRENT_SOURCE_DIR}/${AVALONTOOLS_BASE}" ${AVALONTOOLS_MD5SUM}) +- execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf +- ${CMAKE_CURRENT_SOURCE_DIR}/AvalonToolkit_1.2.0.source.tar +- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) +- # apply patch to AvalonTools +- configure_file("${fileToPatch}" "${fileToPatch}.orig" COPYONLY) +- file(READ "${fileToPatch}" buffer) +- string(REGEX REPLACE "MyFree\\(\\(char \\*\\)tempdir\\);" +- "//MyFree((char *)tempdir);" buffer "${buffer}") +- file(WRITE "${fileToPatch}" "${buffer}") +-endif() + + if (MSVC) + add_definitions("/D_CRT_SECURE_NO_WARNINGS") + add_compile_options(/wd4224 /wd4101 /wd4018 /wd4996 /wd4244 /wd4305 /wd4013 /wd4146 /wd4334 /wd4715 /wd4715 /nologo) + endif(MSVC) + +-set(avalon_clib_srcs ${AVALON_SRC_PATH}/layout.c +- ${AVALON_SRC_PATH}/symboltable.c +- ${AVALON_SRC_PATH}/patclean.c +- ${AVALON_SRC_PATH}/utilities.c +- ${AVALON_SRC_PATH}/symbol_lists.c +- ${AVALON_SRC_PATH}/stereo.c +- ${AVALON_SRC_PATH}/set.c +- ${AVALON_SRC_PATH}/perceive.c +- ${AVALON_SRC_PATH}/local.c +- ${AVALON_SRC_PATH}/graph.c +- ${AVALON_SRC_PATH}/geometry.c +- ${AVALON_SRC_PATH}/forio.c +- ${AVALON_SRC_PATH}/depictutil.c +- ${AVALON_SRC_PATH}/denormal.c +- ${AVALON_SRC_PATH}/casutils.c +- ${AVALON_SRC_PATH}/ssmatch.c +- ${AVALON_SRC_PATH}/rtutils.c +- ${AVALON_SRC_PATH}/smi2mol.c +- ${AVALON_SRC_PATH}/didepict.c +- ${AVALON_SRC_PATH}/pattern.c +- ${AVALON_SRC_PATH}/canonizer.c +- ${AVALON_SRC_PATH}/aacheck.c +- ${AVALON_SRC_PATH}/fixcharges.c +- ${AVALON_SRC_PATH}/struchk.c +- ${AVALON_SRC_PATH}/reaccsio.c +- ${AVALON_SRC_PATH}/hashcode.c +- ) +- +-# we need this to ensure that builds continue +-# to work on linux systems with older versions +-# of glibc when we're building with gcc-4.1. +-# Without this flag, we'll endup requiring +-# glibc 2.7. +-if(CMAKE_SYSTEM_NAME STREQUAL "Linux") +- add_definitions(-D_GNU_SOURCE=1) +-endif() +- +-if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-return-type -Wno-implicit-function-declaration -Wno-absolute-value -Wno-parentheses -Wno-logical-op-parentheses -Wno-dangling-else -Wno-format") +-endif() +-if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-result -Wformat-overflow=0 -Wformat=0 -Wno-format-security -Wno-implicit-function-declaration") +-endif() +- +- +- +-rdkit_library(avalon_clib ${avalon_clib_srcs}) +-target_compile_definitions(avalon_clib PRIVATE RDKIT_AVALONLIB_BUILD) +-if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) +- set_target_properties(avalon_clib PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE) +-endif() +- +-include_directories(${CMAKE_CURRENT_SOURCE_DIR}) +-include_directories(${AVALON_SRC_PATH}) +- + rdkit_library(AvalonLib AvalonTools.cpp SHARED +- LINK_LIBRARIES avalon_clib SubstructMatch FileParsers SmilesParse GraphMol DataStructs ) ++ LINK_LIBRARIES -lavalontoolkit SubstructMatch FileParsers SmilesParse GraphMol DataStructs ) + target_compile_definitions(AvalonLib PRIVATE RDKIT_AVALONLIB_BUILD) + rdkit_headers(AvalonTools.h DEST GraphMol) + rdkit_test(testAvalonLib1 test1.cpp +diff --git a/External/AvalonTools/Wrap/pyAvalonTools.cpp b/External/AvalonTools/Wrap/pyAvalonTools.cpp +index fb24c497e..31997bc0a 100644 +--- a/External/AvalonTools/Wrap/pyAvalonTools.cpp ++++ b/External/AvalonTools/Wrap/pyAvalonTools.cpp +@@ -12,7 +12,7 @@ + #include + + extern "C" { +-#include "struchk.h" ++#include + } + + namespace python = boost::python; +diff --git a/External/FreeSASA/CMakeLists.txt b/External/FreeSASA/CMakeLists.txt +index 43dfbdc40..81165a143 100644 +--- a/External/FreeSASA/CMakeLists.txt ++++ b/External/FreeSASA/CMakeLists.txt +@@ -2,88 +2,8 @@ if(NOT RDK_BUILD_FREESASA_SUPPORT) + return() + endif(NOT RDK_BUILD_FREESASA_SUPPORT) + +-if(NOT DEFINED FREESASA_DIR) +- set(FREESASA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/freesasa") +- set(needDownload "TRUE") +- if(EXISTS "${FREESASA_DIR}/src/freesasa.h") +- set(needDownload "FALSE") +- endif() +-endif() +- +-if(needDownload) +- # don't actually use the md5 here +- set(FREESASA_VERSION "2.0.3") +- set(FREESASA_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/freesasa-${FREESASA_VERSION}") +- if(NOT EXISTS "${FREESASA_SRC_DIR}/src") +- downloadAndCheckMD5("https://github.com/mittinatten/freesasa/releases/download/${FREESASA_VERSION}/freesasa-${FREESASA_VERSION}.tar.gz" +- "${CMAKE_CURRENT_SOURCE_DIR}/master.tar.gz" +- "") +- execute_process(COMMAND ${CMAKE_COMMAND} -E tar zxf +- ${CMAKE_CURRENT_SOURCE_DIR}/master.tar.gz +- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) +- message("Copying freesasa2.c to ${FREESASA_SRC_DIR}/src/freesasa2.c") +- file(COPY freesasa2.c DESTINATION ${FREESASA_SRC_DIR}/src/) +- else() +- message("FreeSASA found in ${FREESASA_SRC_DIR}, no download required") +- endif() +-endif() +- +-set(CMAKE_C_STANDARD 99) +- +-set (freesasa_clib_srcs +- ${FREESASA_SRC_DIR}/src/classifier.c +- ${FREESASA_SRC_DIR}/src/classifier_naccess.c +- ${FREESASA_SRC_DIR}/src/classifier_oons.c +- ${FREESASA_SRC_DIR}/src/classifier_protor.c +- ${FREESASA_SRC_DIR}/src/coord.c +- ${FREESASA_SRC_DIR}/src/freesasa2.c +- ${FREESASA_SRC_DIR}/src/lexer.c +- ${FREESASA_SRC_DIR}/src/log.c +- ${FREESASA_SRC_DIR}/src/nb.c +- ${FREESASA_SRC_DIR}/src/node.c +- ${FREESASA_SRC_DIR}/src/parser.c +- ${FREESASA_SRC_DIR}/src/pdb.c +- ${FREESASA_SRC_DIR}/src/rsa.c +- ${FREESASA_SRC_DIR}/src/sasa_lr.c +- ${FREESASA_SRC_DIR}/src/sasa_sr.c +- ${FREESASA_SRC_DIR}/src/selection.c +- ${FREESASA_SRC_DIR}/src/structure.c +- ${FREESASA_SRC_DIR}/src/util.c +- ) +-if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) +- set(freesasa_additional_exports ${CMAKE_CURRENT_SOURCE_DIR}/additional_exports.def) +- file(WRITE ${freesasa_additional_exports} +- "EXPORTS\n" +- "freesasa_default_parameters DATA\n" +- "freesasa_protor_classifier DATA\n" +- "freesasa_naccess_classifier DATA\n" +- "freesasa_oons_classifier DATA\n" +- ) +- set (freesasa_clib_srcs +- ${freesasa_clib_srcs} +- ${freesasa_additional_exports} +- ) +-endif() +- +-set (freesasa_h ${FREESASA_SRC_DIR}/src/freesasa.h) +-file(READ ${freesasa_h} freesasa_h_data) +-string(REGEX REPLACE "(#include )" "\\1\n#include " freesasa_h_data "${freesasa_h_data}") +-string(REGEX REPLACE "([^R][^D][^K][^I][^T][^_][^F][^R][^E][^E][^S][^A][^S][^A][^_][^C][^L][^I][^B][^_][^E][^X][^P][^O][^R][^T][^ ])(extern const)" "\\1RDKIT_FREESASA_CLIB_EXPORT \\2" freesasa_h_data "${freesasa_h_data}") +-file(WRITE ${freesasa_h} "${freesasa_h_data}") +- +-add_definitions(-DUSE_THREADS=0) +-add_definitions(-DUSE_JSON=0) +-add_definitions(-DUSE_XML=0) +-rdkit_library(freesasa_clib ${freesasa_clib_srcs}) +-target_compile_definitions(freesasa_clib PRIVATE RDKIT_FREESASALIB_BUILD) +- +-if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32)) +- set_target_properties(freesasa_clib PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE) +-endif() +-include_directories("${FREESASA_SRC_DIR}/src") +- + rdkit_library(FreeSASALib RDFreeSASA.cpp SHARED +- LINK_LIBRARIES freesasa_clib GraphMol ) ++ LINK_LIBRARIES -lfreesasa GraphMol ) + target_compile_definitions(FreeSASALib PRIVATE RDKIT_FREESASALIB_BUILD) + + rdkit_headers(RDFreeSASA.h DEST GraphMol) +diff --git a/External/RingFamilies/CMakeLists.txt b/External/RingFamilies/CMakeLists.txt +index 08dd1fe04..66ecd5834 100644 +--- a/External/RingFamilies/CMakeLists.txt ++++ b/External/RingFamilies/CMakeLists.txt +@@ -1,47 +1,6 @@ +-add_custom_target(ringdecomposerlib_support ALL) +- + if(NOT RDK_USE_URF) + return() + endif(NOT RDK_USE_URF) + +-if(NOT DEFINED URFLIB_DIR) +- set(URFLIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/RingDecomposerLib/src/RingDecomposerLib") +-endif() +- +-if(NOT EXISTS "${URFLIB_DIR}/RingDecomposerLib.h") +- set(RELEASE_NO "1.1.3_rdkit") +- set(MD5 "e9a0bcdda8b921a35e812b9888a9a874") +- downloadAndCheckMD5("https://github.com/rareylab/RingDecomposerLib/archive/v${RELEASE_NO}.tar.gz" +- "${CMAKE_CURRENT_SOURCE_DIR}/RingDecomposerLib-v${RELEASE_NO}.tar.gz" ${MD5}) +- execute_process(COMMAND ${CMAKE_COMMAND} -E tar zxf +- ${CMAKE_CURRENT_SOURCE_DIR}/RingDecomposerLib-v${RELEASE_NO}.tar.gz +- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) +- file(RENAME "RingDecomposerLib-${RELEASE_NO}" "RingDecomposerLib") +-else() +- message("-- Found RingDecomposerLib source in ${URFLIB_DIR}") +-endif() +- +-set(urflib_INCLUDE_DIRS ${URFLIB_DIR} +- CACHE STRING "RingDecomposerLib Include Dir" FORCE) +-file(GLOB URFSOURCES "${URFLIB_DIR}/*.c") +- +-#if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32 AND (NOT RDK_INSTALL_STATIC_LIBS))) +-if(WIN32) +- set (ringdecomposerlib_h ${URFLIB_DIR}/RingDecomposerLib.h) +- file(READ ${ringdecomposerlib_h} ringdecomposerlib_h_data) +- if (NOT "${ringdecomposerlib_h_data}" MATCHES "RDKIT_URFLIB_BUILD") +- string(REGEX REPLACE "(#if[ ]+\\([ ]*defined[ ]*\\([ ]*_WIN32[ ]*\\)[ ]*&&[ ]*)(defined\\([ ]*_MSC_VER[ ]*\\))" "\\1!defined( RDL_WIN_STATIC )" ringdecomposerlib_h_data "${ringdecomposerlib_h_data}") +- string(REGEX REPLACE "([ ]*)(#define[ ]+RDL_API[ ]+__declspec)(\\([ ]*dllexport[ ]*\\))" "\\1#ifdef RDKIT_URFLIB_BUILD\n\\1\\1\\2\\3\n\\1#else\n\\1\\1\\2(dllimport)\n\\1#endif" ringdecomposerlib_h_data "${ringdecomposerlib_h_data}") +- file(WRITE ${ringdecomposerlib_h} "${ringdecomposerlib_h_data}") +- endif() +-endif() +-rdkit_library(RingDecomposerLib ${URFSOURCES} SHARED) +-if((MSVC AND RDK_INSTALL_DLLS_MSVC) OR ((NOT MSVC) AND WIN32 AND (NOT RDK_INSTALL_STATIC_LIBS))) +- target_compile_definitions(RingDecomposerLib PRIVATE RDKIT_URFLIB_BUILD) +-endif() +-install(TARGETS RingDecomposerLib DESTINATION ${RDKit_LibDir}) +-rdkit_headers(${URFLIB_DIR}/RingDecomposerLib.h DEST "") +- +- +-set(RDK_URF_LIBS RingDecomposerLib +- CACHE STRING "the libraries for the URF calculation" FORCE) ++rdkit_library(RingDecomposerLib dummy.cpp SHARED LINK_LIBRARIES -lRingDecomposerLib) ++set(RDK_URF_LIBS RingDecomposerLib CACHE STRING "" FORCE) +diff --git a/External/RingFamilies/dummy.cpp b/External/RingFamilies/dummy.cpp +new file mode 100644 +index 000000000..e69de29bb +diff --git a/External/YAeHMOP/CMakeLists.txt b/External/YAeHMOP/CMakeLists.txt +index f1027b3bd..8bee2f910 100644 +--- a/External/YAeHMOP/CMakeLists.txt ++++ b/External/YAeHMOP/CMakeLists.txt +@@ -18,32 +18,8 @@ endif() + + include_directories( ${RDKit_ExternalDir}/YAeHMOP ) + +-ExternalProject_Add(yaehmop_project +- GIT_REPOSITORY https://github.com/greglandrum/yaehmop.git +- GIT_TAG master +- UPDATE_COMMAND "" +- PATCH_COMMAND "" +- PREFIX ${CMAKE_CURRENT_SOURCE_DIR} +- SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/yaehmop" +- SOURCE_SUBDIR "tightbind" +- CMAKE_ARGS -DUSE_BLAS_LAPACK=OFF -DCMAKE_INSTALL_PREFIX=${PROJECT_BINARY_DIR} -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} +- TEST_COMMAND "") +- +-include_directories(${PROJECT_BINARY_DIR}/include) +-link_directories(${PROJECT_BINARY_DIR}/lib) +-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build) +- +-set(EHT_PARAM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/yaehmop/tightbind/eht_parms.dat ) +-install(FILES ${EHT_PARAM_FILE} +- DESTINATION ${RDKit_ShareDir}/Data +- COMPONENT data) +- +-message("YAeHMOP include_dirs: ${PROJECT_BINARY_DIR}/include") +-message("YAeHMOP link_dirs: ${PROJECT_BINARY_DIR}/lib ${CMAKE_CURRENT_SOURCE_DIR}/src/yaehmop_project-build") +- +-rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES yaehmop_eht GraphMol ) ++rdkit_library(EHTLib EHTTools.cpp SHARED LINK_LIBRARIES -lyaehmop_eht GraphMol ) + target_compile_definitions(EHTLib PRIVATE RDKIT_EHTLIB_BUILD) +-add_dependencies(EHTLib yaehmop_project) + rdkit_headers(EHTTools.h DEST GraphMol) + rdkit_catch_test(testEHTLib1 test1.cpp + LINK_LIBRARIES EHTLib FileParsers SmilesParse ) +diff --git a/External/YAeHMOP/EHTTools.cpp b/External/YAeHMOP/EHTTools.cpp +index 7a229f51f..71033dc5c 100644 +--- a/External/YAeHMOP/EHTTools.cpp ++++ b/External/YAeHMOP/EHTTools.cpp +@@ -10,7 +10,7 @@ + #include + + extern "C" { +-#include ++#include + } + + namespace RDKit { -- 2.37.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 14 17:30:38 2022 Received: (at 58261) by debbugs.gnu.org; 14 Oct 2022 21:30:38 +0000 Received: from localhost ([127.0.0.1]:38826 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSGL-0000PD-9P for submit@debbugs.gnu.org; Fri, 14 Oct 2022 17:30:37 -0400 Received: from mail-ej1-f65.google.com ([209.85.218.65]:39476) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSGJ-0000Ox-IF for 58261@debbugs.gnu.org; Fri, 14 Oct 2022 17:30:36 -0400 Received: by mail-ej1-f65.google.com with SMTP id b2so13127949eja.6 for <58261@debbugs.gnu.org>; Fri, 14 Oct 2022 14:30:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=YX0Ad6LeEsZ7qg0E8saTQe5/8sdrNtBgCBqNijshZsM=; b=jllOFX1ZT3GW6fpWH0GMyysDO+cdyu2mhaGZJK/Vxnf6k08UOcFvBpTOK81afb1cJC COC8R9OiL8dWmKXAedcZPAvYyVaryrePwyFldChuQrDZnoNLuExzouUCa8iRp9CXG5dS CTDp+1zMSFogk2E8MIeruTHgXh8gUdnMsgNxMwHJFHZVbh9ujTDwl4Ze2AA4M+8G1F7U 2FsB2OPt4rarpsizkEZaed9/QW6kKqA0dmDTruSvs0OyjS2tIUEKr+cuJo2Qe+3Q8nEj +1epQGesTfzsLs018g344d7+1iQOIVQtZ6eSJWFyJgJSdr3gcsRr5OJ/vdYoEA5NhKFb juBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=YX0Ad6LeEsZ7qg0E8saTQe5/8sdrNtBgCBqNijshZsM=; b=MardbAcO5D+fK3l24v5bPJyUZIaYIs/yNaAGCmDVVqYv3v2vnlRJBVBoxIDKOSRn78 zAYUrB08I+pM5x8S6TB9v0MLAp+8DajrBKd1s0VzcRGjJWjprOCdd7jaBzjLcoxwsNND f5PBkSMTjZ58a2QtnwYlf4+EoaF2kjieXvnZtobLVtC+cYAjaSPpbr/qGw8lINDr+jgO EJJXQsDOt9pv6se/qH9ixmapyg+ojFJ/zkNcnB0EYqvM5gCb7fl+WaTvg7PFtK511Q/H R7wp00KoMQHWAOtrqHOW5qVU2hL2WUCd3Kui079ZJoBJcKb7ItQtOggzsa5gMj0wbtXQ rARg== X-Gm-Message-State: ACrzQf3f2pniz+goXGv3yR9kWWw0wD4WHWIOiz2j730XjD9BOSSH7ZmH y24rU4S3rsd8iQqwmKt+mQg= X-Google-Smtp-Source: AMsMyM6NDTF4AQ6pxWWDroXuaPoiuUGo7o+8OOrjED8j+3r7aRApo/nzBpSlWPtTAjfkxHyv/3/zsw== X-Received: by 2002:a17:907:783:b0:76e:f290:8b5 with SMTP id xd3-20020a170907078300b0076ef29008b5mr5137650ejb.395.1665783029377; Fri, 14 Oct 2022 14:30:29 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id ky18-20020a170907779200b00780a26edfcesm2119857ejc.60.2022.10.14.14.30.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 14:30:28 -0700 (PDT) Message-ID: Subject: Re: [PATCH v2 03/13] gnu: Add sajson. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 14 Oct 2022 23:30:26 +0200 In-Reply-To: <864jw7bfti.fsf@posteo.net> References: <864jw7bfti.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRG9ubmVyc3RhZywgZGVtIDEzLjEwLjIwMjIgdW0gMjA6NTkgKzAwMDAgc2NocmllYiBEYXZp ZCBFbHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwu Y29tPiB3cml0ZXM6Cj4gCj4gPiBBbSBGcmVpdGFnLCBkZW0gMDcuMTAuMjAyMiB1bSAxNToyMSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY3BwLnNjbSAo c2Fqc29uKTogTmV3IHZhcmlhYmxlLgo+ID4gPiAtLS0KPiA+ID4gwqBnbnUvcGFja2FnZXMvY3Bw LnNjbcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwg NjAKPiA+ID4gKysrKysrKysrKysrKysrKysrKwo+ID4gPiDCoC4uLi9wYXRjaGVzL3NhanNvbi1i dWlsZC13aXRoLWdjYzEwLnBhdGNowqDCoMKgwqAgfCA0NQo+ID4gPiArKysrKysrKysrKysrKwo+ ID4gPiDCoDIgZmlsZXMgY2hhbmdlZCwgMTA1IGluc2VydGlvbnMoKykKPiA+ID4gwqBjcmVhdGUg bW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvc2Fqc29uLWJ1aWxkLXdpdGgtCj4gPiA+ IGdjYzEwLnBhdGNoCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NwcC5z Y20gYi9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ID4gPiBpbmRleCAzOGEyYTllODI5Li5kY2EwMjQ1 ZGY1IDEwMDY0NAo+ID4gPiAtLS0gYS9nbnUvcGFja2FnZXMvY3BwLnNjbQo+ID4gPiArKysgYi9n bnUvcGFja2FnZXMvY3BwLnNjbQo+ID4gPiBAQCAtNTcsNiArNTcsNyBAQCAoZGVmaW5lLW1vZHVs ZSAoZ251IHBhY2thZ2VzIGNwcCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQt c3lzdGVtIGdudSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIG1l c29uKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gcHl0aG9uKQo+ ID4gPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBzY29ucykKPiA+ID4gwqDC oCAjOnVzZS1tb2R1bGUgKGd1aXggbW9kdWxlcykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1 aXggZ2V4cCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcykKPiA+ID4gQEAg LTIwMDUsMyArMjAwNiw2MiBAQCAoZGVmaW5lLXB1YmxpYyBwb2NrZXRmZnQtY3BwCj4gPiA+IMKg Y29tcHV0aW5nIEZhc3QgRm91cmllciB0cmFuc2Zvcm1hdGlvbnMuwqAgSXQgc3VwcG9ydHMKPiA+ ID4gbXVsdGlkaW1lbnNpb25hbCBhcnJheXMsCj4gPiA+IMKgZGlmZmVyZW50IGZsb2F0aW5nIHBv aW50IHNpemVzIGFuZCBjb21wbGV4IHRyYW5zZm9ybWF0aW9ucy4iKQo+ID4gPiDCoMKgwqDCoMKg wqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKSkKPiA+ID4gKwo+ID4gPiArKGRlZmluZS1wdWJs aWMgc2Fqc29uCj4gPiA+ICvCoCAobGV0ICgoY29tbWl0ICJlYzY0NDAxM2UzNGY5OTg0YTNjYzli YTU2OGNhYjk3YTM5MWRiOWNkIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgIChyZXZpc2lvbiAiMCIp KQo+ID4gPiArwqDCoMKgIChwYWNrYWdlCj4gPiA+ICvCoMKgwqDCoMKgIChuYW1lICJzYWpzb24i KQo+ID4gPiArwqDCoMKgwqDCoCAodmVyc2lvbiAoZ2l0LXZlcnNpb24gIjEuMCIgcmV2aXNpb24g Y29tbWl0KSkKPiA+ID4gK8KgwqDCoMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG1ldGhvZCBnaXQtZmV0Y2gpCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHVyaSAoZ2l0LXJlZmVyZW5jZQo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmwKPiA+ID4gImh0dHBzOi8v Z2l0aHViLmNvbS9jaGFkYXVzdGluL3NhanNvbiIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNvbW1pdCBjb21taXQpKSkKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVy c2lvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHBhdGNoZXMKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0Y2hlcyAic2Fq c29uLWJ1aWxkLXdpdGgtCj4gPiA+IGdjYzEwLnBhdGNoIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKHNoYTI1Ngo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGJhc2UzMgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oAo+ID4gPiAiMGZqYWcyN3c3Z3ZrYzVwZGhxM2FkN3ljMDlyYWJwemFobmR3MXNnc2cwNGlwem5p ZG1tcSIpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVzICco KGd1aXggYnVpbGQgdXRpbHMpKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoc25pcHBldCAnKGRlbGV0ZS1maWxlLXJlY3Vyc2l2ZWx5ICJ0aGlyZC0KPiA+ID4gcGFydHki KSkpKQo+ID4gPiArwqDCoMKgwqDCoCAoYnVpbGQtc3lzdGVtIHNjb25zLWJ1aWxkLXN5c3RlbSkK PiA+ID4gK8KgwqDCoMKgwqAgKGFyZ3VtZW50cwo+ID4gPiArwqDCoMKgwqDCoMKgIChsaXN0Cj4g PiA+ICvCoMKgwqDCoMKgwqDCoCAjOnBoYXNlcwo+ID4gPiArwqDCoMKgwqDCoMKgwqAgI34obW9k aWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IChhZGQtYWZ0ZXIgJ3VucGFjayAnZGlzYWJsZS1vdGhlci1idWlsZHMKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiU0NvbnN0cnVjdCIKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiZm9yIG5hbWUsIHRvb2xzIGluIGJ1aWxkczoiKQo+ID4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJmb3IgbmFtZSwgdG9vbHMg aW4gWygnb3B0JywgW2djYywKPiA+ID4gb3B0XSldOiIpKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ3VucGFjayAndXNlLWV4dGVybmFsLXVuaXR0ZXN0LWNwcAo+ ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSogKCM6a2V5IGlucHV0cyAj OmFsbG93LW90aGVyLWtleXMpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KHN1YnN0aXR1dGUqICJTQ29uc2NyaXB0Igo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAoKCJ1bml0dGVzdHBwX2VudlxcLkxpYnJhcnkiKSAiX2R1bW15ID0gIikKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgidGVzdF9lbnYgPSBlbnYu Q2xvbmVcXCh0b29scz1cXFt1bml0dGVzdHBwLAo+ID4gPiBzYWpzb25cXF1cXCkiKQo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAidGVzdF9lbnYgPSBlbnYu Q2xvbmUodG9vbHM9W3NhanNvbl0pXG4iCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAidGVzdF9lbnYuQXBwZW5kKENQUFBBVEg9JyIKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtaW5wdXQtZGlyZWN0b3J5IGlu cHV0cwo+ID4gPiAiL2luY2x1ZGUvVW5pdFRlc3QrKyIpCj4gPiBOb3RlIHRoYXQgeW91IG5lZWQg KG9yIG5hdGl2ZS1pbnB1dHMgaW5wdXRzKSB3aGVyZXZlciB5b3Ugd3JvdGUKPiA+IGlucHV0cy4K PiBJcyAlYnVpbGQtaW5wdXRzIG9rPwpObywgd2Ugb25seSB1c2UgdGhpcyBpbiB0cml2aWFsLWJ1 aWxkLXN5c3RlbSBhbmQgb3RoZXIgcGxhY2VzIHdoZXJlIHdlCmRvbid0IGhhdmUgdGhlIHNwbGl0 Lgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIicsIExJQlBB VEg9JyIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJp bmctYXBwZW5kICMkKHRoaXMtcGFja2FnZS1uYXRpdmUtaW5wdXQKPiA+ID4gInVuaXR0ZXN0LWNw cCIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiL2xpYiIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAiJywgTElCUz1bJ1VuaXRUZXN0KysnXSkiKSkpKSkKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHJlcGxhY2UgJ2NoZWNrCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhKiAoIzprZXkgdGVzdHM/ICM6YWxsb3ctb3RoZXIta2V5 cykKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAod2hlbiB0ZXN0cz8KPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAiYnVpbGQvb3B0 L3Rlc3QiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW52b2tl ICJidWlsZC9vcHQvdGVzdF91bnNvcnRlZCIpKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIChyZXBsYWNlICdpbnN0YWxsCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo bGFtYmRhIF8KPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGV0ICgob3V0 IChzdHJpbmctYXBwZW5kICMkb3V0cHV0ICIvaW5jbHVkZSIpKSkKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluc3RhbGwtZmlsZSAiaW5jbHVkZS9zYWpzb24uaCIg b3V0KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5zdGFsbC1m aWxlICJpbmNsdWRlL3NhanNvbl9vc3RyZWFtLmgiCj4gPiA+IG91dCkpKSkpKSkKPiA+IEZvciB0 aGUgcmVjb3JkLCB3aGF0IHdvdWxkIGEgcmVndWxhciBpbnN0YWxsIGRvPwo+IEp1c3Qgbm90aGlu Zy4KRmFpciBlbm91Z2guCj4gPiA+ICvCoMKgwqDCoMKgIChuYXRpdmUtaW5wdXRzIChsaXN0IHVu aXR0ZXN0LWNwcCkpCj4gPiA+ICvCoMKgwqDCoMKgIChob21lLXBhZ2UgImh0dHBzOi8vZ2l0aHVi LmNvbS9jaGFkYXVzdGluL3NhanNvbiIpCj4gPiA+ICvCoMKgwqDCoMKgIChzeW5vcHNpcyAiQysr MTEgaGVhZGVyLW9ubHksIGluLXBsYWNlIEpTT04gcGFyc2VyIikKPiA+ID4gK8KgwqDCoMKgwqAg KGRlc2NyaXB0aW9uICJAY29kZXtzYWpzb259IGlzIGFuIGluLXBsYWNlIEpTT04gcGFyc2VyCj4g PiA+IHdpdGgKPiA+ID4gc3VwcG9ydCBmb3IKPiA+ID4gK3BhcnNpbmcgd2l0aCBvbmx5IGEgc2lu Z2xlIG1lbW9yeSBhbGxvY2F0aW9uLiIpCj4gPiA+ICvCoMKgwqDCoMKgIChsaWNlbnNlIGxpY2Vu c2U6ZXhwYXQpKSkpCj4gPiA+IGRpZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpz b24tYnVpbGQtd2l0aC1nY2MxMC5wYXRjaAo+ID4gPiBiL2dudS9wYWNrYWdlcy9wYXRjaGVzL3Nh anNvbi1idWlsZC13aXRoLWdjYzEwLnBhdGNoCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4g PiA+IGluZGV4IDAwMDAwMDAwMDAuLjg3ODcwNmRjNzkKPiA+ID4gLS0tIC9kZXYvbnVsbAo+ID4g PiArKysgYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9zYWpzb24tYnVpbGQtd2l0aC1nY2MxMC5wYXRj aAo+ID4gPiBAQCAtMCwwICsxLDQ1IEBACj4gPiA+ICtUaGlzIHBhdGNoIGlzIGZyb20gdGhlIHVw c3RyZWFtIHB1bGwgcmVxdWVzdAo+ID4gPiAraHR0cHM6Ly9naXRodWIuY29tL2NoYWRhdXN0aW4v c2Fqc29uL3B1bGwvNTQuCj4gPiA+ICtJdCBmaXhlcyBsaW5raW5nIHdpdGggR0NDLgo+ID4gPiAr Cj4gPiA+ICtkaWZmIC0tZ2l0IGEvaW5jbHVkZS9zYWpzb24uaCBiL2luY2x1ZGUvc2Fqc29uLmgK PiA+ID4gK2luZGV4IDhiNGUwNWEuLjFiZDA0NWIgMTAwNjQ0Cj4gPiA+ICstLS0gYS9pbmNsdWRl L3NhanNvbi5oCj4gPiA+ICsrKysgYi9pbmNsdWRlL3NhanNvbi5oCj4gPiA+ICtAQCAtMTM4LDEy ICsxMzgsMTcgQEAgY29uc3RleHByIGlubGluZSBzaXplX3QgbWFrZV9lbGVtZW50KHRhZwo+ID4g PiB0LAo+ID4gPiBzaXplX3QgdmFsdWUpIHsKPiA+ID4gKyAvLyBoZWFkZXIuIFRoaXMgdHJpY2sg Y291cnRlc3kgb2YgUmljaCBHZWxkcmVpY2gncyBQdXJwbGUgSlNPTgo+ID4gPiBwYXJzZXIuCj4g PiA+ICsgdGVtcGxhdGUgPHR5cGVuYW1lIHVudXNlZCA9IHZvaWQ+Cj4gPiA+ICsgc3RydWN0IGds b2JhbHNfc3RydWN0IHsKPiA+ID4gKyvCoMKgwqAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIg cGFyc2VfZmxhZ3NbMjU2XTsKPiA+ID4gKyt9Owo+ID4gPiArK3R5cGVkZWYgZ2xvYmFsc19zdHJ1 Y3Q8PiBnbG9iYWxzOwo+ID4gPiArKwo+ID4gPiArIC8vIGNsYW5nLWZvcm1hdCBvZmYKPiA+ID4g KyAKPiA+ID4gK8KgwqDCoMKgIC8vIGJpdCAwICgxKSAtIHNldCBpZjogcGxhaW4gQVNDSUkgc3Ry aW5nIGNoYXJhY3Rlcgo+ID4gPiArwqDCoMKgwqAgLy8gYml0IDEgKDIpIC0gc2V0IGlmOiB3aGl0 ZXNwYWNlCj4gPiA+ICvCoMKgwqDCoCAvLyBiaXQgNCAoMHgxMCkgLSBzZXQgaWY6IDAtOSBlIEUg Lgo+ID4gPiArLcKgwqDCoCBjb25zdGV4cHIgc3RhdGljIGNvbnN0IHVpbnQ4X3QgcGFyc2VfZmxh Z3NbMjU2XSA9IHsKPiA+ID4gKyvCoMKgwqAgdGVtcGxhdGUgPHR5cGVuYW1lIHVudXNlZD4KPiA+ ID4gKyvCoMKgwqAgY29uc3QgdW5zaWduZWQgY2hhcgo+ID4gPiBnbG9iYWxzX3N0cnVjdDx1bnVz ZWQ+OjpwYXJzZV9mbGFnc1syNTZdID0KPiA+ID4gewo+ID4gPiArwqDCoMKgwqDCoCAvLyAwwqDC oMKgIDHCoMKgwqAgMsKgwqDCoCAzwqDCoMKgIDTCoMKgwqAgNcKgwqDCoCA2wqDCoMKgIDfCoMKg wqDCoMKgIDjCoMKgwqAgOcKgwqDCoAo+ID4gPiBBwqDCoMKgCj4gPiA+IELCoMKgwqAgQ8KgwqDC oCBEwqDCoMKgIEXCoMKgwqAgRgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoCAwLMKgwqAgMCzCoMKg IDAswqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgwqDCoCAwLMKgwqAgMizC oMKgCj4gPiA+IDIswqDCoAo+ID4gPiAwLMKgwqAgMCzCoMKgIDIswqDCoCAwLMKgwqAgMCwgLy8g MAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoCAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCzC oMKgIDAswqDCoCAwLMKgwqAgMCzCoMKgwqDCoCAwLMKgwqAgMCzCoMKgCj4gPiA+IDAswqDCoAo+ ID4gPiAwLMKgwqAgMCzCoMKgIDAswqDCoCAwLMKgwqAgMCwgLy8gMQo+ID4gPiArQEAgLTE2Miwx NSArMTY3LDEzIEBAIHN0cnVjdCBnbG9iYWxzX3N0cnVjdCB7Cj4gPiA+ICvCoMKgwqDCoCB9Owo+ ID4gPiArIAo+ID4gPiArIC8vIGNsYW5nLWZvcm1hdCBvbgo+ID4gPiArLX07Cj4gPiA+ICstdHlw ZWRlZiBnbG9iYWxzX3N0cnVjdDw+IGdsb2JhbHM7Cj4gPiA+ICsgCj4gPiA+ICstY29uc3RleHBy IGlubGluZSBib29sIGlzX3BsYWluX3N0cmluZ19jaGFyYWN0ZXIoY2hhciBjKSB7Cj4gPiA+ICsr aW5saW5lIGJvb2wgaXNfcGxhaW5fc3RyaW5nX2NoYXJhY3RlcihjaGFyIGMpIHsKPiA+ID4gK8Kg wqDCoMKgIC8vIHJldHVybiBjID49IDB4MjAgJiYgYyA8PSAweDdmICYmIGMgIT0gMHgyMiAmJiBj ICE9IDB4NWM7Cj4gPiA+ICvCoMKgwqDCoCByZXR1cm4gKGdsb2JhbHM6OnBhcnNlX2ZsYWdzW3N0 YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGMpXQo+ID4gPiAmCj4gPiA+IDEpICE9IDA7Cj4gPiA+ ICsgfQo+ID4gPiArIAo+ID4gPiArLWNvbnN0ZXhwciBpbmxpbmUgYm9vbCBpc193aGl0ZXNwYWNl KGNoYXIgYykgewo+ID4gPiArK2lubGluZSBib29sIGlzX3doaXRlc3BhY2UoY2hhciBjKSB7Cj4g PiA+ICvCoMKgwqDCoCAvLyByZXR1cm4gYyA9PSAnXHInIHx8IGMgPT0gJ1xuJyB8fCBjID09ICdc dCcgfHwgYyA9PSAnICc7Cj4gPiA+ICvCoMKgwqDCoCByZXR1cm4gKGdsb2JhbHM6OnBhcnNlX2Zs YWdzW3N0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXI+KGMpXQo+ID4gPiAmCj4gPiA+IDIpICE9IDA7 Cj4gPiA+ICsgfQoK From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 14 17:32:54 2022 Received: (at 58261) by debbugs.gnu.org; 14 Oct 2022 21:32:54 +0000 Received: from localhost ([127.0.0.1]:38838 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSIX-0000TV-S6 for submit@debbugs.gnu.org; Fri, 14 Oct 2022 17:32:54 -0400 Received: from mail-ej1-f66.google.com ([209.85.218.66]:41765) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSIV-0000TD-TM for 58261@debbugs.gnu.org; Fri, 14 Oct 2022 17:32:52 -0400 Received: by mail-ej1-f66.google.com with SMTP id d26so13126221ejc.8 for <58261@debbugs.gnu.org>; Fri, 14 Oct 2022 14:32:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=2UKC8aH2hvRoBRIUqfXP3+c9Q068HeS53vBBsGI59Ik=; b=VI7bqb91n67IcFPr78z+G/bDR+TOL6T5Jt6Rdqq9XeQKXeEZei9SfpZZPKZxvJRqWu OIjo23gp4c4pN9KvSIW4BK6dDTDPgs0M/gM21B3vLxgXxoSfIqPbv+Cn6eFSwKVodRII /x+/hOIksK46PUUKAqsWDk0J8NX7qv7WpRdZ4vTr8S5DAasOFUhHely7ZCm5yWW9xs4g qUqAf2a+gZVLSDQKFO5zjNujZd42ax+TAItTy98C86jln71nUERAfrYW6qK80knc8F8N VYMUVxZ6m7ppzD08uElIOgfCGjcYP7Fgu42Y93bykELzGfYFZ69z0Xb4/NF8r0bPi6Hn 4YaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=2UKC8aH2hvRoBRIUqfXP3+c9Q068HeS53vBBsGI59Ik=; b=j0kEFdCgARaU8W5CAZ2OuTbZ8kas6Db3OnMj+0jmYTrlZsbTpPdJvqX+FnPlfSXnqU CsXGOjg4DuNOoXK7S3g7Zdb0plw+UWf1gDKkljW1kH7iQdif/q3+h4pdeXig6mpzbkia wshrWeq9uiIE9WlJorm4jhQZwDBubc11uSx+t/1BNiHAfJ1TC6f0+Yt+X364Q5uRtBYL BD5wXCGHQNe83gCDnt7izxlvXYhdcgvXE8o8dpyILrH/yu2Sfb4LIEsSavxtzFeUTW7G oJ778CG5L09QjsE9yUifkQOA6JGSEmWABSHc+WYWbWWD8v5T7BsJ2/ZXz+p8l+zDwYsn Xhkw== X-Gm-Message-State: ACrzQf3TxSasXvM0vYJ13iCa7JDCqHQLOi6wg6YS9cqm0wlbw4XVTJ6C 2Fo3SXh4xrA8ERPZ8NMgVT4RnUfDtwA= X-Google-Smtp-Source: AMsMyM6buF/j+wnPxJ20gV+Q1MAN/Drj3vvsU3MKigJkugOPazsptk4Eej1dStv6FT5QUGQZJSi+9g== X-Received: by 2002:a17:907:72c2:b0:78d:9aeb:e4f5 with SMTP id du2-20020a17090772c200b0078d9aebe4f5mr4979447ejc.210.1665783166107; Fri, 14 Oct 2022 14:32:46 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id g7-20020a170906538700b00782539a02absm2105546ejo.194.2022.10.14.14.32.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 14:32:45 -0700 (PDT) Message-ID: <1b01573caf32ea1bad10d7fb540b0ea3e7b0381c.camel@gmail.com> Subject: Re: [PATCH v2 06/13] gnu: Add gemmi. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 14 Oct 2022 23:32:44 +0200 In-Reply-To: <8635brbfs8.fsf@posteo.net> References: <8635brbfs8.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRG9ubmVyc3RhZywgZGVtIDEzLjEwLjIwMjIgdW0gMjE6MDAgKzAwMDAgc2NocmllYiBEYXZp ZCBFbHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwu Y29tPiB3cml0ZXM6Cj4gCj4gPiBBbSBGcmVpdGFnLCBkZW0gMDcuMTAuMjAyMiB1bSAxNToyMSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAoZ2VtbWkpOiBOZXcgdmFyaWFibGUuCj4gPiA+IC0tLQo+ID4gPiDCoGdudS9wYWNrYWdl cy9jaGVtaXN0cnkuc2NtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAx MTggKysrKysrKysrKysKPiA+ID4gwqAuLi4vcGF0Y2hlcy9nZW1taS1maXgtc2Fqc29uLXR5cGVz LnBhdGNowqDCoMKgwqDCoCB8wqAgMTEgKwo+ID4gPiDCoC4uLi9zYWpzb24tZm9yLWdlbW1pLWJ1 aWxkLXdpdGgtZ2NjMTAucGF0Y2jCoMKgIHzCoCA0NSArKysrCj4gPiA+IMKgLi4uL3NhanNvbi1m b3ItZ2VtbWktbnVtYmVycy1hcy1zdHJpbmdzLnBhdGNoIHwgMTk1Cj4gPiA+ICsrKysrKysrKysr KysrKysrKwo+ID4gPiDCoDQgZmlsZXMgY2hhbmdlZCwgMzY5IGluc2VydGlvbnMoKykKPiA+ID4g wqBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMvZ2VtbWktZml4LXNhanNv bi0KPiA+ID4gdHlwZXMucGF0Y2gKPiA+ID4gwqBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2th Z2VzL3BhdGNoZXMvc2Fqc29uLWZvci1nZW1taS1idWlsZC0KPiA+ID4gd2l0aC0KPiA+ID4gZ2Nj MTAucGF0Y2gKPiA+ID4gwqBjcmVhdGUgbW9kZSAxMDA2NDQgZ251L3BhY2thZ2VzL3BhdGNoZXMv c2Fqc29uLWZvci1nZW1taS0KPiA+ID4gbnVtYmVycy1hcy0KPiA+ID4gc3RyaW5ncy5wYXRjaAo+ ID4gPiAKPiA+ID4gZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9jaGVtaXN0cnkuc2NtCj4gPiA+ IGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gaW5kZXggYzUxNzYxMGZlOC4uZDhm MTYwOGEzYSAxMDA2NDQKPiA+ID4gLS0tIGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ ID4gKysrIGIvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5zY20KPiA+ID4gQEAgLTYsNiArNiw3IEBA Cj4gPiA+IMKgOzs7IENvcHlyaWdodCDCqSAyMDIwIEJqw7ZybiBIw7ZmbGluZwo+ID4gPiA8Ympv ZXJuLmhvZWZsaW5nQGJqb2VybmhvZWZsaW5nLmRlPgo+ID4gPiDCoDs7OyBDb3B5cmlnaHQgwqkg MjAyMCBWaW5jZW50IExlZ29sbCA8dmluY2VudC5sZWdvbGxAZ21haWwuY29tPgo+ID4gPiDCoDs7 OyBDb3B5cmlnaHQgwqkgMjAyMSBSaWNhcmRvIFd1cm11cyA8cmVrYWRvQGVsZXBobHkubmV0Pgo+ ID4gPiArOzs7IENvcHlyaWdodCDCqSAyMDIyIERhdmlkIEVsc2luZyA8ZGF2aWQuZWxzaW5nQHBv c3Rlby5uZXQ+Cj4gPiA+IMKgOzs7Cj4gPiA+IMKgOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBHdWl4Lgo+ID4gPiDCoDs7Owo+ID4gPiBAQCAtMjMsNiArMjQsNyBAQAo+ID4gPiDCoDs7OyBh bG9uZyB3aXRoIEdOVSBHdWl4LsKgIElmIG5vdCwgc2VlCj4gPiA+IDxodHRwOi8vd3d3LmdudS5v cmcvbGljZW5zZXMvPi4KPiA+ID4gwqAKPiA+ID4gwqAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2th Z2VzIGNoZW1pc3RyeSkKPiA+ID4gK8KgICM6dXNlLW1vZHVsZSAoZ3VpeCBnZXhwKQo+ID4gPiDC oMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBwYWNrYWdlcykKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUg KGd1aXggdXRpbHMpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlICgoZ3VpeCBsaWNlbnNlcykgIzpw cmVmaXggbGljZW5zZTopCj4gPiA+IEBAIC0zNSw2ICszNyw3IEBAIChkZWZpbmUtbW9kdWxlIChn bnUgcGFja2FnZXMgY2hlbWlzdHJ5KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGJvb3N0KQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZWNrKQo+ ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNvbXByZXNzaW9uKQo+ID4gPiAr wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY3BwKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVs ZSAoZ251IHBhY2thZ2VzIGRvY3VtZW50YXRpb24pCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChn bnUgcGFja2FnZXMgZm9udHV0aWxzKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIGdsKQo+ID4gPiBAQCAtNTAsOCArNTMsMTAgQEAgKGRlZmluZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBjaGVtaXN0cnkpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgcXQp Cj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgc2VyaWFsaXphdGlvbikKPiA+ ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzcGhpbngpCj4gPiA+ICvCoCAjOnVz ZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBzdGIpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgeG1sKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0g Y21ha2UpCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIGNvcHkpCj4g PiA+IMKgwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBnbnUpCj4gPiA+IMKgwqAg Izp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBweXRob24pKQo+ID4gPiDCoAo+ID4gPiBA QCAtNTY2LDMgKzU3MSwxMTYgQEAgKGRlZmluZS1wdWJsaWMgcHl0aG9uLXB5bW9sCj4gPiA+IMKg dXNlZCB0byBwcmVwYXJlIHB1YmxpY2F0aW9uLXF1YWxpdHkgZmlndXJlcywgdG8gc2hhcmUKPiA+ ID4gaW50ZXJhY3RpdmUKPiA+ID4gcmVzdWx0cyB3aXRoCj4gPiA+IMKgeW91ciBjb2xsZWFndWVz LCBvciB0byBnZW5lcmF0ZSBwcmUtcmVuZGVyZWQgYW5pbWF0aW9ucy4iKQo+ID4gPiDCoMKgwqDC oCAobGljZW5zZSBsaWNlbnNlOmJzZC0zKSkpCj4gPiA+ICsKPiA+ID4gKyhkZWZpbmUtcHVibGlj IHNhanNvbi1mb3ItZ2VtbWkKPiA+ID4gK8KgIChwYWNrYWdlL2luaGVyaXQgc2Fqc29uCj4gPiA+ ICvCoMKgwqAgKG5hbWUgInNhanNvbi1mb3ItZ2VtbWkiKQo+ID4gPiArwqDCoMKgIChzb3VyY2Ug KG9yaWdpbgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluaGVyaXQgKHBhY2th Z2Utc291cmNlIHNhanNvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocGF0 Y2hlcyAoc2VhcmNoLXBhdGNoZXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgInNhanNvbi1mb3ItZ2VtbWktbnVtYmVycy1hcy0KPiA+ID4gc3Ry aW5ncy5wYXRjaCIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgInNhanNvbi1mb3ItZ2VtbWktYnVpbGQtd2l0aC0KPiA+ID4gZ2NjMTAucGF0Y2gi KSkpKQo+ID4gPiArwqDCoMKgIChhcmd1bWVudHMKPiA+ID4gK8KgwqDCoMKgIChzdWJzdGl0dXRl LWtleXdvcmQtYXJndW1lbnRzIChwYWNrYWdlLWFyZ3VtZW50cyBzYWpzb24pCj4gPiA+ICvCoMKg wqDCoMKgwqAgKCgjOnRlc3RzPyBfICNmKSAjZikKPiA+IERvbid0IGZvcmdldCB0aGUgY29tbWVu dCBhcyB0byB3aHkgdGhleSdyZSBkaXNhYmxlZC4KPiA+ID4gK8KgwqDCoMKgwqDCoCAoKCM6cGhh c2VzIHBoYXNlcykKPiA+ID4gK8KgwqDCoMKgwqDCoMKgICN+KG1vZGlmeS1waGFzZXMgIyRwaGFz ZXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZSAnYnVpbGQpKSkpKSkpCj4g PiBXaHkgaXMgdGhlIGJ1aWxkIGRlbGV0ZWQ/Cj4gSXQgZmFpbHMgZHVlIHRvIHRoZSBjaGFuZ2Ug YW5kIG9ubHkgYnVpbGRzIHRoZSB0ZXN0cyBhbnl3YXkuCj4gPiAKPiA+IFNwbGl0IGhlcmUuCj4g PiA+ICsoZGVmaW5lLXB1YmxpYyBnZW1taQo+ID4gPiArwqAgKHBhY2thZ2UKPiA+ID4gK8KgwqDC oCAobmFtZSAiZ2VtbWkiKQo+ID4gPiArwqDCoMKgICh2ZXJzaW9uICIwLjUuNyIpCj4gPiA+ICvC oMKgwqAgKHNvdXJjZSAob3JpZ2luCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo bWV0aG9kIGdpdC1mZXRjaCkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1cmkg KGdpdC1yZWZlcmVuY2UKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICh1cmwKPiA+ID4gImh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZWN0LWdlbW1pL2dlbW1pIikK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjb21taXQgKHN0 cmluZy1hcHBlbmQgInYiIHZlcnNpb24pKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2hhMjU2Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChiYXNlMzIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ ID4gPiAiMDBrbTVxNzI2YnNscnc3eGJmd2IzZjNtcnNrMTlxYmltZm5sM2h2cjR3aTF5M3o4aTE4 YSIpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHBhdGNoZXMKPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHNlYXJjaC1wYXRjaGVzICJnZW1taS1maXgtc2Fq c29uLXR5cGVzLnBhdGNoIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9k dWxlcyAnKChndWl4IGJ1aWxkIHV0aWxzKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoc25pcHBldAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2lu Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1y ZWN1cnNpdmVseQo+ID4gPiAiaW5jbHVkZS9nZW1taS90aGlyZF9wYXJ0eSIpCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNpdmVseSAi dGhpcmRfcGFydHkiKSkpKSkKPiA+ID4gK8KgwqDCoCAob3V0cHV0cyAnKCJvdXQiICJiaW4iICJw eXRob24iKSkKPiA+ID4gK8KgwqDCoCAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1aWxkLXN5c3RlbSkK PiA+ID4gK8KgwqDCoCAobmF0aXZlLWlucHV0cwo+ID4gPiArwqDCoMKgwqAgKGxpc3QgZmFzdC1m bG9hdAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgb3B0aW9ucGFyc2VyCj4gPiA+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoCBwZWd0bAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgcG9ja2V0 ZmZ0LWNwcAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHliaW5kMTEKPiA+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgIHNhanNvbi1mb3ItZ2VtbWkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgIHN0Yi1zcHJpbnRmCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCB0aW55ZGlyKSkKPiA+ ID4gK8KgwqDCoCAoaW5wdXRzIChsaXN0IHB5dGhvbiB6bGliKSkKPiA+ID4gK8KgwqDCoCAoYXJn dW1lbnRzCj4gPiA+ICvCoMKgwqDCoCAobGlzdAo+ID4gPiArwqDCoMKgwqDCoCAjOmNvbmZpZ3Vy ZS1mbGFncwo+ID4gPiArwqDCoMKgwqDCoCAjfihsZXQqICgocHl0aG9uLWxpYgo+ID4gPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdHJpbmctYXBwZW5kCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjJG91dHB1dDpweXRob24gIi9saWIvcHl0aG9uIgo+ ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyQodmVyc2lvbi1tYWpvcitt aW5vciAocGFja2FnZS12ZXJzaW9uCj4gPiA+IHB5dGhvbikpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAiL3NpdGUtcGFja2FnZXMiKSkpCj4gPiBOb3RlIHRoYXQgcHl0 aG9uLWJ1aWxkLXN5c3RlbSBoYXMgYSAoc2l0ZS1wYWNrYWdlcykgcHJvY2VkdXJlLsKgCj4gPiBX cml0aW5nCj4gPiB0aGUgYm9pbGVycGxhdGUgdG8gaW5jbHVkZSBpdCBpbiB0aGUgYnVpbGQgc2hv dWxkbid0IGJlIG11Y2ggd29yc2UKPiA+IGluCj4gPiB0ZXJtcyBvZiBsaW5lcyB0aGFuIHdoYXQg eW91J3JlIGRvaW5nIGhlcmUuCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGxpc3QgIi1EVVNF X1BZVEhPTj1PTiIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5n LWFwcGVuZCAiLURQWVRIT05fSU5TVEFMTF9ESVI9IiBweXRob24tCj4gPiA+IGxpYikpKQo+ID4g PiArwqDCoMKgwqDCoCAjOnBoYXNlcwo+ID4gPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhhc2Vz ICVzdGFuZGFyZC1waGFzZXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1 bnBhY2sgJ3BhdGNoLWluY2x1ZGVzCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1i ZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJpbmNs dWRlL2dlbW1pL3NwcmludGYuaHBwIgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICgoIjxzdGIvc3RiX3NwcmludGYuaD4iKSAiPHN0Yl9zcHJpbnRmLmg+IikpCj4gPiA+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvZGly d2Fsay5ocHAiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGly ZF9wYXJ0eS90aW55ZGlyLmhcIiIpICI8dGlueWRpci5oPiIpKQo+ID4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJpbmNsdWRlL2dlbW1pL2NpZi5ocHAiCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGlyZF9wYXJ0eS90YW8vcGVn dGwuaHBwXCIiKQo+ID4gPiAiPHRhby9wZWd0bC5ocHA+IikpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvanNvbi5ocHAiCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGlyZF9wYXJ0eS9zYWpzb24u aFwiIikgIjxzYWpzb24uaD4iKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChz dWJzdGl0dXRlKiAicHl0aG9uL2dlbW1pLmNwcCIKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoAo+ID4gPiAoKCJcImdlbW1pL3RoaXJkX3BhcnR5L3Rhby9wZWd0bC9wYXJzZV9l cnJvci5ocHBcIiIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiPHRh by9wZWd0bC9wYXJzZV9lcnJvci5ocHA+IikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoc3Vic3RpdHV0ZSogJygiaW5jbHVkZS9nZW1taS9hdG9mLmhwcCIKPiA+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICJpbmNs dWRlL2dlbW1pL251bWIuaHBwIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoKCJcInRoaXJkX3BhcnR5L2Zhc3RfZmxvYXQuaFwiIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICI8ZmFzdF9mbG9hdC9mYXN0X2Zsb2F0Lmg+IikpCj4gPiA+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3Vic3RpdHV0ZSogImluY2x1ZGUvZ2VtbWkvZm91 cmllci5ocHAiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXCJ0aGly ZF9wYXJ0eS9wb2NrZXRmZnRfaGRyb25seS5oXCIiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgIjxwb2NrZXRmZnRfaGRyb25seS5oPiIpKSkpCj4gPiBJJ2QgY29sbGVj dCBhbGwgdGhlIGZpbGVzIGludG8gYSAobGlzdCAuLi4pIGFuZCB0aGVuIHdyaXRlIG91dCB0aGUK PiA+IHN1YnN0aXR1dGVzLgo+IElzIGl0IHByZWZlcnJlZCB0byBwdXQgbGlzdCBlbGVtZW50cyBv biBzZXBhcmF0ZSBsaW5lcyAoYWxzbyBpbgo+IGlucHV0cyk/Cj4gCkRlcGVuZHMgb24gdGhlIGxl bmd0aCwgYnV0IGluIHRoaXMgY2FzZSBJJ2Qgc2F5IHllcy4KSG93ZXZlciwgaWYgdGhpbmdzIG5l YXRseSBmaXQgaW50byBvbmUgbGluZSwgeW91IGRvbid0IGhhdmUgdG8gYWRkIGEKbmV3IGxpbmUu CgpDaGVlcnMK From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 14 17:33:36 2022 Received: (at 58261) by debbugs.gnu.org; 14 Oct 2022 21:33:36 +0000 Received: from localhost ([127.0.0.1]:38842 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSJD-0000Uv-JA for submit@debbugs.gnu.org; Fri, 14 Oct 2022 17:33:36 -0400 Received: from mail-ej1-f66.google.com ([209.85.218.66]:35810) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojSJB-0000Ue-4K for 58261@debbugs.gnu.org; Fri, 14 Oct 2022 17:33:33 -0400 Received: by mail-ej1-f66.google.com with SMTP id k2so13157722ejr.2 for <58261@debbugs.gnu.org>; Fri, 14 Oct 2022 14:33:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=9lcRuSEcvgkdFWXgjfVA7WdrVCFDq1VlJEIK9fk2tR4=; b=U6sQzGa/xYRe3XMMisGiDfwZA0VSNqnqBv6DL+eygklbmQbKApdw76g1OyjJZXNiOI fvbaejnEQd9iffaTD4lH8hAA6m2uEANFVXzLpmeox0fLPX0GSSnkwrQANPEYmB3mwnm8 kQJBoR7dxRToYbvnYows2/aP5bjw5vJvgCsw3EApie8dJNsrNXSiLRzNimvjZfcRT9Nr owHOjM7nsBdaUBQvUvnfdkyp/TOarjO7EepEwZl3mUCLbE7tYp0n41/puG0oWaAluIa1 vCPaYmLsismPuisLg0JwlLmWHTi5WXPZOuxg+gNHI87TZFzWn7p2JjL38vNdP7XdHLD1 4MnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=9lcRuSEcvgkdFWXgjfVA7WdrVCFDq1VlJEIK9fk2tR4=; b=vdLNR0bPjZM+B5KNzXmmASR9eVmm06vHMjBCziyoqasE53kKeTeJW1+YTJR1FNpwlF I8TncOvdWXNAZIWmDKTZw35W3MHVdhxb2pHou9LrALLKwPUvGLIQmk2RvpacYn2jaI3k zPuDcYSw1EcIQgDv0DHO4B4OzUnfoFpzeR+tLu9Kyfo6j7AXbL0amivmWf7+an50gb+s OFAylkJywAhV0sBEDbBEm0N2aOmXR1lyWMvXenhGvgIRxAVxHZt6OrRpFl9xOK8HOmtE NUjcJUCWybzvI8mfQRcO5sGLCecsNED9Ibfg6FFMJglIRQ0DLMiw//4y1i3vBC0bjmuw kmvQ== X-Gm-Message-State: ACrzQf1TTo+mPD2FYPzPkGdeSBSAxk15MmW+zcRYfWlhHN1zZThuAX9j hHVn7VDJe6Y3CvqBgNL9O0ryjMeNxRM= X-Google-Smtp-Source: AMsMyM7lNv5lQoTk+vsf6wAsidhl21ZcaoFWBoeXvo6wahqsqm1HNG5+c5VGZLubMK88BLPrpc3hdA== X-Received: by 2002:a17:907:8688:b0:782:6637:e8dc with SMTP id qa8-20020a170907868800b007826637e8dcmr5246863ejc.174.1665783207563; Fri, 14 Oct 2022 14:33:27 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id g6-20020a17090669c600b0072af4af2f46sm2088741ejs.74.2022.10.14.14.33.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Oct 2022 14:33:27 -0700 (PDT) Message-ID: <25b32f37be5af159b885741ee5e87a74f716b322.camel@gmail.com> Subject: Re: [PATCH v2 10/13] gnu: Add yaehmop-tightbind. From: Liliana Marie Prikler To: David Elsing , 58261@debbugs.gnu.org Date: Fri, 14 Oct 2022 23:33:26 +0200 In-Reply-To: <86zgdza16g.fsf@posteo.net> References: <86zgdza16g.fsf@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) QW0gRG9ubmVyc3RhZywgZGVtIDEzLjEwLjIwMjIgdW0gMjE6MDAgKzAwMDAgc2NocmllYiBEYXZp ZCBFbHNpbmc6Cj4gTGlsaWFuYSBNYXJpZSBQcmlrbGVyIDxsaWxpYW5hLnByaWtsZXJAZ21haWwu Y29tPiB3cml0ZXM6Cj4gCj4gPiBBbSBGcmVpdGFnLCBkZW0gMDcuMTAuMjAyMiB1bSAxNToyMSAr MDAwMCBzY2hyaWViIERhdmlkIEVsc2luZzoKPiA+ID4gKiBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbSAoeWFlaG1vcC10aWdodGJpbmQpOiBOZXcgdmFyaWFibGUuCj4gPiBEb24ndCBmb3JnZXQg dG8gdXBkYXRlIHRoZSBDaGFuZ2VMb2cuCj4gQWggdGhhbmtzLiA6KQo+ID4gPiAtLS0KPiA+ID4g wqBnbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbSB8IDExMAo+ID4gPiArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCj4gPiA+IMKgMSBmaWxlIGNoYW5nZWQsIDExMCBpbnNlcnRp b25zKCspCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2NoZW1pc3RyeS5z Y20KPiA+ID4gYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ID4gPiBpbmRleCAxNTEwY2Jh YjQxLi42OGQyOGE1MmMzIDEwMDY0NAo+ID4gPiAtLS0gYS9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5 LnNjbQo+ID4gPiArKysgYi9nbnUvcGFja2FnZXMvY2hlbWlzdHJ5LnNjbQo+ID4gPiBAQCAtNDIs NiArNDIsNyBAQCAoZGVmaW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4g wqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBkb2N1bWVudGF0aW9uKQo+ID4gPiDCoMKg ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGZsZXgpCj4gPiA+IMKgwqAgIzp1c2UtbW9kdWxl IChnbnUgcGFja2FnZXMgZm9udHV0aWxzKQo+ID4gPiArwqAgIzp1c2UtbW9kdWxlIChnbnUgcGFj a2FnZXMgZ2NjKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsKQo+ID4g PiDCoMKgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdyYXBodml6KQo+ID4gPiDCoMKgICM6 dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGd2KQo+ID4gPiBAQCAtNTYsNiArNTcsNyBAQCAoZGVm aW5lLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNoZW1pc3RyeSkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBzZXJpYWxpemF0aW9uKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIHNwaGlueCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdl cyBzdGIpCj4gPiA+ICvCoCAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB0ZXgpCj4gPiA+IMKg wqAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgd2ViKQo+ID4gPiDCoMKgICM6dXNlLW1vZHVs ZSAoZ251IHBhY2thZ2VzIHhtbCkKPiA+ID4gwqDCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQt c3lzdGVtIGNtYWtlKQo+ID4gPiBAQCAtODE4LDMgKzgyMCwxMTEgQEAgKGRlZmluZS1wdWJsaWMg Y29vcmRnZW5saWJzCj4gPiA+IMKgwqDCoMKgIChkZXNjcmlwdGlvbiAiQGNvZGV7Y29vcmRnZW5s aWJzfSBjb250YWlucyBhbGdvcml0aG1zIHRvCj4gPiA+IGdlbmVyYXRlIDJECj4gPiA+IMKgY29v cmRpbmF0ZXMuwqAgSXQgaGFzIGFuIGVtcGhhc2lzIG9uIHF1YWxpdHkgcmF0aGVyIHRoYW4gc3Bl ZWQuIikKPiA+ID4gwqDCoMKgwqAgKGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKQo+ID4gPiArCj4g PiA+ICsoZGVmaW5lLXB1YmxpYyB5YWVobW9wCj4gPiA+ICvCoCAocGFja2FnZQo+ID4gPiArwqDC oMKgIChuYW1lICJ5YWVobW9wIikKPiA+ID4gK8KgwqDCoCAodmVyc2lvbiAiMjAyMi4wOS4xIikK PiA+ID4gK8KgwqDCoCAoc291cmNlIChvcmlnaW4KPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChtZXRob2QgZ2l0LWZldGNoKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgKHVyaSAoZ2l0LXJlZmVyZW5jZQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHVybAo+ID4gPiAiaHR0cHM6Ly9naXRodWIuY29tL2dyZWdsYW5kcnVtL3lh ZWhtb3AiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNv bW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKPiA+ ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzaGEyNTYKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgKGJhc2UzMgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgCj4gPiA+ICIxeDBkNzVtMWhnZGI0MTFmaXY3YzVid3ExbjR5MHN3cmxsMGdpZ2g4djVj NzNranhyamEwIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobW9kdWxlcyAn KChndWl4IGJ1aWxkIHV0aWxzKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo c25pcHBldAo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAnKGJlZ2luCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFNlcGFyYXRlIHByb2dyYW0K PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlbGV0ZS1maWxlLXJl Y3Vyc2l2ZWx5ICJ2aWV3a2VsIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgOzsgUmVtb3ZlIGV4YW1wbGUgb3V0cHV0IChzb21lIGFyZSBjb3JydXB0ZWQpCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmb3ItZWFjaCBkZWxldGUtZmls ZSAoZmluZC1maWxlcyAiZXhhbXBsZXMiCj4gPiA+ICJcXC5aJCIpKQo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7OyBEb2N1bWVudGF0aW9uIG91dHB1dHMKPiA+ID4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGZvci1lYWNoIGRlbGV0ZS1maWxl IChmaW5kLWZpbGVzICJkb2NzIgo+ID4gPiAiXFwuKHBzfHBkZikkIikpCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IFRoZXNlIGFyZSB0cmFuc3BpbGVkIGZyb20g Rm9ydHJhbiB0byBDLCBidXQKPiA+ID4gd2UKPiA+ID4gYnVpbGQgdGhlCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IEZvcnRyYW4gY29kZSBpbnN0ZWFkCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZS1yZWN1cnNp dmVseQo+ID4gPiAidGlnaHRiaW5kL2YyY19maWxlcyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5kL2RpYWcuYyIpCj4gPiA+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRi aW5kL2Nib3Jpcy5jIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGRlbGV0ZS1maWxlICJ0aWdodGJpbmQvYWJmbnMuYyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIChkZWxldGUtZmlsZSAidGlnaHRiaW5kL2xvdmxhcC5jIikpKSkp Cj4gPiA+ICvCoMKgwqAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCj4gPiA+ICvC oMKgwqAgKGFyZ3VtZW50cwo+ID4gPiArwqDCoMKgwqAgKGxpc3QKPiA+ID4gK8KgwqDCoMKgwqAg Izpjb25maWd1cmUtZmxhZ3MKPiA+ID4gK8KgwqDCoMKgwqAgI34obGlzdAo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoCAiLURVU0VfQkxBU19MQVBBQ0s9T04iCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg IChzdHJpbmctYXBwZW5kICItRFBBUk1fRklMRV9MT0M9IiAjJG91dHB1dAo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiL3NoYXJlLyIgIyRuYW1l ICItIiAjJHZlcnNpb24KPiA+ID4gIi9laHRfcGFybXMuZGF0IikKPiA+ID4gK8KgwqDCoMKgwqDC oMKgwqAgIi1EQklORF9FWEVfTkFNRT15YWVobW9wLWJpbmQiKQo+ID4gPiArwqDCoMKgwqDCoCAj OnBoYXNlcwo+ID4gPiArwqDCoMKgwqDCoCAjfihtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFz ZXMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoCAoYWRkLWFmdGVyICd1bnBhY2sgJ2NoZGlyCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKGNoZGlyICJ0aWdodGJpbmQiKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqAgKGFkZC1hZnRlciAnY2hkaXIgJ3BhdGNoLWZvcnRyYW4tZnVuY3Rpb25zCj4gPiA+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKHN1YnN0aXR1dGUqICcoIm1vdi5jIiAicHJvdG90eXBlcy5oIikKPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKCJsb3ZsYXBcXCgiKSAibG92bGFwXygiKQo+ ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoImFiZm5zXFwoIikgImFiZm5z XygiKSkpKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2NoZGlyICdwYXRj aC1jbWFrZQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGFtYmRhIF8KPiA+ID4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiQ01ha2VMaXN0cy50eHQiCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgicHJvamVjdFxcKHlhZWhtb3Ag Q1xcKSIpICJwcm9qZWN0KHlhZWhtb3AgQwo+ID4gPiBGb3J0cmFuKSIpCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiYWJmbnMuYyIpICJmb3J0cmFuNzcvYWJmbnMuZiIp Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgibG92bGFwLmMiKSAiZm9y dHJhbjc3L2xvdmxhcC5mIikKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo KCIoc2V0XFwoUEFSTV9GSUxFX0xPQy4qKVxcKSIgYWxsIGluaXQpCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZCBpbml0ICIgQ0FDSEUgU1RSSU5H IFwiXCIpIikpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiYWRkX2xp YnJhcnlcXCh5YWVobW9wX2VodCIgbGliKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgbGliICIgU0hBUkVEICIpKQo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICgoInRhcmdldF9saW5rX2xpYnJhcmllc1xcKHRlc3RfZWh0 Cj4gPiA+IFxcJFxce0xBUEFDS19MSUJSQVJJRVNcXH0uKiIKPiA+ID4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgYWxsKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKHN0cmluZy1hcHBlbmQgYWxsCj4gPiA+ICJcbnRhcmdldF9saW5rX2xpYnJhcmll cyh5YWVobW9wX2VodCAiCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiJHtMQVBBQ0tfTElCUkFSSUVTfSlcbiIpKSkp KQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQtYWZ0ZXIgJ2J1aWxkICdmaXgtbGF0ZXgK PiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBfCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAoY2hkaXIgIi4uL2RvY3MiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKHN1YnN0aXR1dGUqICJiaW5kX21hbnVhbC50ZXgiCj4gPiA+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiXFxcXHVzZXBhY2thZ2VcXHtiaW5kcGFnZVxcfSIp Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3RyaW5nLWFwcGVuZAo+ ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoAo+ID4gPiAiXFx1c2VwYWNr YWdlW2xlZnQ9MmNtLHJpZ2h0PTJjbSx0b3A9NGNtLGJvdHRvbT0yY21dIgo+ID4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAie2dlb21ldHJ5fSIpKSkKPiA+ID4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzdWJzdGl0dXRlKiAiWm1hdF9hcHBlbmRpeC50ZXgiCj4g PiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCgiZmlsZT1kaWhlZHJhbFxcLmVw cyIpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiZmlsZT1maWdzL2Rp aGVkcmFsLmVwcyIpKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFkZC1hZnRlciAnZml4 LWxhdGV4ICdidWlsZC1kb2MKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxhbWJkYSBf Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA7OyBUT0RPOiBub3QgcmVwcm9kdWNp YmxlCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2V0ZW52ICJGT1JDRV9TT1VS Q0VfREFURSIgIjEiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgTmVlZHMg dG8gcnVuIHR3aWNlIHRvIGNvbXBpbGUgY29tcGxldGVseQo+ID4gPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGludm9rZSAicGRmbGF0ZXgiICJiaW5kX21hbnVhbC50ZXgiKQo+ID4gPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGludm9rZSAicGRmbGF0ZXgiICJiaW5kX21hbnVh bC50ZXgiKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGNoZGlyICIuLi9idWls ZCIpKSkKPiA+IE5vdGUgdGhhdCB3ZSBoYXZlIHJ1YmJlciB0byBhdXRvbWF0ZSBidWlsZGluZyBQ REZzLsKgIEFsc28gcHJlZmVyCj4gPiAid2l0aC0KPiA+IGRpcmVjdG9yeS1leGN1cnNpb24iIG92 ZXIgY2hkaXIgd2hlcmUgcG9zc2libGUuCj4gSSB1c2VkIGxhdGV4bWsgYXMgaXQncyBhbHJlYWR5 IGluY2x1ZGVkIGluIHRleGxpdmUtYmluCj4gKGl0IGlzIGFsc28gcmVwcm9kdWNpYmxlIHdpdGgg XHBkZnN1cHByZXNzcHRleGluZm89LTEpLgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQt YWZ0ZXIgJ2luc3RhbGwgJ2luc3RhbGwtZWh0LXBhcm1zCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGluc3Rh bGwtZmlsZSAiLi4vdGlnaHRiaW5kL2VodF9wYXJtcy5kYXQiCj4gPiA+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBlbmQg IyRvdXRwdXQgIi9zaGFyZS8iCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIyRu YW1lICItIgo+ID4gPiAjJHZlcnNpb24pKSkpCj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKGFk ZC1hZnRlciAnaW5zdGFsbC1laHQtcGFybXMgJ2luc3RhbGwtZG9jCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChsYW1iZGEgXwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg KGluc3RhbGwtZmlsZSAiLi4vZG9jcy9iaW5kX21hbnVhbC5wZGYiCj4gPiA+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKHN0cmluZy1hcHBl bmQgIyRvdXRwdXQKPiA+ID4gIi9zaGFyZS9kb2MvIgo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgICMkbmFtZSAiLSIKPiA+ID4gIyR2ZXJzaW9uKSkpKQo+ID4gPiArwqDCoMKgwqDC oMKgwqDCoMKgIChkZWxldGUgJ2NoZWNrKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgIChhZGQt YWZ0ZXIgJ2luc3RhbGwtZG9jICdjaGVjawo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo bGFtYmRhKiAoIzprZXkgdGVzdHM/ICM6YWxsb3ctb3RoZXIta2V5cykKPiA+ID4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICh3aGVuIHRlc3RzPwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIChpbnZva2UgIi4vdGVzdF9laHQiKSkpKSkpKQo+ID4gPiArwqDCoMKgIChu YXRpdmUtaW5wdXRzCj4gPiA+ICvCoMKgwqDCoCBgKCgiZ2ZvcnRyYW4iICxnZm9ydHJhbikKPiA+ ID4gK8KgwqDCoMKgwqDCoCAoInRleGxpdmUiICwodGV4bGl2ZS11cGRtYXAuY2ZnIChsaXN0IHRl eGxpdmUtZm9udHMtZWMKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGV4 bGl2ZS1sYXRleC0KPiA+ID4gZ3JhcGhpY3MKPiA+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgdGV4bGl2ZS1sYXRleC0KPiA+ID4gZ2VvbWV0cnkpKSkpKQo+ID4gSSB0aGluayB5 b3UgY2FuIGRvIHdpdGhvdXQgbGFiZWxzIGhlcmUgKHNlZSBteSBjb21tZW50IHJlZ2FyZGluZwo+ ID4gcnViYmVyKS4KPiA+ID4gK8KgwqDCoCAoaW5wdXRzIChsaXN0IG9wZW5ibGFzKSkKPiA+ID4g K8KgwqDCoCAoaG9tZS1wYWdlICJodHRwczovL2dpdGh1Yi5jb20vZ3JlZ2xhbmRydW0veWFlaG1v cCIpCj4gPiA+ICvCoMKgwqAgKHN5bm9wc2lzICJZZXQgQW5vdGhlciBleHRlbmRlZCBIdWVja2Vs IE1vbGVjdWxhciBPcmJpdGFsCj4gPiA+IFBhY2thZ2UiKQo+ID4gWW91IGNhbiB1c2UgdGhpcyBh cyBhbiBAYWNyb255bSBpbiB0aGUgZGVzY3JpcHRpb24uwqAgRm9yIHRoZQo+ID4gc3lub3BzaXMs Cj4gPiBJJ2QgdXNlIHNvbWV0aGluZyBlbHNlLCBlLmcuICJQZXJmb3JtIEjDvGNrZWwgY2FsY3Vs YXRpb25zIi4KPiA+ID4gK8KgwqDCoCAoZGVzY3JpcHRpb24gIkBjb2Rle1lBZUhNT1B9IGNvbnRh aW5zIGEgcHJvZ3JhbSBhbmQgbGlicmFyeQo+ID4gPiBmb3IKPiA+ID4gcGVyZm9ybWluZwo+ID4g PiArZXh0ZW5kZWQgSMO8Y2tlbCBjYWxjdWxhdGlvbnMuIikKPiA+IEkgcmVjb21tZW5kIGFkZGlu ZyAiYW5kIGFuYWx5emluZyBhbmQgdmlzdWFsaXppbmcgdGhlIHJlc3VsdHMuIgo+ID4gKHNlZQo+ ID4gcGx1Z19pdC50ZXgpCj4gVGhlIHZpc3VhbGl6YXRpb24gcHJvZ3JhbSBpcyBub3QgYnVpbHQs IHNvIG1heWJlIHdpdGhvdXQgdmlzdWFsaXppbmc/ClNHVE0KCg== From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 15 10:37:44 2022 Received: (at 58261-done) by debbugs.gnu.org; 15 Oct 2022 14:37:45 +0000 Received: from localhost ([127.0.0.1]:42375 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojiIJ-0000lm-V2 for submit@debbugs.gnu.org; Sat, 15 Oct 2022 10:37:44 -0400 Received: from mail-ej1-f67.google.com ([209.85.218.67]:42819) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ojiID-0000lS-RE for 58261-done@debbugs.gnu.org; Sat, 15 Oct 2022 10:37:42 -0400 Received: by mail-ej1-f67.google.com with SMTP id y14so16059221ejd.9 for <58261-done@debbugs.gnu.org>; Sat, 15 Oct 2022 07:37:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=5ISCV7dx54B5D7oygCeFL5XoHEzJGsX6MV4njPC9JSE=; b=iST9ehzSx6A5K9DIn5DblTm3m0ZYjRYwtmFb++uOYSrPx8dszDqECuDZ9TxZGKLZwi pkSBRnnwnX9lwAVXWDnltY9MMJDLooi+OT2/5FqhYRf+e7I2NHcsAnCEBN5D3CG9NPc5 ASpxMyX/P9Ne4wl5xsg3qr1MqiWyv8MizC1LhUh+PG9nfJy5GjG022szeeRpwJj072ll 1y+2VOpJhqKaYoaiQiVoMijFiDUza5Ea0TzGTjQXxP6hQVu0Lo6neQeiKDa73lKdenxl Fdt6natHGoyaO5f3BgfIgJ7FLHcGBVde/Hzs5PDHZF2228YtoHLmFaoYf9fxw5Ke5eW1 uWWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=5ISCV7dx54B5D7oygCeFL5XoHEzJGsX6MV4njPC9JSE=; b=M1iV8I19F2wkoGv7yOHa1jNCdckLqvkAKvJrlVIu4Wvz48sSZvhpS/FjBh4y+yYc+s UmSA+xmwOj0v3806VRe3TydFnhg8XVkB4GxBHIW+8gsVdgtJZ1YGdx/0zdJ3AhBaeL1R l8XjT9E+kd7+PTMg+Zqi36KLUoxdmgBPc1N1eNeN8H0yzZ+Ci3uiS21pCb0fz6gHYXCI DyoFvTjUg2KgPmOVpVWUL0faaiJt72P+7eq0x02fUDjdk/zRYjdKS7c/OesO7CHGLzal F90vOeVpwH8pziYUr9XycBBDx087wtsdFOvNHIh7JPpy/O22oby8wYhnGT0LZ2Anzj9O YkpQ== X-Gm-Message-State: ACrzQf1KqtJ1L6HYpB4nSQ8XRwwQ2S4ki+jw1AVSvU6qYtbke19+/x7f Enb46WnftEF5cpDCjV2JS40= X-Google-Smtp-Source: AMsMyM4N9zyJiUfG64J3zUx40rON514z92BJfDggx3WmTkZKKBfVDtGYgDL+u5BHWWOoBgeeDm8pdA== X-Received: by 2002:a17:907:1b1c:b0:72f:9aac:ee41 with SMTP id mp28-20020a1709071b1c00b0072f9aacee41mr2252009ejc.56.1665844651921; Sat, 15 Oct 2022 07:37:31 -0700 (PDT) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id 17-20020a170906201100b007803083a36asm3158855ejo.115.2022.10.15.07.37.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Oct 2022 07:37:31 -0700 (PDT) Message-ID: Subject: Re: [PATCH v3 00/15] Add rdkit v3. From: Liliana Marie Prikler To: David Elsing , 58261-done@debbugs.gnu.org Date: Sat, 15 Oct 2022 16:37:27 +0200 In-Reply-To: <20221013210424.993-1-david.elsing@posteo.net> References: <20221007152148.32591-1-david.elsing@posteo.net> <20221013210424.993-1-david.elsing@posteo.net> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.46.0 MIME-Version: 1.0 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 58261-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Am Donnerstag, dem 13.10.2022 um 21:04 +0000 schrieb David Elsing: > Thanks again for your comments! Here is the next version. :) > Now all packages were reproducible again after two rounds. I've made some adjustments =E2=80=93 some cosmetic, some otherwise =E2=80= =93 and pushed this series. Cheers From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 17 05:55:45 2022 Received: (at 58261-done) by debbugs.gnu.org; 17 Oct 2022 09:55:45 +0000 Received: from localhost ([127.0.0.1]:47380 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1okMqW-0000Pq-VX for submit@debbugs.gnu.org; Mon, 17 Oct 2022 05:55:45 -0400 Received: from mout02.posteo.de ([185.67.36.66]:48713) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1okMqU-0000PZ-FI for 58261-done@debbugs.gnu.org; Mon, 17 Oct 2022 05:55:43 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 82E8D240105 for <58261-done@debbugs.gnu.org>; Mon, 17 Oct 2022 11:55:35 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1666000536; bh=Oeh7jzckx6k7KYlBoUeCuzwRD1+lgPSNQLZHwrTBGRs=; h=From:To:Subject:Date:From; b=OB0BQyVwD4Lj6rXAUQb3PicGJ53IenXK309/7n0TkVgfpTkN306XiF51xnyPAx/EG Uf0AAd0AqvAwj7KTLD0f4/6W0c2slWOnvhuf5SCpNQa50hz3FyZiOKe6S3rEocjrb+ RJbzP1rYYMdId1PoQuNTOdQhKlTKEakozARB6/gwQuPOBLKCizXEKpDiSZT4C7iPB3 nRhSFaUOXkN9g3KsTtN2FSBpdbNv1NTqNgQ1m7QgRCGgrrcq2sceBKXWcfX9F2UEtW 8kYVLYgrllE/jmK19LMYRfIAk0yVU2POGTMEYaJRabJ4/tGeoSxXklsq4zxEq1elAH cmINSrmqF7Mww== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4MrXRn61qDz6tmq; Mon, 17 Oct 2022 11:55:33 +0200 (CEST) From: David Elsing To: Liliana Marie Prikler , 58261-done@debbugs.gnu.org Subject: Re: [PATCH v3 00/15] Add rdkit v3. In-Reply-To: References: <20221007152148.32591-1-david.elsing@posteo.net> <20221013210424.993-1-david.elsing@posteo.net> Date: Mon, 17 Oct 2022 09:55:31 +0000 Message-ID: <7yedv6rcz0.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 58261-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Liliana Marie Prikler writes: > Am Donnerstag, dem 13.10.2022 um 21:04 +0000 schrieb David Elsing: >> Thanks again for your comments! Here is the next version. :) >> Now all packages were reproducible again after two rounds. > I've made some adjustments =E2=80=93 some cosmetic, some otherwise =E2=80= =93 and pushed > this series. > > Cheers Thank you! I'll see whether I can find the reason some tests in freesasa fail on i686, but it was possible to reproduce them at least. From unknown Fri Aug 15 18:14:22 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 14 Nov 2022 12:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator