summaryrefslogtreecommitdiff
path: root/dev-lang/zig/zig-0.8.0.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-07-03 22:39:47 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-07-03 22:39:47 +0100
commit7f0ccc917c7abe6223784c703d86cd14755691fb (patch)
tree8c6793f68896b341e22f33d7e6cef88e481f4a8b /dev-lang/zig/zig-0.8.0.ebuild
parent9aa80713372911cec499b3adb2cd746790920916 (diff)
gentoo resync : 03.07.2021
Diffstat (limited to 'dev-lang/zig/zig-0.8.0.ebuild')
-rw-r--r--dev-lang/zig/zig-0.8.0.ebuild60
1 files changed, 60 insertions, 0 deletions
diff --git a/dev-lang/zig/zig-0.8.0.ebuild b/dev-lang/zig/zig-0.8.0.ebuild
new file mode 100644
index 000000000000..3a6741c72cdc
--- /dev/null
+++ b/dev-lang/zig/zig-0.8.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2019-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake llvm
+
+DESCRIPTION="A robust, optimal, and maintainable programming language"
+HOMEPAGE="https://ziglang.org/"
+LICENSE="MIT"
+SLOT="0"
+IUSE="+experimental test"
+RESTRICT="!test? ( test )"
+
+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"
+fi
+
+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[@]}"
+
+LLVM_MAX_SLOT=12
+
+RDEPEND="
+ sys-devel/clang:${LLVM_MAX_SLOT}
+ >=sys-devel/lld-12.0.0
+ <sys-devel/lld-13.0.0
+ sys-devel/llvm:${LLVM_MAX_SLOT}
+ !experimental? ( sys-devel/llvm:${LLVM_MAX_SLOT}[${LLVM_TARGET_USEDEPS// /,}] )
+"
+DEPEND="${RDEPEND}"
+
+llvm_check_deps() {
+ has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+src_configure() {
+ 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
+}