From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 3D7AD15808E for ; Sat, 30 Apr 2022 08:13:27 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E683CE091B; Sat, 30 Apr 2022 08:13:25 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AD659E091B for ; Sat, 30 Apr 2022 08:13:25 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id BD8AE341703 for ; Sat, 30 Apr 2022 08:13:24 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 17BED43B for ; Sat, 30 Apr 2022 08:13:23 +0000 (UTC) From: "Joonas Niilola" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Joonas Niilola" Message-ID: <1651306400.2647a868c09f98a97fad19e0070a4abab851376c.juippis@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/zig/files/, dev-lang/zig/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/zig/files/zig-9999-stage2-fix.patch dev-lang/zig/metadata.xml dev-lang/zig/zig-9999.ebuild X-VCS-Directories: dev-lang/zig/files/ dev-lang/zig/ X-VCS-Committer: juippis X-VCS-Committer-Name: Joonas Niilola X-VCS-Revision: 2647a868c09f98a97fad19e0070a4abab851376c X-VCS-Branch: master Date: Sat, 30 Apr 2022 08:13:23 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a3916854-6c56-4039-a9b1-123b0eeb5c1d X-Archives-Hash: eb3fa42becfec5064f9e284805b828b0 commit: 2647a868c09f98a97fad19e0070a4abab851376c Author: BratishkaErik getgoogleoff me> AuthorDate: Tue Apr 19 13:44:23 2022 +0000 Commit: Joonas Niilola gentoo org> CommitDate: Sat Apr 30 08:13:20 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2647a868 dev-lang/zig: add stage2 support (on -9999) Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: BratishkaErik getgoogleoff.me> Closes: https://github.com/gentoo/gentoo/pull/25085 Signed-off-by: Joonas Niilola gentoo.org> dev-lang/zig/files/zig-9999-stage2-fix.patch | 12 ++++++++++++ dev-lang/zig/metadata.xml | 3 +++ dev-lang/zig/zig-9999.ebuild | 28 +++++++++++++++++++++++++++- 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/dev-lang/zig/files/zig-9999-stage2-fix.patch b/dev-lang/zig/files/zig-9999-stage2-fix.patch new file mode 100644 index 000000000000..520be382c562 --- /dev/null +++ b/dev-lang/zig/files/zig-9999-stage2-fix.patch @@ -0,0 +1,12 @@ +diff --git a/build.zig b/build.zig +index 4d3cf49..4601935 100644 +--- a/build.zig ++++ b/build.zig +@@ -550,6 +550,7 @@ fn addCmakeCfgOptionsToExe( + else => |e| return e, + }; + exe.linkSystemLibrary("unwind"); ++ exe.linkSystemLibrary("c_nonshared"); + } else if (exe.target.isFreeBSD()) { + try addCxxKnownPath(b, cfg, exe, "libc++.a", null, need_cpp_includes); + exe.linkSystemLibrary("pthread"); diff --git a/dev-lang/zig/metadata.xml b/dev-lang/zig/metadata.xml index 9a74b67c8634..6555f4c1c940 100644 --- a/dev-lang/zig/metadata.xml +++ b/dev-lang/zig/metadata.xml @@ -2,6 +2,9 @@ + + Install stage2 alongside stage1 + ziglang/zig diff --git a/dev-lang/zig/zig-9999.ebuild b/dev-lang/zig/zig-9999.ebuild index a0e3522a22a0..cdac1427ee7e 100644 --- a/dev-lang/zig/zig-9999.ebuild +++ b/dev-lang/zig/zig-9999.ebuild @@ -18,7 +18,7 @@ fi LICENSE="MIT" SLOT="0" -IUSE="test" +IUSE="test +stage2" RESTRICT="!test? ( test )" BUILD_DIR="${S}/build" @@ -47,6 +47,9 @@ llvm_check_deps() { # see https://github.com/ziglang/zig/wiki/Troubleshooting-Build-Issues#high-memory-requirements CHECKREQS_MEMORY="10G" +# see https://github.com/ziglang/zig/issues/11137 +PATCHES=( "${FILESDIR}/${P}-stage2-fix.patch" ) + pkg_setup() { llvm_pkg_setup check-reqs_pkg_setup @@ -61,7 +64,30 @@ src_configure() { cmake_src_configure } +src_compile() { + cmake_src_compile + + if use stage2 ; then + cd "${BUILD_DIR}" || die + ./zig build -p stage2 -Dstatic-llvm=false -Denable-llvm=true || die + fi +} + src_test() { cd "${BUILD_DIR}" || die ./zig build test || die } + +src_install() { + cmake_src_install + + if use stage2 ; then + cd "${BUILD_DIR}" || die + mv ./stage2/bin/zig zig-stage2 || die + dobin zig-stage2 + fi +} + +pkg_postinst() { + use stage2 && elog "You enabled stage2 USE flag, Zig stage1 was installed as /usr/bin/zig, Zig stage2 was installed as /usr/bin/zig-stage2" +}