From 99717c1644e08b9d1da0536870fd989e954b3013 Mon Sep 17 00:00:00 2001 From: Angus Trau Date: Tue, 27 Jul 2021 20:56:27 +1000 Subject: [PATCH] aften: apple silicon support --- pkgs/development/libraries/aften/default.nix | 13 +++++++--- .../libraries/aften/simd-fallback.patch | 25 +++++++++++++++++++ 2 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 pkgs/development/libraries/aften/simd-fallback.patch diff --git a/pkgs/development/libraries/aften/default.nix b/pkgs/development/libraries/aften/default.nix index 1ae5ffb17ad3..488c5b6e729a 100644 --- a/pkgs/development/libraries/aften/default.nix +++ b/pkgs/development/libraries/aften/default.nix @@ -8,14 +8,21 @@ stdenv.mkDerivation rec { sha256 = "02hc5x9vkgng1v9bzvza9985ifrjd7fjr7nlpvazp4mv6dr89k47"; }; + patches = [ + # Add fallback for missing SIMD functions on ARM + # Source https://github.com/Homebrew/homebrew-core/blob/cad412c7fb4b64925f821fcc9ac5f16a2c40f32d/Formula/aften.rb + ./simd-fallback.patch + ]; + nativeBuildInputs = [ cmake ]; cmakeFlags = [ "-DSHARED=ON" ]; - meta = { + meta = with lib; { description = "An audio encoder which generates compressed audio streams based on ATSC A/52 specification"; homepage = "http://aften.sourceforge.net/"; - license = lib.licenses.lgpl2; - platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; + license = licenses.lgpl21Only; + platforms = platforms.unix; + maintainers = with maintainers; [ angustrau ]; }; } diff --git a/pkgs/development/libraries/aften/simd-fallback.patch b/pkgs/development/libraries/aften/simd-fallback.patch new file mode 100644 index 000000000000..cdc961a7f5df --- /dev/null +++ b/pkgs/development/libraries/aften/simd-fallback.patch @@ -0,0 +1,25 @@ +From dca9c03930d669233258c114e914a01f7c0aeb05 Mon Sep 17 00:00:00 2001 +From: jbr79 +Date: Wed, 24 Sep 2008 22:02:59 +0000 +Subject: [PATCH] add fallback function for apply_simd_restrictions() on + non-x86/ppc + +git-svn-id: https://aften.svn.sourceforge.net/svnroot/aften@766 ef0d8562-5c19-0410-972e-841db63a069c +--- + libaften/cpu_caps.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libaften/cpu_caps.h b/libaften/cpu_caps.h +index b7c6159..4db11f7 100644 +--- a/libaften/cpu_caps.h ++++ b/libaften/cpu_caps.h +@@ -26,6 +26,7 @@ + #include "ppc_cpu_caps.h" + #else + static inline void cpu_caps_detect(void){} ++static inline void apply_simd_restrictions(AftenSimdInstructions *simd_instructions){} + #endif + + #endif /* CPU_CAPS_H */ +-- +2.24.3 (Apple Git-128) \ No newline at end of file