From bbf484bea36864e1fef738d0828b7e4ec5b82d7d Mon Sep 17 00:00:00 2001 From: "Alex Xu (Hello71)" Date: Tue, 7 Jun 2022 14:54:54 -0400 Subject: dev-lang/zig: upgrade to 0.9.1, sync ::gentoo --- dev-lang/zig/Manifest | 2 +- .../zig/files/zig-0.9.1-fix-single-threaded.patch | 13 +++ dev-lang/zig/zig-0.9.0.ebuild | 101 ------------------ dev-lang/zig/zig-0.9.1.ebuild | 115 +++++++++++++++++++++ profiles/package.mask | 3 + 5 files changed, 132 insertions(+), 102 deletions(-) create mode 100644 dev-lang/zig/files/zig-0.9.1-fix-single-threaded.patch delete mode 100644 dev-lang/zig/zig-0.9.0.ebuild create mode 100644 dev-lang/zig/zig-0.9.1.ebuild diff --git a/dev-lang/zig/Manifest b/dev-lang/zig/Manifest index b55846f..daf4475 100644 --- a/dev-lang/zig/Manifest +++ b/dev-lang/zig/Manifest @@ -1 +1 @@ -DIST zig-0.9.0.tar.gz 21994175 BLAKE2B aadef89d5fddc3e802965125625e62140ac37bdac40b29ab8b7652056589c037cbed5d4e46889f335b3c296fb4ae2a7cafd5d064a02d728a8325ad515cdc8c7a SHA512 fef36221e818364b45cf65de210b0a9d535c411a510371a3ab4dfd6f4621c0a16dba786169f115a006966875102acc742abee19a74d83e2bc999ea5b8304b879 +DIST zig-0.9.1.tar.xz 13940828 BLAKE2B 996b0e945f61b01dddbb7c8674a9e2d2d01b93eb48fdfd2c986496330990ffa64cba15f8bd8518b90ef6f514759ba6cc3fd31d6044c5b11b92bf92e3f7f15303 SHA512 0b8a5f9b7e34e4252536f59bc91429f1e76b2bf8e01f024095919f6ecf34db56b5c86c554fbb94bdcb5255394c87f2c87519c8f34c631f53816927ec0882ae2d diff --git a/dev-lang/zig/files/zig-0.9.1-fix-single-threaded.patch b/dev-lang/zig/files/zig-0.9.1-fix-single-threaded.patch new file mode 100644 index 0000000..70f807f --- /dev/null +++ b/dev-lang/zig/files/zig-0.9.1-fix-single-threaded.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 638f39f7e..791477c41 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -787,7 +787,7 @@ else() + set(ZIG1_RELEASE_ARG -OReleaseFast --strip) + endif() + if(ZIG_SINGLE_THREADED) +- set(ZIG1_SINGLE_THREADED_ARG "-fsingle-threaded") ++ set(ZIG1_SINGLE_THREADED_ARG "--single-threaded") + else() + set(ZIG1_SINGLE_THREADED_ARG "") + endif() diff --git a/dev-lang/zig/zig-0.9.0.ebuild b/dev-lang/zig/zig-0.9.0.ebuild deleted file mode 100644 index 76f45f3..0000000 --- a/dev-lang/zig/zig-0.9.0.ebuild +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 2019-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LLVM_MAX_SLOT=13 -inherit cmake llvm - -DESCRIPTION="A robust, optimal, and maintainable programming language" -HOMEPAGE="https://ziglang.org/" -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/ziglang/zig.git" - inherit git-r3 -else - SRC_URI="https://github.com/ziglang/zig/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64" -fi - -LICENSE="MIT" -SLOT="0" -RESTRICT="!test? ( test )" - -BUILD_DIR="${S}/build" - -# According to zig's author, zig builds that do not support all targets are not -# supported by the upstream project. -ALL_LLVM_TARGETS=( - AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430 NVPTX - PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore -) -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) -LLVM_TARGET_USEDEPS="${ALL_LLVM_TARGETS[@]/%/(-)?}" - -IUSE="test ${ALL_LLVM_TARGETS[*]}" - -RDEPEND=" - sys-devel/clang:${LLVM_MAX_SLOT} - >=sys-devel/lld-${LLVM_MAX_SLOT} - .*/.$a => return error.@\"Zig compiled without LLVM $llvm_target\",/" - ) - done - mysedargs+=( - -e "/^fn initializeLLVMTarget(/,/^}/ { - /\.$a => {/,/},$/ { - s/=>.*/=> unreachable,/ - /=>/!d - } - }" - ) - fi - done - sed -i "${mysedargs[@]}" src/codegen/llvm.zig || die - - local mycmakeargs=( - -DZIG_USE_CCACHE=OFF - -DZIG_PREFER_CLANG_CPP_DYLIB=ON - ) - - cmake_src_configure -} - -src_test() { - cd "${BUILD_DIR}" || die - ./zig build test || die -} diff --git a/dev-lang/zig/zig-0.9.1.ebuild b/dev-lang/zig/zig-0.9.1.ebuild new file mode 100644 index 0000000..2227501 --- /dev/null +++ b/dev-lang/zig/zig-0.9.1.ebuild @@ -0,0 +1,115 @@ +# Copyright 2019-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_MAX_SLOT=13 +inherit cmake llvm check-reqs + +DESCRIPTION="A robust, optimal, and maintainable programming language" +HOMEPAGE="https://ziglang.org/" +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/ziglang/zig.git" + inherit git-r3 +else + SRC_URI="https://ziglang.org/download/${PV}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~arm64" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="test +threads" +RESTRICT="!test? ( test )" + +PATCHES=("${FILESDIR}/${P}-fix-single-threaded.patch") + +BUILD_DIR="${S}/build" + +# According to zig's author, zig builds that do not support all targets are not +# supported by the upstream project. +ALL_LLVM_TARGETS=( + AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430 NVPTX + PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore +) +ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) +LLVM_TARGET_USEDEPS="${ALL_LLVM_TARGETS[@]/%/(-)?}" + +IUSE="test threads ${ALL_LLVM_TARGETS[*]}" + +RDEPEND=" + sys-devel/clang:${LLVM_MAX_SLOT} + >=sys-devel/lld-${LLVM_MAX_SLOT} + .*/.$a => return error.@\"Zig compiled without LLVM $llvm_target\",/" + ) + done + mysedargs+=( + -e " + /^fn initializeLLVMTarget(/,/^}/ { + /\.$a => {/,/},$/ { + s/=>.*/=> unreachable,/ + /=>/!d + } + } + " + ) + fi + done + sed -i "${mysedargs[@]}" src/codegen/llvm.zig || die + + local mycmakeargs=( + -DZIG_USE_CCACHE=OFF + -DZIG_PREFER_CLANG_CPP_DYLIB=ON + -DZIG_SINGLE_THREADED="$(usex threads OFF ON)" + ) + + cmake_src_configure +} + +src_test() { + cd "${BUILD_DIR}" || die + ./zig build test || die +} diff --git a/profiles/package.mask b/profiles/package.mask index 704635a..5831605 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -3,3 +3,6 @@ app-text/pdfsizeopt # package works fine but program is buggy sys-fs/ncdu + +# untested +dev-lang/zig -- cgit v1.2.3-54-g00ecf