Skip to content

Commit

Permalink
nix: boost 1.81 C++17 detection seems to be broken on Clang 16
Browse files Browse the repository at this point in the history
std::{unary,binary}_function is removed in C++17, but boost still
tries to use it:

  vectorscan> In file included from include/boost/multi_array/multi_array_ref.hpp:32:
  868
  vectorscan> include/boost/functional.hpp:45:24: error: no member named 'unary_function' in namespace 'std'; did you mean '__unary_function'?
  869
  vectorscan>             using std::unary_function;
  870
  vectorscan>                   ~~~~~^
  • Loading branch information
vlaci committed Dec 13, 2023
1 parent f010f37 commit 97ab44a
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
python3
] ++ lib.optional stdenv.isDarwin libiconv
++ lib.optional (system == "x86_64-linux") hyperscan
++ lib.optional (system != "x86_64-linux") vectorscan;
++ lib.optional (system != "x86_64-linux") (vectorscan.override { boost = boost183; });

rust-toolchain = fenix.packages.${system}.complete.toolchain;
rust-toolchain-llvm-tools = fenix.packages.${system}.complete.withComponents [
Expand Down Expand Up @@ -147,7 +147,7 @@
] ++ lib.optional stdenv.isDarwin libiconv
++ lib.optional vendor boost
++ lib.optional (!vendor && system == "x86_64-linux") hyperscan
++ lib.optional (!vendor && system != "x86_64-linux") vectorscan;
++ lib.optional (!vendor && system != "x86_64-linux") (vectorscan.override { boost = boost183; });

nativeBuildInputs = mkNativeBuildInputs {
inherit rustPlatform;
Expand Down

0 comments on commit 97ab44a

Please sign in to comment.