From a49eb940a293f5ff3660d422ce1de00c41518338 Mon Sep 17 00:00:00 2001 From: Anderson Torres Date: Thu, 7 Sep 2023 20:11:12 -0300 Subject: [PATCH] zig: reword setup hook - Move the huge comment from setup-hook.sh to hook.nix - Prefix zig in the echoCmd calls --- pkgs/development/compilers/zig/hook.nix | 20 +++++++++++++++ pkgs/development/compilers/zig/setup-hook.sh | 26 +++----------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/pkgs/development/compilers/zig/hook.nix b/pkgs/development/compilers/zig/hook.nix index 788c432591ee..0c099a4c0d11 100644 --- a/pkgs/development/compilers/zig/hook.nix +++ b/pkgs/development/compilers/zig/hook.nix @@ -9,6 +9,26 @@ makeSetupHook { 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). + + # Because of this hurdle, @andrewrk from Zig Software Foundation proposed + # some solutions for this issue. Hopefully they will be implemented in + # future releases of Zig. When this happens, this flagset should be + # revisited accordingly. + + # Below are some useful links describing the discovery process of this 'bug' + # in Nixpkgs: + + # https://github.com/NixOS/nixpkgs/issues/169461 + # https://github.com/NixOS/nixpkgs/issues/185644 + # https://github.com/NixOS/nixpkgs/pull/197046 + # https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 + # https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 + zig_default_flags = let releaseType = diff --git a/pkgs/development/compilers/zig/setup-hook.sh b/pkgs/development/compilers/zig/setup-hook.sh index f84a02a3268c..689ebec8a307 100644 --- a/pkgs/development/compilers/zig/setup-hook.sh +++ b/pkgs/development/compilers/zig/setup-hook.sh @@ -1,25 +1,5 @@ # shellcheck shell=bash disable=SC2154,SC2086 -# This readonly zigDefaultBuildFlagsArray 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). - -# Because of this hurdle, @andrewrk from Zig Software Foundation proposed some -# solutions for this issue. Hopefully they will be implemented in future -# releases of Zig. When this happens, this flagset should be revisited -# accordingly. - -# Below are some useful links describing the discovery process of this 'bug' in -# Nixpkgs: - -# https://github.com/NixOS/nixpkgs/issues/169461 -# https://github.com/NixOS/nixpkgs/issues/185644 -# https://github.com/NixOS/nixpkgs/pull/197046 -# https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 -# https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 - readonly zigDefaultFlagsArray=(@zig_default_flags@) function zigSetGlobalCacheDir { @@ -35,7 +15,7 @@ function zigBuildPhase { $zigBuildFlags "${zigBuildFlagsArray[@]}" ) - echoCmd 'build flags' "${flagsArray[@]}" + echoCmd 'zig build flags' "${flagsArray[@]}" zig build "${flagsArray[@]}" runHook postBuild @@ -49,7 +29,7 @@ function zigCheckPhase { $zigCheckFlags "${zigCheckFlagsArray[@]}" ) - echoCmd 'check flags' "${flagsArray[@]}" + echoCmd 'zig check flags' "${flagsArray[@]}" zig build test "${flagsArray[@]}" runHook postCheck @@ -69,7 +49,7 @@ function zigInstallPhase { flagsArray+=("${prefixKey:---prefix}" "$prefix") fi - echoCmd 'install flags' "${flagsArray[@]}" + echoCmd 'zig install flags' "${flagsArray[@]}" zig build install "${flagsArray[@]}" runHook postInstall