diff options
author | Vladimír Čunát <v@cunat.cz> | 2023-02-06 12:43:32 +0100 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2023-02-06 12:43:32 +0100 |
commit | 47f15f5421f5b4258da26650f3b0a444bd9b5789 (patch) | |
tree | 725b1213ecbc767780dbfa8fae21f4c5c6d70400 | |
parent | 4b89fd2c529a535b87d552225c6853e81d67b2a2 (diff) | |
parent | c09e42d337ebd3052840bc630b029ec2a1063074 (diff) |
Merge #214887: python3Packages.torch: fix build with gcc 12
...into staging-next
-rw-r--r-- | pkgs/development/python-modules/torch/default.nix | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/pkgs/development/python-modules/torch/default.nix b/pkgs/development/python-modules/torch/default.nix index c64f36c8df321..f1a8e72a591db 100644 --- a/pkgs/development/python-modules/torch/default.nix +++ b/pkgs/development/python-modules/torch/default.nix @@ -111,6 +111,15 @@ in buildPythonPackage rec { # base is 10.12. Until we upgrade, we can fall back on the older # pthread support. ./pthreadpool-disable-gcd.diff + ] ++ [ + # PyTorch fails to build on gcc 12 due to gloo + # https://github.com/pytorch/pytorch/issues/77614 + (fetchpatch { + url = "https://github.com/facebookincubator/gloo/commit/4a5e339b764261d20fc409071dc7a8b8989aa195.patch"; + stripLen = 1; + extraPrefix = "third_party/gloo/"; + hash = "sha256-UxR1r7F6g76BWj3GBIrSy5t+YZDCWy6mMddwx+hon5w="; + }) ]; postPatch = lib.optionalString rocmSupport '' @@ -204,7 +213,11 @@ in buildPythonPackage rec { # # Also of interest: pytorch ignores CXXFLAGS uses CFLAGS for both C and C++: # https://github.com/pytorch/pytorch/blob/v1.11.0/setup.py#L17 - NIX_CFLAGS_COMPILE = lib.optionals (blas.implementation == "mkl") [ "-Wno-error=array-bounds" ]; + NIX_CFLAGS_COMPILE = lib.optionals (blas.implementation == "mkl") [ "-Wno-error=array-bounds" ] + # Suppress gcc regression: avx512 math function raises uninitialized variable warning + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105593 + # See also: Fails to compile with GCC 12.1.0 https://github.com/pytorch/pytorch/issues/77939 + ++ lib.optionals stdenv.cc.isGNU [ "-Wno-error=maybe-uninitialized" "-Wno-error=uninitialized" ]; nativeBuildInputs = [ cmake |