From 99ba88e825f3ac5196a81bb4ca705155769a36ff Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Mon, 29 Sep 2025 18:18:02 +0200 Subject: [PATCH] x265: Fix SIGILL on older POWER versions --- pkgs/by-name/x2/x265/package.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/x2/x265/package.nix b/pkgs/by-name/x2/x265/package.nix index 54c93e9d7b69..4ac46a5b4bd7 100644 --- a/pkgs/by-name/x2/x265/package.nix +++ b/pkgs/by-name/x2/x265/package.nix @@ -96,6 +96,13 @@ stdenv.mkDerivation rec { (mkFlag vtuneSupport "ENABLE_VTUNE") (mkFlag werrorSupport "WARNINGS_AS_ERRORS") ] + ++ lib.optionals stdenv.hostPlatform.isPower [ + # baseline for everything but ppc64le doesn't have AltiVec + # ppc64le: https://bitbucket.org/multicoreware/x265_git/issues/320/fail-to-build-on-power8-le + (lib.cmakeBool "ENABLE_ALTIVEC" false) + # baseline for everything but ppc64le is pre-POWER8 + (lib.cmakeBool "CPU_POWER8" (stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian)) + ] # Clang does not support the endfunc directive so use GCC. ++ lib.optional ( stdenv.cc.isClang && !stdenv.targetPlatform.isDarwin && !stdenv.targetPlatform.isFreeBSD @@ -113,9 +120,6 @@ stdenv.mkDerivation rec { "-DENABLE_SHARED=OFF" "-DEXPORT_C_API=OFF" ] - ++ lib.optionals stdenv.hostPlatform.isPower [ - "-DENABLE_ALTIVEC=OFF" # https://bitbucket.org/multicoreware/x265_git/issues/320/fail-to-build-on-power8-le - ] ++ lib.optionals isCross [ (mkFlag stdenv.hostPlatform.isAarch32 "CROSS_COMPILE_ARM") (mkFlag stdenv.hostPlatform.isAarch64 "CROSS_COMPILE_ARM64")