From patchwork Tue Oct 24 08:34:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hilton Chain X-Patchwork-Id: 55266 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 931B427BBE9; Tue, 24 Oct 2023 09:36:43 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 94E3F27BBE2 for ; Tue, 24 Oct 2023 09:36:42 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvCtu-00011d-N2; Tue, 24 Oct 2023 04:36:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvCtt-00010x-42 for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:33 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qvCts-0002JT-Ru for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:32 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qvCuM-0006IZ-9p for guix-patches@gnu.org; Tue, 24 Oct 2023 04:37:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66723] [PATCH 1/3] gnu: zig-0.10: Use gexp. Resent-From: Hilton Chain Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 24 Oct 2023 08:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66723 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66723@debbugs.gnu.org Cc: Hilton Chain Received: via spool by 66723-submit@debbugs.gnu.org id=B66723.169813661524179 (code B ref 66723); Tue, 24 Oct 2023 08:37:02 +0000 Received: (at 66723) by debbugs.gnu.org; 24 Oct 2023 08:36:55 +0000 Received: from localhost ([127.0.0.1]:53034 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuE-0006Hv-IR for submit@debbugs.gnu.org; Tue, 24 Oct 2023 04:36:55 -0400 Received: from mail.boiledscript.com ([144.168.59.46]:34348) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuB-0006Hf-Qd for 66723@debbugs.gnu.org; Tue, 24 Oct 2023 04:36:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ultrarare.space; s=dkim; t=1698136425; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=YtkyO1IxqPaxoZ6MnIWi1d0XAf/+dItJ72JB5Yh8iP0=; b=d01gwLGQSpbl5sl/xbr9dlIggEPWfqAUiQy2IRnQieRJar4W4tisM9/mLlieFo9hMSah5/ h1WxaA213p6QHc5hLx+1FwtzXOc51c8TXfVV8BjMnONxrrUNii2dBGQwbnI7BN8Iqb7LOn YIsPZurz2BfxIeHIDX65D2tL0zKneVrPwbDEIKDostxs+R2ot4v+D/qJh5WlOmy277dlpL mHHXcaWTeeF7t8R5d2HlvUKSNclMw0y9am1a+Vczim0O14Di9ETc8xK0LiX+SkhjTU2Z1d vF+zTCGbIH95Bu97JffNgb5JcFfB3sHbhk4+XNH1vImM63NrTx5WEg8mAMnyiw== Authentication-Results: mail.boiledscript.com; auth=pass smtp.mailfrom=hako@ultrarare.space Date: Tue, 24 Oct 2023 16:34:01 +0800 Message-ID: <33d45edb223f76b040da723a4b20f3dfaab6ed8f.1698134803.git.hako@ultrarare.space> In-Reply-To: References: MIME-Version: 1.0 X-Spamd-Bar: -- X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Hilton Chain X-ACL-Warn: , Hilton Chain via Guix-patches X-Patchwork-Original-From: Hilton Chain via Guix-patches via From: Hilton Chain Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/zig.scm (zig-0.10)[arguments]: Use gexp. Change-Id: I8ba6a4bd92784637cd3a4448e2f99ed521a17f3a --- gnu/packages/zig.scm | 79 ++++++++++++++++++++++---------------------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm index dcca9a1121..882e5426dc 100644 --- a/gnu/packages/zig.scm +++ b/gnu/packages/zig.scm @@ -20,6 +20,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages zig) + #:use-module (guix gexp) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix git-download) @@ -53,45 +54,45 @@ (define-public zig-0.10 (native-inputs (list llvm-15)) (arguments - `(#:configure-flags - (list ,@(if (%current-target-system) - '(string-append "-DZIG_TARGET_TRIPLE=" - (%current-target-system)) - '()) - (string-append "-DZIG_TARGET_MCPU=baseline") - "-DZIG_SHARED_LLVM=ON" - (string-append "-DZIG_LIB_DIR=" (assoc-ref %outputs "out") - "/lib/zig")) - #:validate-runpath? #f ; TODO: zig binary can't find ld-linux. - #:out-of-source? #f ; for tests - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'set-env-variables - (lambda* (#:key inputs native-inputs #:allow-other-keys) - ;; Set CC, since the stage 2 zig relies on it to find the libc - ;; installation, and otherwise silently links against its own. - (setenv "CC" ,(cc-for-target)) - ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. - (setenv "ZIG_GLOBAL_CACHE_DIR" - (string-append (getcwd) "/zig-cache")))) - (add-after 'patch-source-shebangs 'patch-more-shebangs - (lambda* (#:key inputs #:allow-other-keys) - ;; Zig uses information about /usr/bin/env to determine the - ;; version of glibc and other data. - (substitute* "lib/std/zig/system/NativeTargetInfo.zig" - (("/usr/bin/env") (search-input-file inputs "/bin/env"))))) - (delete 'check) - (add-after 'install 'check - (lambda* (#:key outputs tests? #:allow-other-keys) - (when tests? - (invoke (string-append (assoc-ref outputs "out") "/bin/zig") - "build" "test" - ;; We're not testing the compiler bootstrap chain. - "-Dskip-stage1" - "-Dskip-stage2-tests" - ;; Non-native tests try to link and execute non-native - ;; binaries. - "-Dskip-non-native"))))))) + (list + #:configure-flags + #~(list #$@(if (%current-target-system) + (list (string-append "-DZIG_TARGET_TRIPLE=" + (%current-target-system))) + '()) + "-DZIG_TARGET_MCPU=baseline" + "-DZIG_SHARED_LLVM=ON" + (string-append "-DZIG_LIB_DIR=" #$output "/lib/zig")) + #:validate-runpath? #f ;TODO: zig binary can't find ld-linux. + #:out-of-source? #f ;for tests + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'set-env-variables + (lambda _ + ;; Set CC, since the stage 2 zig relies on it to find the libc + ;; installation, and otherwise silently links against its own. + (setenv "CC" #$(cc-for-target)) + ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. + (setenv "ZIG_GLOBAL_CACHE_DIR" + (string-append (getcwd) "/zig-cache")))) + (add-after 'patch-source-shebangs 'patch-more-shebangs + (lambda* (#:key inputs #:allow-other-keys) + ;; Zig uses information about /usr/bin/env to determine the + ;; version of glibc and other data. + (substitute* "lib/std/zig/system/NativeTargetInfo.zig" + (("/usr/bin/env") (search-input-file inputs "/bin/env"))))) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke (string-append #$output "/bin/zig") + "build" "test" + ;; We're not testing the compiler bootstrap chain. + "-Dskip-stage1" + "-Dskip-stage2-tests" + ;; Non-native tests try to link and execute non-native + ;; binaries. + "-Dskip-non-native"))))))) (native-search-paths (list (search-path-specification From patchwork Tue Oct 24 08:34:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hilton Chain X-Patchwork-Id: 55265 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 590AB27BBEA; Tue, 24 Oct 2023 09:36:39 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 3E56827BBE2 for ; Tue, 24 Oct 2023 09:36:38 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvCtv-000123-1a; Tue, 24 Oct 2023 04:36:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvCtt-000116-Ia for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:33 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qvCtt-0002Jh-A2 for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:33 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qvCuM-0006Ih-OY for guix-patches@gnu.org; Tue, 24 Oct 2023 04:37:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66723] [PATCH 2/3] gnu: zig-0.9: Use gexp. Resent-From: Hilton Chain Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 24 Oct 2023 08:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66723 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66723@debbugs.gnu.org Cc: Hilton Chain Received: via spool by 66723-submit@debbugs.gnu.org id=B66723.169813661924190 (code B ref 66723); Tue, 24 Oct 2023 08:37:02 +0000 Received: (at 66723) by debbugs.gnu.org; 24 Oct 2023 08:36:59 +0000 Received: from localhost ([127.0.0.1]:53036 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuJ-0006I6-1i for submit@debbugs.gnu.org; Tue, 24 Oct 2023 04:36:59 -0400 Received: from mail.boiledscript.com ([144.168.59.46]:34358) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuE-0006Ho-0X for 66723@debbugs.gnu.org; Tue, 24 Oct 2023 04:36:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ultrarare.space; s=dkim; t=1698136428; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=sSWTlk0xCvvMYql2Rz74QgDSmcrtf+s8dGuFFd6KlR8=; b=IAkc73almOg6jOcS+cwwOUdyFsKb50Qj+6jumrCf8n08efeTohsocrtc/T8/sttuo1ehrJ G6s8gZUk5BwhqyZ0vkSqqLw2db09l3zRQK/SKHijwkEIcNyzVFWdNXxpG9e3RxxRmJmx3g Sik0kv82hsmZgnAHNTjAvzryRuG/JkY+tO8g098CWxWSxgSHuehxI8qmyzX0D9vXLND3GJ vDnJ2XCqCeDkmNn/C+esUIgzxRxyA+balEObthKXaGkS6C6gYNZ1ZatYXZUznxiF9YBK4R 3pEbaY0vn5Z5Euv02jvxvwRSHhbftoI1x16hb8C1xoqkQB0vQaJ6DIAHLb76jw== Authentication-Results: mail.boiledscript.com; auth=pass smtp.mailfrom=hako@ultrarare.space Date: Tue, 24 Oct 2023 16:34:02 +0800 Message-ID: <55d3d44464c9b3df92a179c117669bd071066c05.1698134803.git.hako@ultrarare.space> In-Reply-To: References: MIME-Version: 1.0 X-Spamd-Bar: -- X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Hilton Chain X-ACL-Warn: , Hilton Chain via Guix-patches X-Patchwork-Original-From: Hilton Chain via Guix-patches via From: Hilton Chain Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/zig.scm (zig-0.9)[arguments]: Use gexp. Change-Id: I38c856320ace6d960ae342f5de164ca6c3f449c0 --- gnu/packages/zig.scm | 95 ++++++++++++++++++++++---------------------- 1 file changed, 48 insertions(+), 47 deletions(-) diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm index 882e5426dc..bc3e1c019a 100644 --- a/gnu/packages/zig.scm +++ b/gnu/packages/zig.scm @@ -147,52 +147,53 @@ (define-public zig-0.9 (native-inputs (list llvm-13)) (arguments - `(#:configure-flags - (list ,@(if (%current-target-system) - (string-append "-DZIG_TARGET_TRIPLE=" - (%current-target-system)) - '())) - #:out-of-source? #f ; for tests - ;; There are too many unclear test failures. - #:tests? ,(not (or (target-riscv64?) - (%current-target-system))) - #:phases - (modify-phases %standard-phases - (add-after 'configure 'set-cache-dir - (lambda _ - ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. - (setenv "ZIG_GLOBAL_CACHE_DIR" - (string-append (getcwd) "/zig-cache")))) - ,@(if (target-riscv64?) - ;; It is unclear why all these tests fail to build. - `((add-after 'unpack 'adjust-tests - (lambda _ - (substitute* "build.zig" - ((".*addRuntimeSafetyTests.*") "") - ((".*addRunTranslatedCTests.*") "")) - (substitute* "test/standalone.zig" - ;; These tests fail to build on riscv64-linux. - ;; They both contain 'exe.linkSystemLibrary("c");' - ((".*shared_library.*") "") - ((".*mix_o_files.*") "") - ;; ld.lld: error: undefined symbol: __tls_get_addr - ;; Is this symbol x86 only in glibc? - ((".*link_static_lib_as_system_lib.*") ""))))) - '()) - (delete 'check) - (add-after 'install 'check - (lambda* (#:key outputs tests? #:allow-other-keys) - (when tests? - (invoke (string-append (assoc-ref outputs "out") "/bin/zig") - ;; Testing the standard library takes >7.5GB RAM, and - ;; will fail if it is OOM-killed. The 'test-toolchain' - ;; target skips standard library and doc tests. - "build" "test-toolchain" - ;; Stage 2 is experimental, not what we run with `zig', - ;; and stage 2 tests require a lot of RAM. - "-Dskip-stage2-tests" - ;; Non-native tests try to link and execute non-native - ;; binaries. - "-Dskip-non-native"))))))))) + (list + #:configure-flags + #~(list #$@(if (%current-target-system) + (list (string-append "-DZIG_TARGET_TRIPLE=" + (%current-target-system))) + '())) + #:out-of-source? #f ; for tests + ;; There are too many unclear test failures. + #:tests? (not (or (target-riscv64?) + (%current-target-system))) + #:phases + #~(modify-phases %standard-phases + (add-after 'configure 'set-cache-dir + (lambda _ + ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. + (setenv "ZIG_GLOBAL_CACHE_DIR" + (string-append (getcwd) "/zig-cache")))) + #$@(if (target-riscv64?) + ;; It is unclear why all these tests fail to build. + `((add-after 'unpack 'adjust-tests + (lambda _ + (substitute* "build.zig" + ((".*addRuntimeSafetyTests.*") "") + ((".*addRunTranslatedCTests.*") "")) + (substitute* "test/standalone.zig" + ;; These tests fail to build on riscv64-linux. + ;; They both contain 'exe.linkSystemLibrary("c");' + ((".*shared_library.*") "") + ((".*mix_o_files.*") "") + ;; ld.lld: error: undefined symbol: __tls_get_addr + ;; Is this symbol x86 only in glibc? + ((".*link_static_lib_as_system_lib.*") ""))))) + '()) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke (string-append #$output "/bin/zig") + ;; Testing the standard library takes >7.5GB RAM, and + ;; will fail if it is OOM-killed. The 'test-toolchain' + ;; target skips standard library and doc tests. + "build" "test-toolchain" + ;; Stage 2 is experimental, not what we run with `zig', + + "-Dskip-stage2-tests" + ;; Non-native tests try to link and execute non-native + ;; binaries. + "-Dskip-non-native"))))))))) (define-public zig zig-0.10) From patchwork Tue Oct 24 08:34:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hilton Chain X-Patchwork-Id: 55267 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 3013427BBEA; Tue, 24 Oct 2023 09:36:54 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id DC0A627BBE2 for ; Tue, 24 Oct 2023 09:36:52 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qvCtw-00013V-R8; Tue, 24 Oct 2023 04:36:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvCtt-00011F-UL for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:33 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qvCtt-0002Jn-LX for guix-patches@gnu.org; Tue, 24 Oct 2023 04:36:33 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qvCuN-0006Io-3w for guix-patches@gnu.org; Tue, 24 Oct 2023 04:37:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66723] [PATCH 3/3] gnu: zig-0.10: Inherit from zig-0.9. Resent-From: Hilton Chain Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 24 Oct 2023 08:37:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66723 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66723@debbugs.gnu.org Cc: Hilton Chain Received: via spool by 66723-submit@debbugs.gnu.org id=B66723.169813662224213 (code B ref 66723); Tue, 24 Oct 2023 08:37:03 +0000 Received: (at 66723) by debbugs.gnu.org; 24 Oct 2023 08:37:02 +0000 Received: from localhost ([127.0.0.1]:53039 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuL-0006IL-FC for submit@debbugs.gnu.org; Tue, 24 Oct 2023 04:37:02 -0400 Received: from mail.boiledscript.com ([144.168.59.46]:51818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qvCuJ-0006IC-PE for 66723@debbugs.gnu.org; Tue, 24 Oct 2023 04:37:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ultrarare.space; s=dkim; t=1698136432; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=vi7MwrA3z8PFLQJKvD/UdeZyY+7EqmCUu7lehFt9mlE=; b=pI/T2isLWT8ZFNHUujMhpXh5wlXnKDOMS7l0tiHzGD6lmynI67v2nrT8EnjiIhsEiRHYNv tQM3fZhdLid2VhqCC3nrkns5F3VnVNXb2VK8mtZ8WJyyJR3dKQrAHbKeCk0ZLzd88sw8lV /376XPBb39O26y5daONjmSyOne5EyU4MdvbM8M9+9mzwYrYBFACXfW62ZcFDlaGJ4Exyco 666PF0cMYN9xIO/RFGhSPToEusCg8mXyLow2KdfP1rH0Ar+lV1xA20Tjia1JsF789YeEmj N3v+Fj6XGYOARFegg2sMqUAebdwEz6HKzUePFVHGQ0oWvJvvoVhnCVqI62psoQ== Authentication-Results: mail.boiledscript.com; auth=pass smtp.mailfrom=hako@ultrarare.space Date: Tue, 24 Oct 2023 16:34:03 +0800 Message-ID: <8bea7b0450d0aecf803c9f37465cec9b9db7540b.1698134803.git.hako@ultrarare.space> In-Reply-To: References: MIME-Version: 1.0 X-Spamd-Bar: -- X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Hilton Chain X-ACL-Warn: , Hilton Chain via Guix-patches X-Patchwork-Original-From: Hilton Chain via Guix-patches via From: Hilton Chain Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/zig.scm (zig-0.9): Expand definition. (zig-0.10): Inherit from zig-0.9. Change-Id: I36c273ac3f08982f598fa934571c1b83437cb977 --- gnu/packages/zig.scm | 179 +++++++++++++++++++++---------------------- 1 file changed, 88 insertions(+), 91 deletions(-) diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm index bc3e1c019a..08ee650d8b 100644 --- a/gnu/packages/zig.scm +++ b/gnu/packages/zig.scm @@ -30,10 +30,10 @@ (define-module (gnu packages zig) #:use-module (gnu packages compression) #:use-module (gnu packages llvm)) -(define-public zig-0.10 +(define-public zig-0.9 (package (name "zig") - (version "0.10.1") + (version "0.9.1") (source (origin (method git-fetch) @@ -42,57 +42,66 @@ (define-public zig-0.10 (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1sh5xjsksl52i4cfv1qj36sz5h0ln7cq4pdhgs3960mk8a90im7b")) - (patches (search-patches "zig-do-not-link-against-librt.patch")))) + (base32 "0nfvgg23sw50ksy0z0ml6lkdsvmd0278mq29m23dbb2jsirkhry7")) + (patches (search-patches "zig-0.9-riscv-support.patch" + "zig-use-system-paths.patch" + "zig-do-not-link-against-librt.patch")))) (build-system cmake-build-system) - (inputs - (list clang-15 ; Clang propagates llvm. - lld-15 - zlib - (list zstd "lib"))) - ;; Zig compiles fine with GCC, but also needs native LLVM libraries. - (native-inputs - (list llvm-15)) (arguments (list #:configure-flags #~(list #$@(if (%current-target-system) (list (string-append "-DZIG_TARGET_TRIPLE=" (%current-target-system))) - '()) - "-DZIG_TARGET_MCPU=baseline" - "-DZIG_SHARED_LLVM=ON" - (string-append "-DZIG_LIB_DIR=" #$output "/lib/zig")) - #:validate-runpath? #f ;TODO: zig binary can't find ld-linux. - #:out-of-source? #f ;for tests + '())) + #:out-of-source? #f ; for tests + ;; There are too many unclear test failures. + #:tests? (not (or (target-riscv64?) + (%current-target-system))) #:phases #~(modify-phases %standard-phases - (add-after 'unpack 'set-env-variables + #$@(if (target-riscv64?) + ;; It is unclear why all these tests fail to build. + `((add-after 'unpack 'adjust-tests + (lambda _ + (substitute* "build.zig" + ((".*addRuntimeSafetyTests.*") "") + ((".*addRunTranslatedCTests.*") "")) + (substitute* "test/standalone.zig" + ;; These tests fail to build on riscv64-linux. + ;; They both contain 'exe.linkSystemLibrary("c");' + ((".*shared_library.*") "") + ((".*mix_o_files.*") "") + ;; ld.lld: error: undefined symbol: __tls_get_addr + ;; Is this symbol x86 only in glibc? + ((".*link_static_lib_as_system_lib.*") ""))))) + '()) + (add-after 'configure 'set-cache-dir (lambda _ - ;; Set CC, since the stage 2 zig relies on it to find the libc - ;; installation, and otherwise silently links against its own. - (setenv "CC" #$(cc-for-target)) ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. (setenv "ZIG_GLOBAL_CACHE_DIR" (string-append (getcwd) "/zig-cache")))) - (add-after 'patch-source-shebangs 'patch-more-shebangs - (lambda* (#:key inputs #:allow-other-keys) - ;; Zig uses information about /usr/bin/env to determine the - ;; version of glibc and other data. - (substitute* "lib/std/zig/system/NativeTargetInfo.zig" - (("/usr/bin/env") (search-input-file inputs "/bin/env"))))) (delete 'check) (add-after 'install 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? (invoke (string-append #$output "/bin/zig") - "build" "test" - ;; We're not testing the compiler bootstrap chain. - "-Dskip-stage1" + ;; Testing the standard library takes >7.5GB RAM, and + ;; will fail if it is OOM-killed. The 'test-toolchain' + ;; target skips standard library and doc tests. + "build" "test-toolchain" + ;; Stage 2 is experimental, not what we run with `zig', + "-Dskip-stage2-tests" ;; Non-native tests try to link and execute non-native ;; binaries. "-Dskip-non-native"))))))) + (inputs + (list clang-13 ;Clang propagates llvm. + lld-13)) + ;; Zig compiles fine with GCC, but also needs native LLVM libraries. + (native-inputs + (list llvm-13)) (native-search-paths (list (search-path-specification @@ -123,11 +132,11 @@ (define-public zig-0.10 (properties `((max-silent-time . 9600))) (license license:expat))) -(define-public zig-0.9 +(define-public zig-0.10 (package - (inherit zig-0.10) + (inherit zig-0.9) (name "zig") - (version "0.9.1") + (version "0.10.1") (source (origin (method git-fetch) @@ -136,64 +145,52 @@ (define-public zig-0.9 (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0nfvgg23sw50ksy0z0ml6lkdsvmd0278mq29m23dbb2jsirkhry7")) - (patches (search-patches "zig-0.9-riscv-support.patch" - "zig-use-system-paths.patch" - "zig-do-not-link-against-librt.patch")))) + (base32 "1sh5xjsksl52i4cfv1qj36sz5h0ln7cq4pdhgs3960mk8a90im7b")) + (patches (search-patches "zig-do-not-link-against-librt.patch")))) + (arguments + (substitute-keyword-arguments (package-arguments zig-0.9) + ((#:configure-flags flags ''()) + #~(cons* "-DZIG_TARGET_MCPU=baseline" + "-DZIG_SHARED_LLVM=ON" + (string-append "-DZIG_LIB_DIR=" #$output "/lib/zig") + #$flags)) + ;; TODO: zig binary can't find ld-linux. + ((#:validate-runpath? _ #t) #f) + ((#:tests? _ #t) #t) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + #$@(if (target-riscv64?) + `((delete 'adjust-tests)) + '()) + (add-after 'unpack 'set-CC + (lambda _ + ;; Set CC, since the stage 2 zig relies on it to find the libc + ;; installation, and otherwise silently links against its own. + (setenv "CC" #$(cc-for-target)))) + (add-after 'patch-source-shebangs 'patch-more-shebangs + (lambda* (#:key inputs #:allow-other-keys) + ;; Zig uses information about /usr/bin/env to determine the + ;; version of glibc and other data. + (substitute* "lib/std/zig/system/NativeTargetInfo.zig" + (("/usr/bin/env") (search-input-file inputs "/bin/env"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke (string-append #$output "/bin/zig") + "build" "test" + ;; We're not testing the compiler bootstrap chain. + "-Dskip-stage1" + "-Dskip-stage2-tests" + ;; Non-native tests try to link and execute non-native + ;; binaries. + "-Dskip-non-native")))))))) (inputs - (list clang-13 ; Clang propagates llvm. - lld-13)) - ;; Zig compiles fine with GCC, but also needs native LLVM libraries. + (modify-inputs (package-inputs zig-0.9) + (prepend zlib `(,zstd "lib")) + (replace "clang" clang-15) + (replace "lld" lld-15))) (native-inputs - (list llvm-13)) - (arguments - (list - #:configure-flags - #~(list #$@(if (%current-target-system) - (list (string-append "-DZIG_TARGET_TRIPLE=" - (%current-target-system))) - '())) - #:out-of-source? #f ; for tests - ;; There are too many unclear test failures. - #:tests? (not (or (target-riscv64?) - (%current-target-system))) - #:phases - #~(modify-phases %standard-phases - (add-after 'configure 'set-cache-dir - (lambda _ - ;; Set cache dir, otherwise Zig looks for `$HOME/.cache'. - (setenv "ZIG_GLOBAL_CACHE_DIR" - (string-append (getcwd) "/zig-cache")))) - #$@(if (target-riscv64?) - ;; It is unclear why all these tests fail to build. - `((add-after 'unpack 'adjust-tests - (lambda _ - (substitute* "build.zig" - ((".*addRuntimeSafetyTests.*") "") - ((".*addRunTranslatedCTests.*") "")) - (substitute* "test/standalone.zig" - ;; These tests fail to build on riscv64-linux. - ;; They both contain 'exe.linkSystemLibrary("c");' - ((".*shared_library.*") "") - ((".*mix_o_files.*") "") - ;; ld.lld: error: undefined symbol: __tls_get_addr - ;; Is this symbol x86 only in glibc? - ((".*link_static_lib_as_system_lib.*") ""))))) - '()) - (delete 'check) - (add-after 'install 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke (string-append #$output "/bin/zig") - ;; Testing the standard library takes >7.5GB RAM, and - ;; will fail if it is OOM-killed. The 'test-toolchain' - ;; target skips standard library and doc tests. - "build" "test-toolchain" - ;; Stage 2 is experimental, not what we run with `zig', - - "-Dskip-stage2-tests" - ;; Non-native tests try to link and execute non-native - ;; binaries. - "-Dskip-non-native"))))))))) + (modify-inputs (package-native-inputs zig-0.9) + (replace "llvm" llvm-15))))) (define-public zig zig-0.10)