1{ stdenv, fetchFromGitHub, cmake, llvmPackages }:
2
3stdenv.mkDerivation rec {
4 version = "0.1.1";
5 name = "zig-${version}";
6
7 src = fetchFromGitHub {
8 owner = "zig-lang";
9 repo = "zig";
10 rev = "${version}";
11 sha256 = "01yqjyi25f99bfmxxwyh45k7j84z0zg7n9jl8gg0draf96mzdh06";
12 };
13
14 buildInputs = [ cmake llvmPackages.clang-unwrapped llvmPackages.llvm ];
15
16 cmakeFlags = [
17 "-DZIG_LIBC_INCLUDE_DIR=${stdenv.cc.libc_dev}/include"
18 "-DZIG_LIBC_LIB_DIR=${stdenv.cc.libc}/lib"
19 "-DCMAKE_BUILD_TYPE=Release"
20 "-DZIG_EACH_LIB_RPATH=On"
21 ];
22
23 preConfigure = ''
24 cmakeFlags="$cmakeFlags -DZIG_LIBC_STATIC_LIB_DIR=$(dirname $(cc -print-file-name=crtbegin.o)) -DZIG_DYNAMIC_LINKER=$(cc -print-file-name=ld-linux-x86-64.so.2)"
25 '';
26
27 meta = with stdenv.lib; {
28 description = "Programming languaged designed for robustness, optimality, and clarity";
29 homepage = http://ziglang.org/;
30 license = licenses.mit;
31 platforms = platforms.unix;
32 maintainers = [ maintainers.andrewrk ];
33 };
34}