Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)

treewide: isArm -> isAarch32

Following legacy packing conventions, `isArm` was defined just for
32-bit ARM instruction set. This is confusing to non packagers though,
because Aarch64 is an ARM instruction set.

The official ARM overview for ARMv8[1] is surprisingly not confusing,
given the overall state of affairs for ARM naming conventions, and
offers us a solution. It divides the nomenclature into three levels:

```
ISA: ARMv8 {-A, -R, -M}
/ \
Mode: Aarch32 Aarch64
| / \
Encoding: A64 A32 T32
```

At the top is the overall v8 instruction set archicture. Second are the
two modes, defined by bitwidth but differing in other semantics too, and
buttom are the encodings, (hopefully?) isomorphic if they encode the
same mode.

The 32 bit encodings are mostly backwards compatible with previous
non-Thumb and Thumb encodings, and if so we can pun the mode names to
instead mean "sets of compatable or isomorphic encodings", and then
voilà we have nice names for 32-bit and 64-bit arm instruction sets
which do not use the word ARM so as to not confused either laymen or
experienced ARM packages.

[1]: https://developer.arm.com/products/architecture/a-profile

(cherry picked from commit ba52ae50488de85a9cf60a3a04f1c9ca7122ec74)

+109 -106
+1 -1
lib/systems/doubles.nix
··· 26 27 none = []; 28 29 - arm = filterDoubles predicates.isArm; 30 aarch64 = filterDoubles predicates.isAarch64; 31 x86 = filterDoubles predicates.isx86; 32 i686 = filterDoubles predicates.isi686;
··· 26 27 none = []; 28 29 + arm = filterDoubles predicates.isAarch32; 30 aarch64 = filterDoubles predicates.isAarch64; 31 x86 = filterDoubles predicates.isx86; 32 i686 = filterDoubles predicates.isi686;
+1 -1
lib/systems/for-meta.nix
··· 7 inherit (lib.systems.doubles) all mesaPlatforms; 8 none = []; 9 10 - arm = [ patterns.isArm ]; 11 aarch64 = [ patterns.isAarch64 ]; 12 x86 = [ patterns.isx86 ]; 13 i686 = [ patterns.isi686 ];
··· 7 inherit (lib.systems.doubles) all mesaPlatforms; 8 none = []; 9 10 + arm = [ patterns.isAarch32 ]; 11 aarch64 = [ patterns.isAarch64 ]; 12 x86 = [ patterns.isx86 ]; 13 i686 = [ patterns.isi686 ];
+5 -2
lib/systems/inspect.nix
··· 9 isx86_64 = { cpu = cpuTypes.x86_64; }; 10 isPowerPC = { cpu = cpuTypes.powerpc; }; 11 isx86 = { cpu = { family = "x86"; }; }; 12 - isArm = { cpu = { family = "arm"; }; }; 13 - isAarch64 = { cpu = { family = "aarch64"; }; }; 14 isMips = { cpu = { family = "mips"; }; }; 15 isRiscV = { cpu = { family = "riscv"; }; }; 16 isWasm = { cpu = { family = "wasm"; }; }; ··· 43 [ "x86" "arm" "aarch64" ]; 44 isSeccomputable = map (family: { kernel = kernels.linux; cpu.family = family; }) 45 [ "x86" "arm" "aarch64" "mips" ]; 46 }; 47 48 matchAnyAttrs = patterns:
··· 9 isx86_64 = { cpu = cpuTypes.x86_64; }; 10 isPowerPC = { cpu = cpuTypes.powerpc; }; 11 isx86 = { cpu = { family = "x86"; }; }; 12 + isAarch32 = { cpu = { family = "arm"; bits = 32; }; }; 13 + isAarch64 = { cpu = { family = "arm"; bits = 64; }; }; 14 isMips = { cpu = { family = "mips"; }; }; 15 isRiscV = { cpu = { family = "riscv"; }; }; 16 isWasm = { cpu = { family = "wasm"; }; }; ··· 43 [ "x86" "arm" "aarch64" ]; 44 isSeccomputable = map (family: { kernel = kernels.linux; cpu.family = family; }) 45 [ "x86" "arm" "aarch64" "mips" ]; 46 + 47 + # Deprecated after 18.03 48 + isArm = isAarch32; 49 }; 50 51 matchAnyAttrs = patterns:
+1 -1
lib/systems/parse.nix
··· 72 armv6l = { bits = 32; significantByte = littleEndian; family = "arm"; }; 73 armv7a = { bits = 32; significantByte = littleEndian; family = "arm"; }; 74 armv7l = { bits = 32; significantByte = littleEndian; family = "arm"; }; 75 - aarch64 = { bits = 64; significantByte = littleEndian; family = "aarch64"; }; 76 i686 = { bits = 32; significantByte = littleEndian; family = "x86"; }; 77 x86_64 = { bits = 64; significantByte = littleEndian; family = "x86"; }; 78 mips = { bits = 32; significantByte = bigEndian; family = "mips"; };
··· 72 armv6l = { bits = 32; significantByte = littleEndian; family = "arm"; }; 73 armv7a = { bits = 32; significantByte = littleEndian; family = "arm"; }; 74 armv7l = { bits = 32; significantByte = littleEndian; family = "arm"; }; 75 + aarch64 = { bits = 64; significantByte = littleEndian; family = "arm"; }; 76 i686 = { bits = 32; significantByte = littleEndian; family = "x86"; }; 77 x86_64 = { bits = 64; significantByte = littleEndian; family = "x86"; }; 78 mips = { bits = 32; significantByte = bigEndian; family = "mips"; };
+1 -1
nixos/lib/qemu-flags.nix
··· 9 ]; 10 11 qemuSerialDevice = if pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64 then "ttyS0" 12 - else if pkgs.stdenv.isArm || pkgs.stdenv.isAarch64 then "ttyAMA0" 13 else throw "Unknown QEMU serial device for system '${pkgs.stdenv.system}'"; 14 15 qemuBinary = qemuPkg: {
··· 9 ]; 10 11 qemuSerialDevice = if pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64 then "ttyS0" 12 + else if pkgs.stdenv.isAarch32 || pkgs.stdenv.isAarch64 then "ttyAMA0" 13 else throw "Unknown QEMU serial device for system '${pkgs.stdenv.system}'"; 14 15 qemuBinary = qemuPkg: {
+2 -2
nixos/modules/config/gnu.nix
··· 26 nano zile 27 texinfo # for the stand-alone Info reader 28 ] 29 - ++ stdenv.lib.optional (!stdenv.isArm) grub2; 30 31 32 # GNU GRUB, where available. 33 - boot.loader.grub.enable = !pkgs.stdenv.isArm; 34 boot.loader.grub.version = 2; 35 36 # GNU lsh.
··· 26 nano zile 27 texinfo # for the stand-alone Info reader 28 ] 29 + ++ stdenv.lib.optional (!stdenv.isAarch32) grub2; 30 31 32 # GNU GRUB, where available. 33 + boot.loader.grub.enable = !pkgs.stdenv.isAarch32; 34 boot.loader.grub.version = 2; 35 36 # GNU lsh.
+1 -1
pkgs/applications/audio/sunvox/default.nix
··· 5 arch = 6 if stdenv.isAarch64 7 then "arm64" 8 - else if stdenv.isArm 9 then "arm_armhf_raspberry_pi" 10 else if stdenv.is64bit 11 then "x86_64"
··· 5 arch = 6 if stdenv.isAarch64 7 then "arm64" 8 + else if stdenv.isAarch32 9 then "arm_armhf_raspberry_pi" 10 else if stdenv.is64bit 11 then "x86_64"
+1 -1
pkgs/applications/networking/instant-messengers/toxic/default.nix
··· 18 19 buildInputs = [ 20 libtoxcore libsodium ncurses curl gdk_pixbuf libnotify 21 - ] ++ stdenv.lib.optionals (!stdenv.isArm) [ 22 openal libopus libvpx freealut libqrencode 23 ]; 24 nativeBuildInputs = [ pkgconfig libconfig ];
··· 18 19 buildInputs = [ 20 libtoxcore libsodium ncurses curl gdk_pixbuf libnotify 21 + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ 22 openal libopus libvpx freealut libqrencode 23 ]; 24 nativeBuildInputs = [ pkgconfig libconfig ];
+3 -3
pkgs/applications/virtualization/qemu/default.nix
··· 4 , makeWrapper 5 , attr, libcap, libcap_ng 6 , CoreServices, Cocoa, rez, setfile 7 - , numaSupport ? stdenv.isLinux && !stdenv.isArm, numactl 8 , seccompSupport ? stdenv.isLinux, libseccomp 9 , pulseSupport ? !stdenv.isDarwin, libpulseaudio 10 , sdlSupport ? !stdenv.isDarwin, SDL ··· 26 27 hostCpuTargets = if stdenv.isx86_64 then "i386-softmmu,x86_64-softmmu" 28 else if stdenv.isi686 then "i386-softmmu" 29 - else if stdenv.isArm then "arm-softmmu" 30 else if stdenv.isAarch64 then "aarch64-softmmu" 31 else throw "Don't know how to build a 'hostCpuOnly = true' QEMU"; 32 in ··· 97 postInstall = 98 if stdenv.isx86_64 then ''makeWrapper $out/bin/qemu-system-x86_64 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 99 else if stdenv.isi686 then ''makeWrapper $out/bin/qemu-system-i386 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 100 - else if stdenv.isArm then ''makeWrapper $out/bin/qemu-system-arm $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 101 else if stdenv.isAarch64 then ''makeWrapper $out/bin/qemu-system-aarch64 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 102 else ""; 103
··· 4 , makeWrapper 5 , attr, libcap, libcap_ng 6 , CoreServices, Cocoa, rez, setfile 7 + , numaSupport ? stdenv.isLinux && !stdenv.isAarch32, numactl 8 , seccompSupport ? stdenv.isLinux, libseccomp 9 , pulseSupport ? !stdenv.isDarwin, libpulseaudio 10 , sdlSupport ? !stdenv.isDarwin, SDL ··· 26 27 hostCpuTargets = if stdenv.isx86_64 then "i386-softmmu,x86_64-softmmu" 28 else if stdenv.isi686 then "i386-softmmu" 29 + else if stdenv.isAarch32 then "arm-softmmu" 30 else if stdenv.isAarch64 then "aarch64-softmmu" 31 else throw "Don't know how to build a 'hostCpuOnly = true' QEMU"; 32 in ··· 97 postInstall = 98 if stdenv.isx86_64 then ''makeWrapper $out/bin/qemu-system-x86_64 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 99 else if stdenv.isi686 then ''makeWrapper $out/bin/qemu-system-i386 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 100 + else if stdenv.isAarch32 then ''makeWrapper $out/bin/qemu-system-arm $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 101 else if stdenv.isAarch64 then ''makeWrapper $out/bin/qemu-system-aarch64 $out/bin/qemu-kvm --add-flags "\$([ -e /dev/kvm ] && echo -enable-kvm)"'' 102 else ""; 103
+2 -2
pkgs/build-support/bintools-wrapper/default.nix
··· 55 else if targetPlatform.system == "i686-linux" then "${libc_lib}/lib/ld-linux.so.2" 56 else if targetPlatform.system == "x86_64-linux" then "${libc_lib}/lib/ld-linux-x86-64.so.2" 57 # ARM with a wildcard, which can be "" or "-armhf". 58 - else if (with targetPlatform; isArm && isLinux) then "${libc_lib}/lib/ld-linux*.so.3" 59 else if targetPlatform.system == "aarch64-linux" then "${libc_lib}/lib/ld-linux-aarch64.so.1" 60 else if targetPlatform.system == "powerpc-linux" then "${libc_lib}/lib/ld.so.1" 61 else if targetPlatform.isMips then "${libc_lib}/lib/ld.so.1" ··· 174 sep = optionalString (!targetPlatform.isMips) "-"; 175 arch = 176 /**/ if targetPlatform.isAarch64 then endianPrefix + "aarch64" 177 - else if targetPlatform.isArm then endianPrefix + "arm" 178 else if targetPlatform.isx86_64 then "x86-64" 179 else if targetPlatform.isi686 then "i386" 180 else if targetPlatform.isMips then {
··· 55 else if targetPlatform.system == "i686-linux" then "${libc_lib}/lib/ld-linux.so.2" 56 else if targetPlatform.system == "x86_64-linux" then "${libc_lib}/lib/ld-linux-x86-64.so.2" 57 # ARM with a wildcard, which can be "" or "-armhf". 58 + else if (with targetPlatform; isAarch32 && isLinux) then "${libc_lib}/lib/ld-linux*.so.3" 59 else if targetPlatform.system == "aarch64-linux" then "${libc_lib}/lib/ld-linux-aarch64.so.1" 60 else if targetPlatform.system == "powerpc-linux" then "${libc_lib}/lib/ld.so.1" 61 else if targetPlatform.isMips then "${libc_lib}/lib/ld.so.1" ··· 174 sep = optionalString (!targetPlatform.isMips) "-"; 175 arch = 176 /**/ if targetPlatform.isAarch64 then endianPrefix + "aarch64" 177 + else if targetPlatform.isAarch32 then endianPrefix + "arm" 178 else if targetPlatform.isx86_64 then "x86-64" 179 else if targetPlatform.isi686 then "i386" 180 else if targetPlatform.isMips then {
+1 -1
pkgs/development/compilers/gcc/4.5/default.nix
··· 258 # TODO(@Ericson2314): Always pass "--target" and always prefix. 259 configurePlatforms = 260 # TODO(@Ericson2314): Figure out what's going wrong with Arm 261 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 262 then [] 263 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 264
··· 258 # TODO(@Ericson2314): Always pass "--target" and always prefix. 259 configurePlatforms = 260 # TODO(@Ericson2314): Figure out what's going wrong with Arm 261 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 262 then [] 263 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 264
+1 -1
pkgs/development/compilers/gcc/4.8/default.nix
··· 300 # TODO(@Ericson2314): Always pass "--target" and always prefix. 301 configurePlatforms = 302 # TODO(@Ericson2314): Figure out what's going wrong with Arm 303 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 304 then [] 305 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 306
··· 300 # TODO(@Ericson2314): Always pass "--target" and always prefix. 301 configurePlatforms = 302 # TODO(@Ericson2314): Figure out what's going wrong with Arm 303 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 304 then [] 305 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 306
+1 -1
pkgs/development/compilers/gcc/4.9/default.nix
··· 309 # TODO(@Ericson2314): Always pass "--target" and always prefix. 310 configurePlatforms = 311 # TODO(@Ericson2314): Figure out what's going wrong with Arm 312 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 313 then [] 314 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 315
··· 309 # TODO(@Ericson2314): Always pass "--target" and always prefix. 310 configurePlatforms = 311 # TODO(@Ericson2314): Figure out what's going wrong with Arm 312 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 313 then [] 314 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 315
+1 -1
pkgs/development/compilers/gcc/5/default.nix
··· 329 # TODO(@Ericson2314): Always pass "--target" and always prefix. 330 configurePlatforms = 331 # TODO(@Ericson2314): Figure out what's going wrong with Arm 332 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 333 then [] 334 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 335
··· 329 # TODO(@Ericson2314): Always pass "--target" and always prefix. 330 configurePlatforms = 331 # TODO(@Ericson2314): Figure out what's going wrong with Arm 332 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 333 then [] 334 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 335
+1 -1
pkgs/development/compilers/gcc/6/default.nix
··· 333 # TODO(@Ericson2314): Always pass "--target" and always prefix. 334 configurePlatforms = 335 # TODO(@Ericson2314): Figure out what's going wrong with Arm 336 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 337 then [] 338 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 339
··· 333 # TODO(@Ericson2314): Always pass "--target" and always prefix. 334 configurePlatforms = 335 # TODO(@Ericson2314): Figure out what's going wrong with Arm 336 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 337 then [] 338 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 339
+1 -1
pkgs/development/compilers/gcc/7/default.nix
··· 329 # TODO(@Ericson2314): Always pass "--target" and always prefix. 330 configurePlatforms = 331 # TODO(@Ericson2314): Figure out what's going wrong with Arm 332 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 333 then [] 334 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 335
··· 329 # TODO(@Ericson2314): Always pass "--target" and always prefix. 330 configurePlatforms = 331 # TODO(@Ericson2314): Figure out what's going wrong with Arm 332 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 333 then [] 334 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 335
+1 -1
pkgs/development/compilers/gcc/snapshot/default.nix
··· 301 # TODO(@Ericson2314): Always pass "--target" and always prefix. 302 configurePlatforms = 303 # TODO(@Ericson2314): Figure out what's going wrong with Arm 304 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 305 then [] 306 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 307
··· 301 # TODO(@Ericson2314): Always pass "--target" and always prefix. 302 configurePlatforms = 303 # TODO(@Ericson2314): Figure out what's going wrong with Arm 304 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 305 then [] 306 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 307
+1 -1
pkgs/development/compilers/ghc/7.10.3-binary.nix
··· 43 or (throw "cannot bootstrap GHC on this platform")); 44 45 nativeBuildInputs = [ perl ]; 46 - buildInputs = stdenv.lib.optionals stdenv.targetPlatform.isArm [ llvm_35 ]; 47 48 # Cannot patchelf beforehand due to relative RPATHs that anticipate 49 # the final install location/
··· 43 or (throw "cannot bootstrap GHC on this platform")); 44 45 nativeBuildInputs = [ perl ]; 46 + buildInputs = stdenv.lib.optionals stdenv.targetPlatform.isAarch32 [ llvm_35 ]; 47 48 # Cannot patchelf beforehand due to relative RPATHs that anticipate 49 # the final install location/
+1 -1
pkgs/development/compilers/ghc/8.2.1-binary.nix
··· 46 or (throw "cannot bootstrap GHC on this platform")); 47 48 nativeBuildInputs = [ perl ]; 49 - buildInputs = stdenv.lib.optionals (stdenv.targetPlatform.isArm || stdenv.targetPlatform.isAarch64) [ llvm_39 ]; 50 51 # Cannot patchelf beforehand due to relative RPATHs that anticipate 52 # the final install location/
··· 46 or (throw "cannot bootstrap GHC on this platform")); 47 48 nativeBuildInputs = [ perl ]; 49 + buildInputs = stdenv.lib.optionals (stdenv.targetPlatform.isAarch32 || stdenv.targetPlatform.isAarch64) [ llvm_39 ]; 50 51 # Cannot patchelf beforehand due to relative RPATHs that anticipate 52 # the final install location/
+3 -3
pkgs/development/compilers/ghc/8.2.2.nix
··· 25 enableShared ? 26 !(targetPlatform.isDarwin 27 # On iOS, dynamic linking is not supported 28 - && (targetPlatform.isAarch64 || targetPlatform.isArm)) 29 , # Whether to backport https://phabricator.haskell.org/D4388 for 30 # deterministic profiling symbol names, at the cost of a slightly 31 # non-standard GHC API ··· 107 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 108 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 109 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 110 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isArm ".gold"}" 111 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 112 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 113 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 136 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 137 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 138 "--enable-bootstrap-with-devel-snapshot" 139 - ] ++ stdenv.lib.optionals (targetPlatform.isArm) [ 140 "CFLAGS=-fuse-ld=gold" 141 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 142 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
··· 25 enableShared ? 26 !(targetPlatform.isDarwin 27 # On iOS, dynamic linking is not supported 28 + && (targetPlatform.isAarch64 || targetPlatform.isAarch32)) 29 , # Whether to backport https://phabricator.haskell.org/D4388 for 30 # deterministic profiling symbol names, at the cost of a slightly 31 # non-standard GHC API ··· 107 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 108 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 109 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 110 + export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}" 111 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 112 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 113 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 136 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 137 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 138 "--enable-bootstrap-with-devel-snapshot" 139 + ] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [ 140 "CFLAGS=-fuse-ld=gold" 141 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 142 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+2 -2
pkgs/development/compilers/ghc/8.4.1.nix
··· 103 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 104 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 105 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 106 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isArm ".gold"}" 107 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 108 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 109 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 135 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 136 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 137 "--enable-bootstrap-with-devel-snapshot" 138 - ] ++ stdenv.lib.optionals (targetPlatform.isArm) [ 139 "CFLAGS=-fuse-ld=gold" 140 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 141 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
··· 103 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 104 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 105 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 106 + export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}" 107 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 108 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 109 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 135 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 136 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 137 "--enable-bootstrap-with-devel-snapshot" 138 + ] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [ 139 "CFLAGS=-fuse-ld=gold" 140 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 141 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+2 -2
pkgs/development/compilers/ghc/head.nix
··· 93 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 94 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 95 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 96 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isArm ".gold"}" 97 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 98 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 99 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 125 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 126 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 127 "--enable-bootstrap-with-devel-snapshot" 128 - ] ++ stdenv.lib.optionals (targetPlatform.isArm) [ 129 "CFLAGS=-fuse-ld=gold" 130 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 131 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
··· 93 export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" 94 export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" 95 # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 96 + export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}" 97 export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" 98 export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" 99 export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" ··· 125 "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" 126 ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ 127 "--enable-bootstrap-with-devel-snapshot" 128 + ] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [ 129 "CFLAGS=-fuse-ld=gold" 130 "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" 131 "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+2 -2
pkgs/development/compilers/go/1.10.nix
··· 86 87 '' + optionalString stdenv.isLinux '' 88 sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go 89 - '' + optionalString stdenv.isArm '' 90 sed -i '/TestCurrent/areturn' src/os/user/user_test.go 91 echo '#!${stdenv.shell}' > misc/cgo/testplugin/test.bash 92 '' + optionalString stdenv.isDarwin '' ··· 131 GOARCH = if stdenv.isDarwin then "amd64" 132 else if stdenv.system == "i686-linux" then "386" 133 else if stdenv.system == "x86_64-linux" then "amd64" 134 - else if stdenv.isArm then "arm" 135 else if stdenv.isAarch64 then "arm64" 136 else throw "Unsupported system"; 137 GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
··· 86 87 '' + optionalString stdenv.isLinux '' 88 sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go 89 + '' + optionalString stdenv.isAarch32 '' 90 sed -i '/TestCurrent/areturn' src/os/user/user_test.go 91 echo '#!${stdenv.shell}' > misc/cgo/testplugin/test.bash 92 '' + optionalString stdenv.isDarwin '' ··· 131 GOARCH = if stdenv.isDarwin then "amd64" 132 else if stdenv.system == "i686-linux" then "386" 133 else if stdenv.system == "x86_64-linux" then "amd64" 134 + else if stdenv.isAarch32 then "arm" 135 else if stdenv.isAarch64 then "arm64" 136 else throw "Unsupported system"; 137 GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
+1 -1
pkgs/development/compilers/go/1.4.nix
··· 130 GOARCH = if stdenv.isDarwin then "amd64" 131 else if stdenv.system == "i686-linux" then "386" 132 else if stdenv.system == "x86_64-linux" then "amd64" 133 - else if stdenv.isArm then "arm" 134 else throw "Unsupported system"; 135 GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5"; 136 GO386 = 387; # from Arch: don't assume sse2 on i686
··· 130 GOARCH = if stdenv.isDarwin then "amd64" 131 else if stdenv.system == "i686-linux" then "386" 132 else if stdenv.system == "x86_64-linux" then "amd64" 133 + else if stdenv.isAarch32 then "arm" 134 else throw "Unsupported system"; 135 GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5"; 136 GO386 = 387; # from Arch: don't assume sse2 on i686
+2 -2
pkgs/development/compilers/go/1.9.nix
··· 86 87 '' + optionalString stdenv.isLinux '' 88 sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go 89 - '' + optionalString stdenv.isArm '' 90 sed -i '/TestCurrent/areturn' src/os/user/user_test.go 91 echo '#!${stdenv.shell}' > misc/cgo/testplugin/test.bash 92 '' + optionalString stdenv.isDarwin '' ··· 133 GOARCH = if stdenv.isDarwin then "amd64" 134 else if stdenv.system == "i686-linux" then "386" 135 else if stdenv.system == "x86_64-linux" then "amd64" 136 - else if stdenv.isArm then "arm" 137 else if stdenv.isAarch64 then "arm64" 138 else throw "Unsupported system"; 139 GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
··· 86 87 '' + optionalString stdenv.isLinux '' 88 sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go 89 + '' + optionalString stdenv.isAarch32 '' 90 sed -i '/TestCurrent/areturn' src/os/user/user_test.go 91 echo '#!${stdenv.shell}' > misc/cgo/testplugin/test.bash 92 '' + optionalString stdenv.isDarwin '' ··· 133 GOARCH = if stdenv.isDarwin then "amd64" 134 else if stdenv.system == "i686-linux" then "386" 135 else if stdenv.system == "x86_64-linux" then "amd64" 136 + else if stdenv.isAarch32 then "arm" 137 else if stdenv.isAarch64 then "arm64" 138 else throw "Unsupported system"; 139 GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
+1 -1
pkgs/development/compilers/ocaml/3.12.1.nix
··· 1 { stdenv, fetchurl, ncurses, xlibsWrapper }: 2 3 let 4 - useX11 = !stdenv.isArm && !stdenv.isMips; 5 useNativeCompilers = !stdenv.isMips; 6 inherit (stdenv.lib) optionals optionalString; 7 in
··· 1 { stdenv, fetchurl, ncurses, xlibsWrapper }: 2 3 let 4 + useX11 = !stdenv.isAarch32 && !stdenv.isMips; 5 useNativeCompilers = !stdenv.isMips; 6 inherit (stdenv.lib) optionals optionalString; 7 in
+1 -1
pkgs/development/compilers/ocaml/4.00.1.nix
··· 1 { stdenv, fetchurl, ncurses, xlibsWrapper }: 2 3 let 4 - useX11 = !stdenv.isArm && !stdenv.isMips; 5 useNativeCompilers = !stdenv.isMips; 6 inherit (stdenv.lib) optionals optionalString; 7 in
··· 1 { stdenv, fetchurl, ncurses, xlibsWrapper }: 2 3 let 4 + useX11 = !stdenv.isAarch32 && !stdenv.isMips; 5 useNativeCompilers = !stdenv.isMips; 6 inherit (stdenv.lib) optionals optionalString; 7 in
+2 -2
pkgs/development/compilers/ocaml/generic.nix
··· 7 real_url = if url == null then 8 "http://caml.inria.fr/pub/distrib/ocaml-${versionNoPatch}/ocaml-${version}.tar.xz" 9 else url; 10 - safeX11 = stdenv: !(stdenv.isArm || stdenv.isMips); 11 in 12 13 { stdenv, fetchurl, ncurses, buildEnv ··· 15 , flambdaSupport ? false 16 }: 17 18 - assert useX11 -> !stdenv.isArm && !stdenv.isMips; 19 assert flambdaSupport -> stdenv.lib.versionAtLeast version "4.03"; 20 21 let
··· 7 real_url = if url == null then 8 "http://caml.inria.fr/pub/distrib/ocaml-${versionNoPatch}/ocaml-${version}.tar.xz" 9 else url; 10 + safeX11 = stdenv: !(stdenv.isAarch32 || stdenv.isMips); 11 in 12 13 { stdenv, fetchurl, ncurses, buildEnv ··· 15 , flambdaSupport ? false 16 }: 17 18 + assert useX11 -> !stdenv.isAarch32 && !stdenv.isMips; 19 assert flambdaSupport -> stdenv.lib.versionAtLeast version "4.03"; 20 21 let
+1 -1
pkgs/development/compilers/sbcl/bootstrap.nix
··· 65 --add-flags "--core $out/share/sbcl/sbcl.core" 66 ''; 67 68 - postFixup = stdenv.lib.optionalString (!stdenv.isArm && stdenv.isLinux) '' 69 patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $out/share/sbcl/sbcl 70 ''; 71
··· 65 --add-flags "--core $out/share/sbcl/sbcl.core" 66 ''; 67 68 + postFixup = stdenv.lib.optionalString (!stdenv.isAarch32 && stdenv.isLinux) '' 69 patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $out/share/sbcl/sbcl 70 ''; 71
+1 -1
pkgs/development/compilers/sbcl/default.nix
··· 26 (setf features (remove x features)))) 27 '' 28 + (if threadSupport then "(enable :sb-thread)" else "(disable :sb-thread)") 29 - + stdenv.lib.optionalString stdenv.isArm "(enable :arm)" 30 + '' 31 )) " > customize-target-features.lisp 32
··· 26 (setf features (remove x features)))) 27 '' 28 + (if threadSupport then "(enable :sb-thread)" else "(disable :sb-thread)") 29 + + stdenv.lib.optionalString stdenv.isAarch32 "(enable :arm)" 30 + '' 31 )) " > customize-target-features.lisp 32
+5 -5
pkgs/development/haskell-modules/configuration-common.nix
··· 937 JuicyPixels = dontHaddock super.JuicyPixels; 938 939 # armv7l fixes. 940 - happy = if pkgs.stdenv.isArm then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062 941 - hashable = if pkgs.stdenv.isArm then dontCheck super.hashable else super.hashable; # https://github.com/tibbe/hashable/issues/95 942 - servant-docs = if pkgs.stdenv.isArm then dontCheck super.servant-docs else super.servant-docs; 943 - servant-swagger = if pkgs.stdenv.isArm then dontCheck super.servant-swagger else super.servant-swagger; 944 - swagger2 = if pkgs.stdenv.isArm then dontHaddock (dontCheck super.swagger2) else super.swagger2; 945 946 # Tries to read a file it is not allowed to in the test suite 947 load-env = dontCheck super.load-env;
··· 937 JuicyPixels = dontHaddock super.JuicyPixels; 938 939 # armv7l fixes. 940 + happy = if pkgs.stdenv.isAarch32 then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062 941 + hashable = if pkgs.stdenv.isAarch32 then dontCheck super.hashable else super.hashable; # https://github.com/tibbe/hashable/issues/95 942 + servant-docs = if pkgs.stdenv.isAarch32 then dontCheck super.servant-docs else super.servant-docs; 943 + servant-swagger = if pkgs.stdenv.isAarch32 then dontCheck super.servant-swagger else super.servant-swagger; 944 + swagger2 = if pkgs.stdenv.isAarch32 then dontHaddock (dontCheck super.swagger2) else super.swagger2; 945 946 # Tries to read a file it is not allowed to in the test suite 947 load-env = dontCheck super.load-env;
+1 -1
pkgs/development/haskell-modules/generic-builder.nix
··· 133 (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names") 134 (optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES") 135 (optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp") 136 - (enableFeature (enableDeadCodeElimination && !hostPlatform.isArm && !hostPlatform.isAarch64 && (versionAtLeast "8.0.1" ghc.version)) "split-objs") 137 (enableFeature enableLibraryProfiling "library-profiling") 138 (enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling")) 139 (enableFeature enableSharedLibraries "shared")
··· 133 (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names") 134 (optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES") 135 (optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp") 136 + (enableFeature (enableDeadCodeElimination && !hostPlatform.isAarch32 && !hostPlatform.isAarch64 && (versionAtLeast "8.0.1" ghc.version)) "split-objs") 137 (enableFeature enableLibraryProfiling "library-profiling") 138 (enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling")) 139 (enableFeature enableSharedLibraries "shared")
+1 -1
pkgs/development/interpreters/perl/default.nix
··· 82 83 preConfigure = optionalString (!crossCompiling) '' 84 configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" 85 - '' + optionalString (stdenv.isArm || stdenv.isMips) '' 86 configureFlagsArray=(-Dldflags="-lm -lrt") 87 '' + optionalString stdenv.isDarwin '' 88 substituteInPlace hints/darwin.sh --replace "env MACOSX_DEPLOYMENT_TARGET=10.3" ""
··· 82 83 preConfigure = optionalString (!crossCompiling) '' 84 configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" 85 + '' + optionalString (stdenv.isAarch32 || stdenv.isMips) '' 86 configureFlagsArray=(-Dldflags="-lm -lrt") 87 '' + optionalString stdenv.isDarwin '' 88 substituteInPlace hints/darwin.sh --replace "env MACOSX_DEPLOYMENT_TARGET=10.3" ""
+1 -1
pkgs/development/interpreters/picolisp/default.nix
··· 9 sha256 = "1k3x6mvk9b34iiyml142bzh3gf241f25ywjlaagbxzb9vklpws75"; 10 }; 11 buildInputs = optional stdenv.is64bit jdk; 12 - patchPhase = optionalString stdenv.isArm '' 13 sed -i s/-m32//g Makefile 14 cat >>Makefile <<EOF 15 ext.o: ext.c
··· 9 sha256 = "1k3x6mvk9b34iiyml142bzh3gf241f25ywjlaagbxzb9vklpws75"; 10 }; 11 buildInputs = optional stdenv.is64bit jdk; 12 + patchPhase = optionalString stdenv.isAarch32 '' 13 sed -i s/-m32//g Makefile 14 cat >>Makefile <<EOF 15 ext.o: ext.c
+4 -4
pkgs/development/interpreters/spidermonkey/1.8.5.nix
··· 11 12 propagatedBuildInputs = [ nspr ]; 13 14 - nativeBuildInputs = [ pkgconfig ] ++ lib.optional stdenv.isArm autoconf213; 15 buildInputs = [ perl python2 zip ]; 16 17 postUnpack = "sourceRoot=\${sourceRoot}/js/src"; ··· 19 preConfigure = '' 20 export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr.dev}/include/nspr" 21 export LIBXUL_DIST=$out 22 - ${lib.optionalString stdenv.isArm "autoreconf --verbose --force"} 23 ''; 24 25 patches = [ ··· 28 url = "https://anonscm.debian.org/cgit/collab-maint/mozjs.git/plain/debian/patches/fix-811665.patch?id=00b15c7841968ab4f7fec409a6b93fa5e1e1d32e"; 29 sha256 = "1q8477xqxiy5d8376k5902l45gd0qkd4nxmhl8vr6rr1pxfcny99"; 30 }) 31 - ] ++ stdenv.lib.optionals stdenv.isArm [ 32 # Explained below in configureFlags for ARM 33 ./1.8.5-findvanilla.patch 34 # Fix for hard float flags. ··· 50 # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393 51 preBuild = '' 52 touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl} 53 - ${if stdenv.isArm then "rm -r jit-test/tests/jaeger/bug563000" else ""} 54 ''; 55 56 enableParallelBuilding = true;
··· 11 12 propagatedBuildInputs = [ nspr ]; 13 14 + nativeBuildInputs = [ pkgconfig ] ++ lib.optional stdenv.isAarch32 autoconf213; 15 buildInputs = [ perl python2 zip ]; 16 17 postUnpack = "sourceRoot=\${sourceRoot}/js/src"; ··· 19 preConfigure = '' 20 export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr.dev}/include/nspr" 21 export LIBXUL_DIST=$out 22 + ${lib.optionalString stdenv.isAarch32 "autoreconf --verbose --force"} 23 ''; 24 25 patches = [ ··· 28 url = "https://anonscm.debian.org/cgit/collab-maint/mozjs.git/plain/debian/patches/fix-811665.patch?id=00b15c7841968ab4f7fec409a6b93fa5e1e1d32e"; 29 sha256 = "1q8477xqxiy5d8376k5902l45gd0qkd4nxmhl8vr6rr1pxfcny99"; 30 }) 31 + ] ++ stdenv.lib.optionals stdenv.isAarch32 [ 32 # Explained below in configureFlags for ARM 33 ./1.8.5-findvanilla.patch 34 # Fix for hard float flags. ··· 50 # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393 51 preBuild = '' 52 touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl} 53 + ${if stdenv.isAarch32 then "rm -r jit-test/tests/jaeger/bug563000" else ""} 54 ''; 55 56 enableParallelBuilding = true;
+7 -7
pkgs/development/libraries/ffmpeg/generic.nix
··· 7 # Build options 8 , runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime 9 , multithreadBuild ? true # Multithreading via pthreads/win32 threads 10 - , sdlSupport ? !stdenv.isArm, SDL ? null, SDL2 ? null 11 - , vdpauSupport ? !stdenv.isArm, libvdpau ? null 12 # Developer options 13 , debugDeveloper ? false 14 , optimizationsDeveloper ? true ··· 42 */ 43 44 let 45 - inherit (stdenv) icCygwin isDarwin isFreeBSD isLinux isArm; 46 inherit (stdenv.lib) optional optionals enableFeature; 47 48 cmpVer = builtins.compareVersions; ··· 55 verFix = withoutFix: fixVer: withFix: if reqMatch fixVer then withFix else withoutFix; 56 57 # Disable dependency that needs fixes before it will work on Darwin or Arm 58 - disDarwinOrArmFix = origArg: minVer: fixArg: if ((isDarwin || isArm) && reqMin minVer) then fixArg else origArg; 59 60 - vaapiSupport = reqMin "0.6" && ((isLinux || isFreeBSD) && !isArm); 61 in 62 63 assert openglSupport -> libGLU_combined != null; ··· 153 bzip2 fontconfig freetype gnutls libiconv lame libass libogg libtheora 154 libvdpau libvorbis lzma soxr x264 x265 xvidcore zlib libopus 155 ] ++ optional openglSupport libGLU_combined 156 - ++ optionals (!isDarwin && !isArm) [ libvpx libpulseaudio ] # Need to be fixed on Darwin and ARM 157 - ++ optional ((isLinux || isFreeBSD) && !isArm) libva 158 ++ optional isLinux alsaLib 159 ++ optionals isDarwin darwinFrameworks 160 ++ optional vdpauSupport libvdpau
··· 7 # Build options 8 , runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime 9 , multithreadBuild ? true # Multithreading via pthreads/win32 threads 10 + , sdlSupport ? !stdenv.isAarch32, SDL ? null, SDL2 ? null 11 + , vdpauSupport ? !stdenv.isAarch32, libvdpau ? null 12 # Developer options 13 , debugDeveloper ? false 14 , optimizationsDeveloper ? true ··· 42 */ 43 44 let 45 + inherit (stdenv) icCygwin isDarwin isFreeBSD isLinux isAarch32; 46 inherit (stdenv.lib) optional optionals enableFeature; 47 48 cmpVer = builtins.compareVersions; ··· 55 verFix = withoutFix: fixVer: withFix: if reqMatch fixVer then withFix else withoutFix; 56 57 # Disable dependency that needs fixes before it will work on Darwin or Arm 58 + disDarwinOrArmFix = origArg: minVer: fixArg: if ((isDarwin || isAarch32) && reqMin minVer) then fixArg else origArg; 59 60 + vaapiSupport = reqMin "0.6" && ((isLinux || isFreeBSD) && !isAarch32); 61 in 62 63 assert openglSupport -> libGLU_combined != null; ··· 153 bzip2 fontconfig freetype gnutls libiconv lame libass libogg libtheora 154 libvdpau libvorbis lzma soxr x264 x265 xvidcore zlib libopus 155 ] ++ optional openglSupport libGLU_combined 156 + ++ optionals (!isDarwin && !isAarch32) [ libvpx libpulseaudio ] # Need to be fixed on Darwin and ARM 157 + ++ optional ((isLinux || isFreeBSD) && !isAarch32) libva 158 ++ optional isLinux alsaLib 159 ++ optionals isDarwin darwinFrameworks 160 ++ optional vdpauSupport libvdpau
+1 -1
pkgs/development/libraries/freetype/default.nix
··· 59 configureFlags = [ "--disable-static" "--bindir=$(dev)/bin" ]; 60 61 # The asm for armel is written with the 'asm' keyword. 62 - CFLAGS = optionalString stdenv.isArm "-std=gnu99"; 63 64 enableParallelBuilding = true; 65
··· 59 configureFlags = [ "--disable-static" "--bindir=$(dev)/bin" ]; 60 61 # The asm for armel is written with the 'asm' keyword. 62 + CFLAGS = optionalString stdenv.isAarch32 "-std=gnu99"; 63 64 enableParallelBuilding = true; 65
+1 -1
pkgs/development/libraries/glibc/common-2.27.nix
··· 110 (if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp") 111 ] ++ lib.optionals (cross != null) [ 112 "--with-__thread" 113 - ] ++ lib.optionals (cross == null && stdenv.isArm) [ 114 "--host=arm-linux-gnueabi" 115 "--build=arm-linux-gnueabi" 116
··· 110 (if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp") 111 ] ++ lib.optionals (cross != null) [ 112 "--with-__thread" 113 + ] ++ lib.optionals (cross == null && stdenv.isAarch32) [ 114 "--host=arm-linux-gnueabi" 115 "--build=arm-linux-gnueabi" 116
+1 -1
pkgs/development/libraries/glibc/common.nix
··· 130 (if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp") 131 ] ++ lib.optionals (cross != null) [ 132 "--with-__thread" 133 - ] ++ lib.optionals (cross == null && stdenv.isArm) [ 134 "--host=arm-linux-gnueabi" 135 "--build=arm-linux-gnueabi" 136
··· 130 (if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp") 131 ] ++ lib.optionals (cross != null) [ 132 "--with-__thread" 133 + ] ++ lib.optionals (cross == null && stdenv.isAarch32) [ 134 "--host=arm-linux-gnueabi" 135 "--build=arm-linux-gnueabi" 136
+1 -1
pkgs/development/libraries/gmp/5.1.x.nix
··· 37 # The config.guess in GMP tries to runtime-detect various 38 # ARM optimization flags via /proc/cpuinfo (and is also 39 # broken on multicore CPUs). Avoid this impurity. 40 - preConfigure = optionalString stdenv.isArm '' 41 configureFlagsArray+=("--build=$(./configfsf.guess)") 42 ''; 43
··· 37 # The config.guess in GMP tries to runtime-detect various 38 # ARM optimization flags via /proc/cpuinfo (and is also 39 # broken on multicore CPUs). Avoid this impurity. 40 + preConfigure = optionalString stdenv.isAarch32 '' 41 configureFlagsArray+=("--build=$(./configfsf.guess)") 42 ''; 43
+1 -1
pkgs/development/libraries/gmp/6.x.nix
··· 38 # The config.guess in GMP tries to runtime-detect various 39 # ARM optimization flags via /proc/cpuinfo (and is also 40 # broken on multicore CPUs). Avoid this impurity. 41 - preConfigure = optionalString stdenv.isArm '' 42 configureFlagsArray+=("--build=$(./configfsf.guess)") 43 ''; 44
··· 38 # The config.guess in GMP tries to runtime-detect various 39 # ARM optimization flags via /proc/cpuinfo (and is also 40 # broken on multicore CPUs). Avoid this impurity. 41 + preConfigure = optionalString stdenv.isAarch32 '' 42 configureFlagsArray+=("--build=$(./configfsf.guess)") 43 ''; 44
+1 -1
pkgs/development/libraries/gnu-efi/default.nix
··· 21 "AR=${stdenv.cc.targetPrefix}ar" 22 "RANLIB=${stdenv.cc.targetPrefix}ranlib" 23 "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" 24 - ] ++ stdenv.lib.optional stdenv.isArm "ARCH=arm" 25 ++ stdenv.lib.optional stdenv.isAarch64 "ARCH=aarch64"; 26 27 meta = with stdenv.lib; {
··· 21 "AR=${stdenv.cc.targetPrefix}ar" 22 "RANLIB=${stdenv.cc.targetPrefix}ranlib" 23 "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" 24 + ] ++ stdenv.lib.optional stdenv.isAarch32 "ARCH=arm" 25 ++ stdenv.lib.optional stdenv.isAarch64 "ARCH=aarch64"; 26 27 meta = with stdenv.lib; {
+1 -1
pkgs/development/libraries/icu/base.nix
··· 31 32 # $(includedir) is different from $(prefix)/include due to multiple outputs 33 sed -i -e 's|^\(CPPFLAGS = .*\) -I\$(prefix)/include|\1 -I$(includedir)|' config/Makefile.inc.in 34 - '' + stdenv.lib.optionalString stdenv.isArm '' 35 # From https://archlinuxarm.org/packages/armv7h/icu/files/icudata-stdlibs.patch 36 sed -e 's/LDFLAGSICUDT=-nodefaultlibs -nostdlib/LDFLAGSICUDT=/' -i config/mh-linux 37 '';
··· 31 32 # $(includedir) is different from $(prefix)/include due to multiple outputs 33 sed -i -e 's|^\(CPPFLAGS = .*\) -I\$(prefix)/include|\1 -I$(includedir)|' config/Makefile.inc.in 34 + '' + stdenv.lib.optionalString stdenv.isAarch32 '' 35 # From https://archlinuxarm.org/packages/armv7h/icu/files/icudata-stdlibs.patch 36 sed -e 's/LDFLAGSICUDT=-nodefaultlibs -nostdlib/LDFLAGSICUDT=/' -i config/mh-linux 37 '';
+1 -1
pkgs/development/libraries/jemalloc/default.nix
··· 16 # jemalloc is unable to correctly detect transparent hugepage support on 17 # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default 18 # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support 19 - ++ stdenv.lib.optional stdenv.isArm "--disable-thp"; 20 doCheck = true; 21 22 patches = stdenv.lib.optional stdenv.isAarch64 (fetchpatch {
··· 16 # jemalloc is unable to correctly detect transparent hugepage support on 17 # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default 18 # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support 19 + ++ stdenv.lib.optional stdenv.isAarch32 "--disable-thp"; 20 doCheck = true; 21 22 patches = stdenv.lib.optional stdenv.isAarch64 (fetchpatch {
+1 -1
pkgs/development/libraries/libdrm/default.nix
··· 20 "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache"; 21 22 configureFlags = [ "--enable-install-test-programs" ] 23 - ++ stdenv.lib.optionals (stdenv.isArm || stdenv.isAarch64) 24 [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ] 25 ++ stdenv.lib.optional stdenv.isDarwin "-C"; 26
··· 20 "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache"; 21 22 configureFlags = [ "--enable-install-test-programs" ] 23 + ++ stdenv.lib.optionals (stdenv.isAarch32 || stdenv.isAarch64) 24 [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ] 25 ++ stdenv.lib.optional stdenv.isDarwin "-C"; 26
+1 -1
pkgs/development/libraries/libtoxcore/default.nix
··· 20 21 buildInputs = [ 22 libsodium libmsgpack ncurses libconfig 23 - ] ++ stdenv.lib.optionals (!stdenv.isArm) [ 24 libopus 25 libvpx 26 ];
··· 20 21 buildInputs = [ 22 libsodium libmsgpack ncurses libconfig 23 + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ 24 libopus 25 libvpx 26 ];
+2 -2
pkgs/development/libraries/libtoxcore/new-api.nix
··· 33 nativeBuildInputs = [ autoreconfHook pkgconfig ]; 34 buildInputs = [ 35 autoreconfHook libsodium ncurses check libconfig 36 - ] ++ stdenv.lib.optionals (!stdenv.isArm) [ 37 libopus 38 ]; 39 40 - propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isArm) [ libvpx ]; 41 42 # Some tests fail randomly due to timeout. This kind of problem is well known 43 # by upstream: https://github.com/irungentoo/toxcore/issues/{950,1054}
··· 33 nativeBuildInputs = [ autoreconfHook pkgconfig ]; 34 buildInputs = [ 35 autoreconfHook libsodium ncurses check libconfig 36 + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ 37 libopus 38 ]; 39 40 + propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isAarch32) [ libvpx ]; 41 42 # Some tests fail randomly due to timeout. This kind of problem is well known 43 # by upstream: https://github.com/irungentoo/toxcore/issues/{950,1054}
+1 -1
pkgs/development/libraries/libvpx/default.nix
··· 41 }: 42 43 let 44 - inherit (stdenv) isi686 isx86_64 isArm is64bit isMips isDarwin isCygwin; 45 inherit (stdenv.lib) enableFeature optional optionals; 46 in 47
··· 41 }: 42 43 let 44 + inherit (stdenv) isi686 isx86_64 isAarch32 is64bit isMips isDarwin isCygwin; 45 inherit (stdenv.lib) enableFeature optional optionals; 46 in 47
+2 -2
pkgs/development/libraries/libvpx/git.nix
··· 43 }: 44 45 let 46 - inherit (stdenv) isi686 isx86_64 isArm is64bit isMips isDarwin isCygwin; 47 inherit (stdenv.lib) enableFeature optional optionals; 48 in 49 50 - assert isi686 || isx86_64 || isArm || isMips; # Requires ARM with floating point support 51 52 assert vp8DecoderSupport || vp8EncoderSupport || vp9DecoderSupport || vp9EncoderSupport; 53 assert internalStatsSupport && (vp9DecoderSupport || vp9EncoderSupport) -> postprocSupport;
··· 43 }: 44 45 let 46 + inherit (stdenv) isi686 isx86_64 isAarch32 is64bit isMips isDarwin isCygwin; 47 inherit (stdenv.lib) enableFeature optional optionals; 48 in 49 50 + assert isi686 || isx86_64 || isAarch32 || isMips; # Requires ARM with floating point support 51 52 assert vp8DecoderSupport || vp8EncoderSupport || vp9DecoderSupport || vp9EncoderSupport; 53 assert internalStatsSupport && (vp9DecoderSupport || vp9EncoderSupport) -> postprocSupport;
+3 -3
pkgs/development/libraries/mesa/default.nix
··· 32 33 let 34 defaultGalliumDrivers = 35 - if stdenv.isArm 36 then ["nouveau" "freedreno" "vc4" "etnaviv" "imx"] 37 else if stdenv.isAarch64 38 then ["nouveau" "vc4" ] 39 else ["svga" "i915" "r300" "r600" "radeonsi" "nouveau"]; 40 defaultDriDrivers = 41 - if (stdenv.isArm || stdenv.isAarch64) 42 then ["nouveau"] 43 else ["i915" "i965" "nouveau" "radeon" "r200"]; 44 defaultVulkanDrivers = 45 - if (stdenv.isArm || stdenv.isAarch64) 46 then [] 47 else ["intel"] ++ lib.optional enableRadv "radeon"; 48 in
··· 32 33 let 34 defaultGalliumDrivers = 35 + if stdenv.isAarch32 36 then ["nouveau" "freedreno" "vc4" "etnaviv" "imx"] 37 else if stdenv.isAarch64 38 then ["nouveau" "vc4" ] 39 else ["svga" "i915" "r300" "r600" "radeonsi" "nouveau"]; 40 defaultDriDrivers = 41 + if (stdenv.isAarch32 || stdenv.isAarch64) 42 then ["nouveau"] 43 else ["i915" "i965" "nouveau" "radeon" "r200"]; 44 defaultVulkanDrivers = 45 + if (stdenv.isAarch32 || stdenv.isAarch64) 46 then [] 47 else ["intel"] ++ lib.optional enableRadv "radeon"; 48 in
+1 -1
pkgs/development/libraries/pixman/default.nix
··· 22 23 buildInputs = stdenv.lib.optional doCheck libpng; 24 25 - configureFlags = stdenv.lib.optional stdenv.isArm "--disable-arm-iwmmxt"; 26 27 doCheck = true; 28
··· 22 23 buildInputs = stdenv.lib.optional doCheck libpng; 24 25 + configureFlags = stdenv.lib.optional stdenv.isAarch32 "--disable-arm-iwmmxt"; 26 27 doCheck = true; 28
+1 -1
pkgs/development/libraries/pth/default.nix
··· 8 sha256 = "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj"; 9 }; 10 11 - preConfigure = stdenv.lib.optionalString stdenv.isArm '' 12 configureFlagsArray=("CFLAGS=-DJB_SP=8 -DJB_PC=9") 13 ''; 14
··· 8 sha256 = "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj"; 9 }; 10 11 + preConfigure = stdenv.lib.optionalString stdenv.isAarch32 '' 12 configureFlagsArray=("CFLAGS=-DJB_SP=8 -DJB_PC=9") 13 ''; 14
+2 -2
pkgs/development/libraries/v8/3.16.14.nix
··· 3 assert readline != null; 4 5 let 6 - arch = if stdenv.isArm 7 then (if stdenv.is64bit then "arm64" else "arm") 8 else (if stdenv.is64bit then "x64" else "ia32"); 9 - armHardFloat = stdenv.isArm && (stdenv.platform.gcc.float or null) == "hard"; 10 in 11 12 stdenv.mkDerivation rec {
··· 3 assert readline != null; 4 5 let 6 + arch = if stdenv.isAarch32 7 then (if stdenv.is64bit then "arm64" else "arm") 8 else (if stdenv.is64bit then "x64" else "ia32"); 9 + armHardFloat = stdenv.isAarch32 && (stdenv.platform.gcc.float or null) == "hard"; 10 in 11 12 stdenv.mkDerivation rec {
+1 -1
pkgs/development/libraries/v8/6_x.nix
··· 4 }: 5 6 let 7 - arch = if stdenv.isArm 8 then if stdenv.is64bit 9 then"arm64" 10 else "arm"
··· 4 }: 5 6 let 7 + arch = if stdenv.isAarch32 8 then if stdenv.is64bit 9 then"arm64" 10 else "arm"
+1 -1
pkgs/development/libraries/v8/default.nix
··· 10 arch = if stdenv.isx86_64 then "x64" 11 else if stdenv.isi686 then "ia32" 12 else if stdenv.isAarch64 then "arm64" 13 - else if stdenv.isArm then "arm" 14 else throw "Unknown architecture for v8"; 15 git_url = "https://chromium.googlesource.com"; 16 clangFlag = if stdenv.isDarwin then "1" else "0";
··· 10 arch = if stdenv.isx86_64 then "x64" 11 else if stdenv.isi686 then "ia32" 12 else if stdenv.isAarch64 then "arm64" 13 + else if stdenv.isAarch32 then "arm" 14 else throw "Unknown architecture for v8"; 15 git_url = "https://chromium.googlesource.com"; 16 clangFlag = if stdenv.isDarwin then "1" else "0";
+1 -1
pkgs/development/libraries/webrtc-audio-processing/default.nix
··· 10 11 # Avoid this error: 12 # signal_processing/filter_ar_fast_q12_armv7.S:88: Error: selected processor does not support `sbfx r11,r6,#12,#16' in ARM mode 13 - patchPhase = stdenv.lib.optionalString stdenv.isArm '' 14 substituteInPlace configure --replace 'armv7*|armv8*' 'disabled' 15 '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' 16 substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1
··· 10 11 # Avoid this error: 12 # signal_processing/filter_ar_fast_q12_armv7.S:88: Error: selected processor does not support `sbfx r11,r6,#12,#16' in ARM mode 13 + patchPhase = stdenv.lib.optionalString stdenv.isAarch32 '' 14 substituteInPlace configure --replace 'armv7*|armv8*' 'disabled' 15 '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' 16 substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1
+1 -1
pkgs/development/python-modules/Cython/default.nix
··· 25 # result is "3L" instead of "3", so let's fix it in-place. 26 # 27 # Upstream issue: https://github.com/cython/cython/issues/1548 28 - postPatch = lib.optionalString ((stdenv.isi686 || stdenv.isArm) && !isPy3k) '' 29 sed -i -e 's/\(>>> *\)\(verify_resolution_GH1533()\)/\1int(\2)/' \ 30 tests/run/cpdef_enums.pyx 31 '';
··· 25 # result is "3L" instead of "3", so let's fix it in-place. 26 # 27 # Upstream issue: https://github.com/cython/cython/issues/1548 28 + postPatch = lib.optionalString ((stdenv.isi686 || stdenv.isAarch32) && !isPy3k) '' 29 sed -i -e 's/\(>>> *\)\(verify_resolution_GH1533()\)/\1int(\2)/' \ 30 tests/run/cpdef_enums.pyx 31 '';
+1 -1
pkgs/development/tools/misc/binutils/2.30.nix
··· 90 # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. 91 configurePlatforms = 92 # TODO(@Ericson2314): Figure out what's going wrong with Arm 93 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 94 then [] 95 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 96
··· 90 # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. 91 configurePlatforms = 92 # TODO(@Ericson2314): Figure out what's going wrong with Arm 93 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 94 then [] 95 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 96
+1 -1
pkgs/development/tools/misc/binutils/default.nix
··· 93 # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. 94 configurePlatforms = 95 # TODO(@Ericson2314): Figure out what's going wrong with Arm 96 - if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm 97 then [] 98 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 99
··· 93 # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. 94 configurePlatforms = 95 # TODO(@Ericson2314): Figure out what's going wrong with Arm 96 + if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32 97 then [] 98 else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; 99
+1 -1
pkgs/os-specific/linux/kbd/default.nix
··· 32 33 # We get a warning in armv5tel-linux and the fuloong2f, so we 34 # disable -Werror in it. 35 - ${stdenv.lib.optionalString (stdenv.isArm || stdenv.hostPlatform.isMips) '' 36 sed -i s/-Werror// src/Makefile.am 37 ''} 38 '';
··· 32 33 # We get a warning in armv5tel-linux and the fuloong2f, so we 34 # disable -Werror in it. 35 + ${stdenv.lib.optionalString (stdenv.isAarch32 || stdenv.hostPlatform.isMips) '' 36 sed -i s/-Werror// src/Makefile.am 37 ''} 38 '';
+1 -1
pkgs/os-specific/linux/kernel/common-config.nix
··· 353 SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default 354 SECURITY_YAMA? y # Prevent processes from ptracing non-children processes 355 DEVKMEM n # Disable /dev/kmem 356 - ${optionalString (! stdenv.hostPlatform.isArm) 357 (if versionOlder version "3.14" then '' 358 CC_STACKPROTECTOR? y # Detect buffer overflows on the stack 359 '' else ''
··· 353 SECURITY_SELINUX_BOOTPARAM_VALUE 0 # Disable SELinux by default 354 SECURITY_YAMA? y # Prevent processes from ptracing non-children processes 355 DEVKMEM n # Disable /dev/kmem 356 + ${optionalString (! stdenv.hostPlatform.isAarch32) 357 (if versionOlder version "3.14" then '' 358 CC_STACKPROTECTOR? y # Detect buffer overflows on the stack 359 '' else ''
+1 -1
pkgs/os-specific/linux/systemd/default.nix
··· 70 "-Dsystem-gid-max=499" 71 # "-Dtime-epoch=1" 72 73 - (if stdenv.isArm || !hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") 74 "-Defi-libdir=${toString gnu-efi}/lib" 75 "-Defi-includedir=${toString gnu-efi}/include/efi" 76 "-Defi-ldsdir=${toString gnu-efi}/lib"
··· 70 "-Dsystem-gid-max=499" 71 # "-Dtime-epoch=1" 72 73 + (if stdenv.isAarch32 || !hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") 74 "-Defi-libdir=${toString gnu-efi}/lib" 75 "-Defi-includedir=${toString gnu-efi}/include/efi" 76 "-Defi-ldsdir=${toString gnu-efi}/lib"
+1 -1
pkgs/os-specific/linux/uclibc/default.nix
··· 43 UCLIBC_SUSV4_LEGACY y 44 UCLIBC_HAS_THREADS_NATIVE y 45 KERNEL_HEADERS "${linuxHeaders}/include" 46 - '' + stdenv.lib.optionalString (stdenv.isArm && cross == null) '' 47 CONFIG_ARM_EABI y 48 ARCH_WANTS_BIG_ENDIAN n 49 ARCH_BIG_ENDIAN n
··· 43 UCLIBC_SUSV4_LEGACY y 44 UCLIBC_HAS_THREADS_NATIVE y 45 KERNEL_HEADERS "${linuxHeaders}/include" 46 + '' + stdenv.lib.optionalString (stdenv.isAarch32 && cross == null) '' 47 CONFIG_ARM_EABI y 48 ARCH_WANTS_BIG_ENDIAN n 49 ARCH_BIG_ENDIAN n
+1 -1
pkgs/servers/sql/mariadb/default.nix
··· 123 buildInputs = common.buildInputs ++ [ 124 xz lzo lz4 bzip2 snappy 125 libxml2 boost judy libevent cracklib 126 - ] ++ optional (stdenv.isLinux && !stdenv.isArm) numactl; 127 128 cmakeFlags = common.cmakeFlags ++ [ 129 "-DMYSQL_DATADIR=/var/lib/mysql"
··· 123 buildInputs = common.buildInputs ++ [ 124 xz lzo lz4 bzip2 snappy 125 libxml2 boost judy libevent cracklib 126 + ] ++ optional (stdenv.isLinux && !stdenv.isAarch32) numactl; 127 128 cmakeFlags = common.cmakeFlags ++ [ 129 "-DMYSQL_DATADIR=/var/lib/mysql"
+1 -1
pkgs/stdenv/generic/default.nix
··· 117 # Utility flags to test the type of platform. 118 inherit (hostPlatform) 119 isDarwin isLinux isSunOS isHurd isCygwin isFreeBSD isOpenBSD 120 - isi686 isx86_64 is64bit isArm isAarch64 isMips isBigEndian; 121 122 # Whether we should run paxctl to pax-mark binaries. 123 needsPax = isLinux;
··· 117 # Utility flags to test the type of platform. 118 inherit (hostPlatform) 119 isDarwin isLinux isSunOS isHurd isCygwin isFreeBSD isOpenBSD 120 + isi686 isx86_64 is64bit isAarch32 isAarch64 isMips isBigEndian; 121 122 # Whether we should run paxctl to pax-mark binaries. 123 needsPax = isLinux;
+1 -1
pkgs/tools/networking/cjdns/default.nix
··· 16 stdenv.lib.optional stdenv.isLinux utillinux; 17 18 buildPhase = 19 - stdenv.lib.optionalString stdenv.isArm "Seccomp_NO=1 " 20 + "bash do"; 21 installPhase = '' 22 install -Dt "$out/bin/" cjdroute makekeys privatetopublic publictoip6
··· 16 stdenv.lib.optional stdenv.isLinux utillinux; 17 18 buildPhase = 19 + stdenv.lib.optionalString stdenv.isAarch32 "Seccomp_NO=1 " 20 + "bash do"; 21 installPhase = '' 22 install -Dt "$out/bin/" cjdroute makekeys privatetopublic publictoip6
+1 -1
pkgs/tools/networking/filegive/default.nix
··· 1 { stdenv, fetchurl, fetchgit, go }: 2 3 - assert stdenv.isLinux && (stdenv.isi686 || stdenv.isx86_64 || stdenv.isArm); 4 5 let 6
··· 1 { stdenv, fetchurl, fetchgit, go }: 2 3 + assert stdenv.isLinux && (stdenv.isi686 || stdenv.isx86_64 || stdenv.isAarch32); 4 5 let 6
+1 -1
pkgs/tools/system/storebrowse/default.nix
··· 1 { stdenv, fetchurl, fetchhg, go, sqlite}: 2 3 - assert stdenv.isLinux && (stdenv.isi686 || stdenv.isx86_64 || stdenv.isArm); 4 5 stdenv.mkDerivation rec { 6 name = "storebrowse-20130318212204";
··· 1 { stdenv, fetchurl, fetchhg, go, sqlite}: 2 3 + assert stdenv.isLinux && (stdenv.isi686 || stdenv.isx86_64 || stdenv.isAarch32); 4 5 stdenv.mkDerivation rec { 6 name = "storebrowse-20130318212204";
+8 -8
pkgs/top-level/all-packages.nix
··· 5988 5989 # bootstrapping a profiled compiler does not work in the sheevaplug: 5990 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 5991 - profiledCompiler = !stdenv.isArm; 5992 5993 libcCross = if targetPlatform != buildPlatform then libcCross else null; 5994 })); ··· 6352 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6353 (openjdk7.jre // { outputs = [ "jre" ]; })); 6354 6355 - jdk8 = if stdenv.isArm || stdenv.isAarch64 then oraclejdk8 else openjdk8 // { outputs = [ "out" ]; }; 6356 - jre8 = if stdenv.isArm || stdenv.isAarch64 then oraclejre8 else lib.setName "openjre-${lib.getVersion pkgs.openjdk8.jre}" 6357 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6358 (openjdk8.jre // { outputs = [ "jre" ]; })); 6359 jre8_headless = 6360 - if stdenv.isArm || stdenv.isAarch64 then 6361 oraclejre8 6362 else if stdenv.isDarwin then 6363 jre8 ··· 6366 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6367 ((openjdk8.override { minimal = true; }).jre // { outputs = [ "jre" ]; })); 6368 6369 - jdk9 = if stdenv.isArm || stdenv.isAarch64 then oraclejdk9 else openjdk9 // { outputs = [ "out" ]; }; 6370 - jre9 = if stdenv.isArm || stdenv.isAarch64 then oraclejre9 else lib.setName "openjre-${lib.getVersion pkgs.openjdk9.jre}" 6371 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6372 (openjdk9.jre // { outputs = [ "jre" ]; })); 6373 jre9_headless = 6374 - if stdenv.isArm || stdenv.isAarch64 then 6375 oraclejre9 6376 else if stdenv.isDarwin then 6377 jre9 ··· 9126 9127 cairo = callPackage ../development/libraries/cairo { 9128 glSupport = config.cairo.gl or (stdenv.isLinux && 9129 - !stdenv.isArm && !stdenv.isMips); 9130 }; 9131 9132
··· 5988 5989 # bootstrapping a profiled compiler does not work in the sheevaplug: 5990 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 5991 + profiledCompiler = !stdenv.isAarch32; 5992 5993 libcCross = if targetPlatform != buildPlatform then libcCross else null; 5994 })); ··· 6352 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6353 (openjdk7.jre // { outputs = [ "jre" ]; })); 6354 6355 + jdk8 = if stdenv.isAarch32 || stdenv.isAarch64 then oraclejdk8 else openjdk8 // { outputs = [ "out" ]; }; 6356 + jre8 = if stdenv.isAarch32 || stdenv.isAarch64 then oraclejre8 else lib.setName "openjre-${lib.getVersion pkgs.openjdk8.jre}" 6357 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6358 (openjdk8.jre // { outputs = [ "jre" ]; })); 6359 jre8_headless = 6360 + if stdenv.isAarch32 || stdenv.isAarch64 then 6361 oraclejre8 6362 else if stdenv.isDarwin then 6363 jre8 ··· 6366 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6367 ((openjdk8.override { minimal = true; }).jre // { outputs = [ "jre" ]; })); 6368 6369 + jdk9 = if stdenv.isAarch32 || stdenv.isAarch64 then oraclejdk9 else openjdk9 // { outputs = [ "out" ]; }; 6370 + jre9 = if stdenv.isAarch32 || stdenv.isAarch64 then oraclejre9 else lib.setName "openjre-${lib.getVersion pkgs.openjdk9.jre}" 6371 (lib.addMetaAttrs { outputsToInstall = [ "jre" ]; } 6372 (openjdk9.jre // { outputs = [ "jre" ]; })); 6373 jre9_headless = 6374 + if stdenv.isAarch32 || stdenv.isAarch64 then 6375 oraclejre9 6376 else if stdenv.isDarwin then 6377 jre9 ··· 9126 9127 cairo = callPackage ../development/libraries/cairo { 9128 glSupport = config.cairo.gl or (stdenv.isLinux && 9129 + !stdenv.isAarch32 && !stdenv.isMips); 9130 }; 9131 9132