From 637701b6047bff23a7dea4e02bebf94660b8cb4c Mon Sep 17 00:00:00 2001 From: Linus Heckemann Date: Fri, 16 Mar 2018 22:50:27 +0000 Subject: [PATCH] rename build-extra-platforms -> extra-platforms also document it --- doc/manual/command-ref/conf-file.xml | 19 +++++++++++++++++++ src/libstore/globals.hh | 8 ++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/doc/manual/command-ref/conf-file.xml b/doc/manual/command-ref/conf-file.xml index c76640c97..5c21a40a1 100644 --- a/doc/manual/command-ref/conf-file.xml +++ b/doc/manual/command-ref/conf-file.xml @@ -254,6 +254,25 @@ false. + extra-platforms + + Platforms other than the native one which + this machine is capable of building for. This can be useful for + supporting additional architectures on compatible machines: + i686-linux can be built on x86_64-linux machines (and the default + for this setting reflects this); armv7 is backwards-compatible with + armv6 and armv5tel; some aarch64 machines can also natively run + 32-bit ARM code; and qemu-user may be used to support non-native + platforms (though this may be slow and buggy). Most values for this + are not enabled by default because build systems will often + misdetect the target platform and generate incompatible code, so you + may wish to cross-check the results of using this option against + proper natively-built versions of your + derivations. + + + + extra-substituters Additional binary caches appended to those diff --git a/src/libstore/globals.hh b/src/libstore/globals.hh index b382da01e..897d53b7b 100644 --- a/src/libstore/globals.hh +++ b/src/libstore/globals.hh @@ -295,8 +295,12 @@ public: "Nix store has a valid signature (that is, one signed using a key " "listed in 'trusted-public-keys'."}; - Setting extraPlatforms{this, StringSet{}, "build-extra-platforms", - "Additional platforms that can be built on the local system, e.g. using qemu-user."}; + Setting extraPlatforms{this, + SYSTEM == "x86_64-linux" ? StringSet{"i686-linux"} : StringSet{}, + "extra-platforms", + "Additional platforms that can be built on the local system. " + "These may be supported natively (e.g. armv7 on some aarch64 CPUs " + "or using hacks like qemu-user."}; Setting substituters{this, nixStore == "/nix/store" ? Strings{"https://cache.nixos.org/"} : Strings(),