Skip to content

Commit

Permalink
llvm*: Remove outputSpecified workaround where possible
Browse files Browse the repository at this point in the history
The effect of `.out // { outputSpecified = false; }` in these cases
is to select the default output explicitly, but then make the
selection implicit until `overrideAttrs` is called. Previously
`overrideAttrs` would not preserve output selection, masking the
apparently unnecessary behavior of this workaround.

For `libllvm-polly`, this logic does not apply, as it does not
select the default output.

The `outputSpecified` workaround was introduced in
#122554

and was perhaps rushed because of a release deadline, and expected
delays from mass rebuilds.

The change in `overrideAttrs` behavior was added in
5b2f597 / #211685

and the problem was discovered in #218537,
which may contain further information.
  • Loading branch information
roberth authored and alyssais committed Feb 28, 2023
1 parent ce07d44 commit 359a46e
Show file tree
Hide file tree
Showing 12 changed files with 24 additions and 24 deletions.
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/10/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -65,13 +65,13 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

# disabled until recommonmark supports sphinx 3
#Llvm-manpages = lowPrio (tools.libllvm.override {
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/11/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -80,7 +80,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

clang-polly-unwrapped = callPackage ./clang {
inherit llvm_meta;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/12/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,13 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

# disabled until recommonmark supports sphinx 3
#Llvm-manpages = lowPrio (tools.libllvm.override {
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/13/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,13 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/14/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,13 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/15/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -119,13 +119,13 @@ in let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/5/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -54,7 +54,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/6/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -54,7 +54,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/7/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -78,7 +78,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

clang-polly-unwrapped = callPackage ./clang {
inherit llvm_meta;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/8/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -78,7 +78,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

clang-polly-unwrapped = callPackage ./clang {
inherit llvm_meta;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/9/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libllvm-polly = callPackage ./llvm {
inherit llvm_meta;
Expand All @@ -78,7 +78,7 @@ let
inherit clang-tools-extra_src llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

clang-polly-unwrapped = callPackage ./clang {
inherit llvm_meta;
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/llvm/git/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -69,13 +69,13 @@ let

# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm.out // { outputSpecified = false; };
llvm = tools.libllvm;

libclang = callPackage ./clang {
inherit llvm_meta;
};

clang-unwrapped = tools.libclang.out // { outputSpecified = false; };
clang-unwrapped = tools.libclang;

llvm-manpages = lowPrio (tools.libllvm.override {
enableManpages = true;
Expand Down

0 comments on commit 359a46e

Please sign in to comment.