From abcb25bd8df9bb53af359392ac7949533ddb85b4 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 14:46:13 -0500 Subject: [PATCH 01/18] aerospike: Disables build on aarch64 The issue with its inclusion in the manual has been side-stepped by matching on the platforms in supports. --- nixos/modules/services/databases/aerospike.nix | 1 + pkgs/servers/nosql/aerospike/default.nix | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/databases/aerospike.nix b/nixos/modules/services/databases/aerospike.nix index 5f33164998be..4b905f90529d 100644 --- a/nixos/modules/services/databases/aerospike.nix +++ b/nixos/modules/services/databases/aerospike.nix @@ -43,6 +43,7 @@ in package = mkOption { default = pkgs.aerospike; + defaultText = "pkgs.aerospike"; type = types.package; description = "Which Aerospike derivation to use"; }; diff --git a/pkgs/servers/nosql/aerospike/default.nix b/pkgs/servers/nosql/aerospike/default.nix index 124daa4a5ccb..c5290709b625 100644 --- a/pkgs/servers/nosql/aerospike/default.nix +++ b/pkgs/servers/nosql/aerospike/default.nix @@ -30,8 +30,7 @@ stdenv.mkDerivation rec { description = "Flash-optimized, in-memory, NoSQL database"; homepage = http://aerospike.com/; license = licenses.agpl3; - #platforms = [ "x86_64-linux" ]; # breaks eval of nixos manual for aarch64 - platforms = platforms.linux; + platforms = [ "x86_64-linux" ]; maintainers = with maintainers; [ kalbasit ]; }; } From bb27520fa809e36b9ee8eb4f7060a34ddb1f025e Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 15:03:35 -0500 Subject: [PATCH 02/18] aften: Disables build on aarch64-linux It looks like it would be a trivial fix with `-Wno-shift-negative-value`, but in the end it fails with: ``` [100%] Linking C executable aften libaften_static.a(a52enc.o): In function `aften_encode_init': a52enc.c:(.text+0x303c): undefined reference to `apply_simd_restrictions' collect2: error: ld returned 1 exit status ``` So it looks like it's not simply a warning issue. --- pkgs/development/libraries/aften/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/aften/default.nix b/pkgs/development/libraries/aften/default.nix index fb16c71fd195..22e91ee61d7a 100644 --- a/pkgs/development/libraries/aften/default.nix +++ b/pkgs/development/libraries/aften/default.nix @@ -16,6 +16,6 @@ stdenv.mkDerivation rec { description = "An audio encoder which generates compressed audio streams based on ATSC A/52 specification"; homepage = "http://aften.sourceforge.net/"; license = stdenv.lib.licenses.lgpl2; - platforms = stdenv.lib.platforms.unix; + platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ]; }; } From 45db900c3c710aa99e71decd2dd12d4c818b536c Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 16:29:01 -0500 Subject: [PATCH 03/18] ams-lv2: Disables on aarch64-linux --- pkgs/applications/audio/ams-lv2/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/audio/ams-lv2/default.nix b/pkgs/applications/audio/ams-lv2/default.nix index 3475f62dcbb8..7383623a5ff1 100644 --- a/pkgs/applications/audio/ams-lv2/default.nix +++ b/pkgs/applications/audio/ams-lv2/default.nix @@ -21,5 +21,7 @@ stdenv.mkDerivation rec { license = licenses.gpl3; maintainers = [ maintainers.goibhniu ]; platforms = platforms.linux; + # Build uses `-msse` and `-mfpmath=sse` + badPlatforms = [ "aarch64-linux" ]; }; } From 01e78db6b12a33767c577d150c21f2696cbc007b Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 16:39:52 -0500 Subject: [PATCH 04/18] angelscript_2_22: Disables build on aarch64-linux. --- pkgs/development/interpreters/angelscript/2.22.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/interpreters/angelscript/2.22.nix b/pkgs/development/interpreters/angelscript/2.22.nix index c9097bec5dc8..0449572da024 100644 --- a/pkgs/development/interpreters/angelscript/2.22.nix +++ b/pkgs/development/interpreters/angelscript/2.22.nix @@ -38,6 +38,7 @@ stdenv.mkDerivation { license = stdenv.lib.licenses.zlib ; maintainers = [stdenv.lib.maintainers.raskin]; platforms = stdenv.lib.platforms.linux; + badPlatforms = [ "aarch64-linux" ]; downloadPage = "http://www.angelcode.com/angelscript/downloads.html"; homepage="http://www.angelcode.com/angelscript/"; }; From 8a115d5de501261c7b8aedc679f15b111487dec6 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 17:04:38 -0500 Subject: [PATCH 05/18] gsl_1: Disables build on aarch64-linux * https://hydra.nixos.org/build/84910540 ``` Making check in eigen make[1]: Entering directory '/build/gsl-1.16/eigen' make test make[2]: Entering directory '/build/gsl-1.16/eigen' gcc -DHAVE_CONFIG_H -I. -I.. -I.. -g -O2 -c test.c /nix/store/bsb6596kk4fp20hyl9yl55xwv1ax4b6s-bash-4.4-p23/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -o test test.o libgsleigen.la ../test/libgsltest.la ../linalg/libgsllinalg.la ../permutation/libgslpermutation.la ../blas/libgslblas.la ../cblas/libgslcblas.la ../matrix/libgslmatrix.la ../vector/libgslvector.la ../block/libgslblock.la ../complex/libgslcomplex.la ../ieee-utils/libgslieeeutils.la ../sys/libgslsys.la ../err/libgslerr.la ../utils/libutils.la ../rng/libgslrng.la ../sort/libgslsort.la -lm libtool: link: gcc -g -O2 -o .libs/test test.o ./.libs/libgsleigen.a ../test/.libs/libgsltest.a ../linalg/.libs/libgsllinalg.a ../permutation/.libs/libgslpermutation.a ../blas/.libs/libgslblas.a ../cblas/.libs/libgslcblas.so ../matrix/.libs/libgslmatrix.a ../vector/.libs/libgslvector.a ../block/.libs/libgslblock.a ../complex/.libs/libgslcomplex.a ../ieee-utils/.libs/libgslieeeutils.a ../sys/.libs/libgslsys.a ../err/.libs/libgslerr.a ../utils/.libs/libutils.a ../rng/.libs/libgslrng.a ../sort/.libs/libgslsort.a -lm -Wl,-rpath -Wl,/nix/store/rz7sjaxwm3qf6nk9kk90v1qf81y1s62v-gsl-1.16/lib make[2]: Leaving directory '/build/gsl-1.16/eigen' make check-TESTS make[2]: Entering directory '/build/gsl-1.16/eigen' make[3]: Entering directory '/build/gsl-1.16/eigen' FAIL: test make[4]: Entering directory '/build/gsl-1.16/eigen' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/build/gsl-1.16/eigen' ==================================== gsl 1.16: eigen/test-suite.log ==================================== .. contents:: :depth: 2 FAIL: test ========== FAIL: herm random, normalized(1), unsorted (0.999999999999999112 observed vs 1 expected) [117761] FAIL: herm random, normalized(2), val/asc (0.999999999999999112 observed vs 1 expected) [117789] FAIL: herm random, normalized(0), val/desc (0.999999999999999112 observed vs 1 expected) [117811] FAIL: herm random, normalized(1), abs/asc (0.999999999999999112 observed vs 1 expected) [117836] FAIL: herm random, normalized(1), abs/desc (0.999999999999999112 observed vs 1 expected) [117860] ``` --- pkgs/development/libraries/gsl/gsl-1_16.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/gsl/gsl-1_16.nix b/pkgs/development/libraries/gsl/gsl-1_16.nix index f569d9c3ea12..69fe1b0db554 100644 --- a/pkgs/development/libraries/gsl/gsl-1_16.nix +++ b/pkgs/development/libraries/gsl/gsl-1_16.nix @@ -36,5 +36,7 @@ stdenv.mkDerivation rec { extensive test suite. ''; platforms = stdenv.lib.platforms.unix; + # Failing "eigen" tests on aarch64. + badPlatforms = [ "aarch64-linux" ]; }; } From fa4a6171da7e984bce3510054c2e4044cdd0c660 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 17:07:59 -0500 Subject: [PATCH 06/18] artyFX: Disables build on aarch64-linux --- pkgs/applications/audio/artyFX/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/audio/artyFX/default.nix b/pkgs/applications/audio/artyFX/default.nix index 9a9095d2fc12..91a0a1f140c2 100644 --- a/pkgs/applications/audio/artyFX/default.nix +++ b/pkgs/applications/audio/artyFX/default.nix @@ -20,5 +20,7 @@ stdenv.mkDerivation rec { license = licenses.gpl2; maintainers = [ maintainers.magnetophon ]; platforms = platforms.linux; + # Build uses `-msse` and `-mfpmath=sse` + badPlatforms = [ "aarch64-linux" ]; }; } From 516f4366144ad89b505ec8a01f8e2c7e0b51dc45 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 17:32:05 -0500 Subject: [PATCH 07/18] glucose: Disable build on aarch64-linux --- pkgs/applications/science/logic/glucose/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/science/logic/glucose/default.nix b/pkgs/applications/science/logic/glucose/default.nix index a0035f965392..bc8d372ce42c 100644 --- a/pkgs/applications/science/logic/glucose/default.nix +++ b/pkgs/applications/science/logic/glucose/default.nix @@ -23,5 +23,7 @@ stdenv.mkDerivation rec { license = licenses.mit; platforms = platforms.unix; maintainers = with maintainers; [ gebner ]; + # Build uses _FPU_EXTENDED macro + badPlatforms = [ "aarch64-linux" ]; }; } From 7aabdea1ca24f509a88de4558f4b068cebead3f4 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 17:32:14 -0500 Subject: [PATCH 08/18] aspino: Disable build on aarch64-linux This is due to glucose not building. --- pkgs/applications/science/logic/aspino/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/science/logic/aspino/default.nix b/pkgs/applications/science/logic/aspino/default.nix index d7a5e7b4c83f..bf8d3cf03b83 100644 --- a/pkgs/applications/science/logic/aspino/default.nix +++ b/pkgs/applications/science/logic/aspino/default.nix @@ -44,5 +44,7 @@ stdenv.mkDerivation rec { platforms = platforms.unix; license = licenses.asl20; homepage = http://alviano.net/software/maxino/; + # See pkgs/applications/science/logic/glucose/default.nix + badPlatforms = [ "aarch64-linux" ]; }; } From 5e1dfd30253f7cd05607fad66691f9caae792d95 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 18:03:07 -0500 Subject: [PATCH 09/18] avy: Disable build on aarch64-linux --- pkgs/applications/science/logic/avy/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/applications/science/logic/avy/default.nix b/pkgs/applications/science/logic/avy/default.nix index 218006e15d5c..6c2d2f0a062f 100644 --- a/pkgs/applications/science/logic/avy/default.nix +++ b/pkgs/applications/science/logic/avy/default.nix @@ -46,5 +46,8 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.mit; maintainers = with stdenv.lib.maintainers; [ thoughtpolice ]; platforms = stdenv.lib.platforms.linux; + # See pkgs/applications/science/logic/glucose/default.nix + # (The error is different due to glucose-fenv.patch, but the same) + badPlatforms = [ "aarch64-linux" ]; }; } From 448302d8e99a05560c2f1ca4857a1dddb8a2d00d Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 18:43:46 -0500 Subject: [PATCH 10/18] b2sum: Disable for aarch64-linux --- pkgs/tools/security/b2sum/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/security/b2sum/default.nix b/pkgs/tools/security/b2sum/default.nix index 1679b7fddd07..f9d2855e739f 100644 --- a/pkgs/tools/security/b2sum/default.nix +++ b/pkgs/tools/security/b2sum/default.nix @@ -23,6 +23,7 @@ stdenv.mkDerivation rec { homepage = "https://blake2.net"; license = with licenses; [ asl20 cc0 openssl ]; maintainers = with maintainers; [ kirelagin ]; - platforms = platforms.all; + # "This code requires at least SSE2." + platforms = with platforms; [ "x86_64-linux" "i686-linux" ] ++ darwin; }; } From 12fabbdb1be3861184f3f8590e3b9adafaf3b650 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 18:47:36 -0500 Subject: [PATCH 11/18] beignet: Disables on aarch64-linux --- pkgs/development/libraries/beignet/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/beignet/default.nix b/pkgs/development/libraries/beignet/default.nix index 02c67d7dbf8b..ba6fc7cb541b 100644 --- a/pkgs/development/libraries/beignet/default.nix +++ b/pkgs/development/libraries/beignet/default.nix @@ -107,5 +107,7 @@ stdenv.mkDerivation rec { license = licenses.lgpl21Plus; maintainers = with maintainers; [ artuuge zimbatm ]; platforms = platforms.linux; + # Requires libdrm_intel + badPlatforms = [ "aarch64-linux" ]; }; } From 38d6719cbc63db6b9346037d282748cc82be672b Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 21:14:12 -0500 Subject: [PATCH 12/18] blastem: Disables build for aarch64-linux. --- pkgs/misc/emulators/blastem/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/misc/emulators/blastem/default.nix b/pkgs/misc/emulators/blastem/default.nix index afc555cb51ea..666f953f6b57 100644 --- a/pkgs/misc/emulators/blastem/default.nix +++ b/pkgs/misc/emulators/blastem/default.nix @@ -44,5 +44,7 @@ stdenv.mkDerivation rec { maintainers = with stdenv.lib.maintainers; [ puffnfresh ]; license = stdenv.lib.licenses.gpl3; platforms = stdenv.lib.platforms.linux; + # Makefile:140: *** aarch64 is not a supported architecture. Stop. + badPlatforms = [ "aarch64-linux" ]; }; } From 3487ff99dacc40d8c9be3563078ab3b2cd296459 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 21:19:27 -0500 Subject: [PATCH 13/18] boost: Fixes disabling for aarch64-linux for <1.59 Between 2b450377bf6e51cce0d831a88e74d5f61811b74d and the current revision, the semantics behind "platforms" changed, and removing the "aarch64-linux" string doesn't work anymore to filter it out. Instead, blacklist the platform using the (comparatively) new badPlatforms. --- pkgs/development/libraries/boost/generic.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix index c79b874ecb69..3e488acee748 100644 --- a/pkgs/development/libraries/boost/generic.nix +++ b/pkgs/development/libraries/boost/generic.nix @@ -111,7 +111,8 @@ stdenv.mkDerivation { description = "Collection of C++ libraries"; license = stdenv.lib.licenses.boost; - platforms = (if versionOlder version "1.59" then remove "aarch64-linux" else id) (platforms.unix ++ platforms.windows); + platforms = (platforms.unix ++ platforms.windows); + badPlatforms = stdenv.lib.optional (versionOlder version "1.59") "aarch64-linux"; maintainers = with maintainers; [ peti wkennington ]; }; From 50189315f2a89011f7a5dedf54da6a57c5ac2eb0 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 21:22:10 -0500 Subject: [PATCH 14/18] bootil: Disable build on aarch64-linux --- pkgs/development/libraries/bootil/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/bootil/default.nix b/pkgs/development/libraries/bootil/default.nix index 0ed223832b6c..3c27281571af 100644 --- a/pkgs/development/libraries/bootil/default.nix +++ b/pkgs/development/libraries/bootil/default.nix @@ -10,6 +10,8 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.free; maintainers = [ stdenv.lib.maintainers.abigailbuccaneer ]; platforms = stdenv.lib.platforms.all; + # Build uses `-msse` and `-mfpmath=sse` + badPlatforms = [ "aarch64-linux" ]; }; src = fetchFromGitHub { From e86b1b9f56d69d692448dff25719b79ac1612362 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 21:28:30 -0500 Subject: [PATCH 15/18] bud: Disable build on aarch64-linux Furthermore, this package needs to either be dropped or updated. The version packaged is old, and the project has been abandoned by upstream. --- pkgs/tools/networking/bud/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/networking/bud/default.nix b/pkgs/tools/networking/bud/default.nix index c0383b7c822f..386642614bc9 100644 --- a/pkgs/tools/networking/bud/default.nix +++ b/pkgs/tools/networking/bud/default.nix @@ -29,6 +29,8 @@ stdenv.mkDerivation rec { description = "A TLS terminating proxy"; license = licenses.mit; platforms = platforms.linux; + # Does not build on aarch64-linux. + badPlatforms = [ "aarch64-linux" ]; maintainers = with maintainers; [ cstrahan ]; }; } From ea20a6898cddf9a3dcb8d0e192ac730b663ddd1f Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 22:36:38 -0500 Subject: [PATCH 16/18] cde: Disable build on aarch64-linux --- pkgs/tools/package-management/cde/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/package-management/cde/default.nix b/pkgs/tools/package-management/cde/default.nix index 17150c75466e..e45906688ada 100644 --- a/pkgs/tools/package-management/cde/default.nix +++ b/pkgs/tools/package-management/cde/default.nix @@ -33,5 +33,7 @@ stdenv.mkDerivation rec { license = licenses.gpl3; maintainers = [ maintainers.rlupton20 ]; platforms = platforms.linux; + # error: architecture aarch64 is not supported by strace + badPlatforms = [ "aarch64-linux" ]; }; } From 71fe654d5fc5d2ca093f68661d1aeb3892507eac Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 22:48:36 -0500 Subject: [PATCH 17/18] chez: Disable on aarch64-linux There is no "arm64" machine, and using "arm32le" does not work. --- pkgs/development/compilers/chez/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/compilers/chez/default.nix b/pkgs/development/compilers/chez/default.nix index 09d68084e775..5b02aed274f8 100644 --- a/pkgs/development/compilers/chez/default.nix +++ b/pkgs/development/compilers/chez/default.nix @@ -83,6 +83,7 @@ stdenv.mkDerivation rec { homepage = https://cisco.github.io/ChezScheme/; license = stdenv.lib.licenses.asl20; platforms = stdenv.lib.platforms.unix; + badPlatforms = [ "aarch64-linux" ]; maintainers = with stdenv.lib.maintainers; [ thoughtpolice ]; }; } From 167076877e0c7be52fceca87f9d1c3d1b37c81da Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 9 Dec 2018 18:25:16 -0500 Subject: [PATCH 18/18] openbabel: Fixes AArch64 build https://github.com/openbabel/openbabel/issues/1689 --- pkgs/development/libraries/openbabel/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/openbabel/default.nix b/pkgs/development/libraries/openbabel/default.nix index bfbf6f1212fb..81754ffad4d2 100644 --- a/pkgs/development/libraries/openbabel/default.nix +++ b/pkgs/development/libraries/openbabel/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, cmake, zlib, libxml2, eigen, python, cairo, pcre, pkgconfig }: +{stdenv, fetchurl, fetchpatch, cmake, zlib, libxml2, eigen, python, cairo, pcre, pkgconfig }: stdenv.mkDerivation rec { name = "openbabel-${version}"; @@ -9,6 +9,14 @@ stdenv.mkDerivation rec { sha256 = "0xm7y859ivq2cp0q08mwshfxm0jq31xkyr4x8s0j6l7khf57yk2r"; }; + patches = [ + # ARM / AArch64 fixes. + (fetchpatch { + url = https://github.com/openbabel/openbabel/commit/ee11c98a655296550710db1207b294f00e168216.patch; + sha256 = "0wjqjrkr4pfirzzicdvlyr591vppydk572ix28jd2sagnfnf566g"; + }) + ]; + # TODO : perl & python bindings; # TODO : wxGTK: I have no time to compile # TODO : separate lib and apps