diff options
Diffstat (limited to 'pkgs/development/compilers/zig/0.13')
-rw-r--r-- | pkgs/development/compilers/zig/0.13/default.nix | 105 | ||||
-rw-r--r-- | pkgs/development/compilers/zig/0.13/hook.nix | 32 | ||||
-rw-r--r-- | pkgs/development/compilers/zig/0.13/setup-hook.sh | 70 |
3 files changed, 0 insertions, 207 deletions
diff --git a/pkgs/development/compilers/zig/0.13/default.nix b/pkgs/development/compilers/zig/0.13/default.nix deleted file mode 100644 index bdc01ba47f9f..000000000000 --- a/pkgs/development/compilers/zig/0.13/default.nix +++ /dev/null @@ -1,105 +0,0 @@ -{ - lib, - callPackage, - cmake, - coreutils, - fetchFromGitHub, - libxml2, - llvmPackages, - stdenv, - testers, - zlib, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "zig"; - version = "0.13.0"; - - src = fetchFromGitHub { - owner = "ziglang"; - repo = "zig"; - rev = finalAttrs.version; - hash = "sha256-5qSiTq+UWGOwjDVZMIrAt2cDKHkyNPBSAEjpRQUByFM="; - }; - - nativeBuildInputs = [ - cmake - (lib.getDev llvmPackages.llvm) - ]; - - buildInputs = - [ - libxml2 - zlib - ] - ++ (with llvmPackages; [ - libclang - lld - llvm - ]); - - outputs = [ - "out" - "doc" - ]; - - cmakeFlags = [ - # file RPATH_CHANGE could not write new RPATH - (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) - # ensure determinism in the compiler build - (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") - # always link against static build of LLVM - (lib.cmakeBool "ZIG_STATIC_LLVM" true) - ]; - - env.ZIG_GLOBAL_CACHE_DIR = "$TMPDIR/zig-cache"; - - doInstallCheck = true; - - # strictDeps breaks zig when clang is being used. - # https://github.com/NixOS/nixpkgs/issues/317055#issuecomment-2148438395 - strictDeps = !stdenv.cc.isClang; - - # Zig's build looks at /usr/bin/env to find dynamic linking info. This doesn't - # work in Nix's sandbox. Use env from our coreutils instead. - postPatch = '' - substituteInPlace lib/std/zig/system.zig \ - --replace "/usr/bin/env" "${lib.getExe' coreutils "env"}" - ''; - - postBuild = '' - stage3/bin/zig build langref - ''; - - postInstall = '' - install -Dm444 ../zig-out/doc/langref.html -t $doc/share/doc/zig-${finalAttrs.version}/html - ''; - - installCheckPhase = '' - runHook preInstallCheck - - $out/bin/zig test --cache-dir "$TMPDIR/zig-test-cache" -I $src/test $src/test/behavior.zig - - runHook postInstallCheck - ''; - - passthru = { - hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; }; - tests = { - version = testers.testVersion { - package = finalAttrs.finalPackage; - command = "zig version"; - }; - }; - }; - - meta = { - description = "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software"; - changelog = "https://ziglang.org/download/${finalAttrs.version}/release-notes.html"; - homepage = "https://ziglang.org/"; - license = lib.licenses.mit; - mainProgram = "zig"; - maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; - platforms = lib.platforms.unix; - }; -}) diff --git a/pkgs/development/compilers/zig/0.13/hook.nix b/pkgs/development/compilers/zig/0.13/hook.nix deleted file mode 100644 index a56b1a21e961..000000000000 --- a/pkgs/development/compilers/zig/0.13/hook.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - lib, - makeSetupHook, - zig, -}: - -makeSetupHook { - name = "zig-hook"; - - propagatedBuildInputs = [ zig ]; - - substitutions = { - # This zig_default_flags below is meant to avoid CPU feature impurity in - # Nixpkgs. However, this flagset is "unstable": it is specifically meant to - # be controlled by the upstream development team - being up to that team - # exposing or not that flags to the outside (especially the package manager - # teams). - zig_default_flags = [ - "-Dcpu=baseline" - "--release=safe" - ]; - }; - - passthru = { - inherit zig; - }; - - meta = { - description = "A setup hook for using the Zig compiler in Nixpkgs"; - inherit (zig.meta) maintainers platforms broken; - }; -} ./setup-hook.sh diff --git a/pkgs/development/compilers/zig/0.13/setup-hook.sh b/pkgs/development/compilers/zig/0.13/setup-hook.sh deleted file mode 100644 index 689ebec8a307..000000000000 --- a/pkgs/development/compilers/zig/0.13/setup-hook.sh +++ /dev/null @@ -1,70 +0,0 @@ -# shellcheck shell=bash disable=SC2154,SC2086 - -readonly zigDefaultFlagsArray=(@zig_default_flags@) - -function zigSetGlobalCacheDir { - ZIG_GLOBAL_CACHE_DIR=$(mktemp -d) - export ZIG_GLOBAL_CACHE_DIR -} - -function zigBuildPhase { - runHook preBuild - - local flagsArray=( - "${zigDefaultFlagsArray[@]}" - $zigBuildFlags "${zigBuildFlagsArray[@]}" - ) - - echoCmd 'zig build flags' "${flagsArray[@]}" - zig build "${flagsArray[@]}" - - runHook postBuild -} - -function zigCheckPhase { - runHook preCheck - - local flagsArray=( - "${zigDefaultFlagsArray[@]}" - $zigCheckFlags "${zigCheckFlagsArray[@]}" - ) - - echoCmd 'zig check flags' "${flagsArray[@]}" - zig build test "${flagsArray[@]}" - - runHook postCheck -} - -function zigInstallPhase { - runHook preInstall - - local flagsArray=( - "${zigDefaultFlagsArray[@]}" - $zigBuildFlags "${zigBuildFlagsArray[@]}" - $zigInstallFlags "${zigInstallFlagsArray[@]}" - ) - - if [ -z "${dontAddPrefix-}" ]; then - # Zig does not recognize `--prefix=/dir/`, only `--prefix /dir/` - flagsArray+=("${prefixKey:---prefix}" "$prefix") - fi - - echoCmd 'zig install flags' "${flagsArray[@]}" - zig build install "${flagsArray[@]}" - - runHook postInstall -} - -addEnvHooks "$targetOffset" zigSetGlobalCacheDir - -if [ -z "${dontUseZigBuild-}" ] && [ -z "${buildPhase-}" ]; then - buildPhase=zigBuildPhase -fi - -if [ -z "${dontUseZigCheck-}" ] && [ -z "${checkPhase-}" ]; then - checkPhase=zigCheckPhase -fi - -if [ -z "${dontUseZigInstall-}" ] && [ -z "${installPhase-}" ]; then - installPhase=zigInstallPhase -fi |