nixpkgs/pkgs/build-support
Alyssa Ross e3e57b8f18 lib.systems: elaborate Rust metadata
We need this stuff to be available in lib so make-derivation.nix can
access it to construct the Meson cross file.

This has a couple of other advantages:

 - It makes Rust less special.  Now figuring out what Rust calls a
   platform is the same as figuring out what Linux or QEMU call it.

 - We can unify the schema used to define Rust targets, and the schema
   used to access those values later.  Just like you can set "config"
   or "system" in a platform definition, and then access those same
   keys on the elaborated platform, you can now set "rustcTarget" in
   your crossSystem, and then access "stdenv.hostPlatform.rustcTarget"
   in your code.

"rustcTarget", "rustcTargetSpec", "cargoShortTarget", and
"cargoEnvVarTarget" have the "rustc" and "cargo" prefixes because
these are not exposed to code by the compiler, and are not
standardized.  The arch/os/etc. variables are all named to match the
forms in the Rust target spec JSON.

The new rust.target-family only takes a list, since we don't need to
worry about backwards compatibility when that name is used.

The old APIs are all still functional with no warning for now, so that
it's possible for external code to use a single API on both 23.05 and
23.11.  We can introduce the warnings once 23.05 is EOL, and make them
hard errors when 23.11 is EOL.
2023-11-09 10:02:24 +01:00
..
add-opengl-runpath
agda
alternatives lapack: force a rebuild on x86_64-darwin 2023-03-24 08:57:05 +01:00
appimage appimageTools.extract: add postExtract option (#261190) 2023-10-19 08:23:57 +00:00
binary-cache pkgs/build-support: refactor drvs using __structuredAttrs = true 2023-10-04 18:37:00 +02:00
bintools-wrapper bintools-wrapper: fix dynamic linker for powerpc64 big-endian 2023-09-11 13:55:43 +02:00
build-bazel-package buildBazelPackage: add support for bazel run targets 2023-08-02 16:05:55 +08:00
build-fhsenv-bubblewrap build-fhsenv-bubblewrap: remove /usr/lib and /usr/lib32 from LD_LIBRARY_PATH 2023-10-24 07:13:33 -07:00
build-fhsenv-chroot buildFHSEnv: fix NIX_LDFLAGS propagation to ld wrapper 2023-08-21 07:50:37 +01:00
build-graalvm-native-image buildGraalvmNativeImage: build with "-march=compatibility" by default 2023-10-12 11:42:56 +02:00
build-setupcfg
buildenv buildenv: Limit exclusion of info/dir 2023-07-09 22:06:26 -04:00
cc-wrapper Merge pull request #253194 from risicle/ris-nix-hardening-enable-fortify3-imply-fortify 2023-10-23 19:23:02 +01:00
coq
dart dartHooks.dartFixupHook: Add trailing newline 2023-10-22 00:42:07 +11:00
deterministic-uname deterministic-uname: fix default output 2023-09-17 00:08:43 +03:00
dhall
docker dockerTools: create /tmp in rootLayer 2023-10-09 22:15:41 +02:00
dotnet Merge pull request #249091 from TomaSajt/dotnet-fix 2023-08-23 14:04:47 +09:00
emacs emacs: allow using as shebang on darwin 2023-09-24 19:50:52 -03:00
expand-response-params expand-response-params: explain what a "response file" is 2023-10-22 08:57:24 +03:00
fake-nss
fetch9front lib: add fetchFrom9Front 2023-07-23 13:16:28 -05:00
fetchbitbucket treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchbower
fetchbzr treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchcvs treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchdarcs treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchdebianpatch fetchDebianPatch: Require patch names with extensions 2023-09-14 18:55:30 +00:00
fetchdocker Merge staging-next into staging 2023-10-21 00:02:49 +00:00
fetchfirefoxaddon fetchfirefoxaddon: fix passing md5 to fetchurl 2023-07-28 16:18:15 -04:00
fetchfossil treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchgit Merge master into staging-next 2023-11-09 06:01:11 +00:00
fetchgitea treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchgithub treewide: use optionalString instead of 'then ""' 2023-06-24 20:19:19 +02:00
fetchgitiles treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchgitlab treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchgitlocal treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchgx
fetchhg treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchipfs treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchmavenartifact fetchMavenArtifact: deprecate phases & use pname+version 2023-03-26 18:44:55 +02:00
fetchmtn treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchnextcloudapp fetchNextcloudApp: remove backwards compat for old interface 2023-08-20 13:41:43 +02:00
fetchpatch fetchpatch: add decode test 2023-03-11 21:39:29 +00:00
fetchpijul build-support: Add fetchpijul function. 2023-07-17 18:44:06 +02:00
fetchpypi
fetchrepoorcz
fetchrepoproject fetchrepoproject: fix a bug that was there since bef6bef0d2 2023-08-06 12:17:09 +00:00
fetchs3
fetchsavannah treewide: Make some fetchers overridable 2023-04-22 22:29:23 +02:00
fetchsourcehut fetchFromSourcehut: expose gitRepoUrl to consumers 2023-06-11 09:02:34 +01:00
fetchsvn treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchsvnrevision
fetchsvnssh treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchtorrent fetchFromBittorrent: Rename to fetchtorrent 2023-10-28 11:32:10 +01:00
fetchurl treewide: refactor .attrs.sh detection 2023-10-04 18:36:57 +02:00
fetchzip fetchzip: cleanup and improve metrics a bit 2023-08-08 13:25:28 +00:00
flutter buildFlutterApplication: Wrap buildDartApplication 2023-10-22 00:31:58 +11:00
go Revert "buildGoModule: set GOPROXY to go default" 2023-08-22 09:20:22 +10:00
icon-conv-tools
install-shell-files
java
kernel systemd-stage-1: Use specific fs packages 2023-10-19 21:13:22 -04:00
libredirect libredirect: Fix segfault handling null paths 2023-08-19 00:58:43 +02:00
make-darwin-bundle writeDarwinBundle: use binary wrapper 2023-08-21 13:29:12 +10:00
make-desktopitem
make-hardcode-gsettings-patch
make-pkgconfigitem
make-startupitem make-startupitem: fix typo in comment 2023-08-16 18:03:02 +02:00
mkshell
mono-dll-fixer
nix-gitignore Merge pull request #239624 from Stunkymonkey/use-optionalString-then 2023-07-22 13:02:47 +02:00
node Merge pull request #260011 from lilyinstarlight/fix/prefetch-npm-deps-network-error-recovery 2023-10-12 19:58:20 +02:00
nuke-references
ocaml ocamlPackages.buildTopkgPackage: Added 2023-09-28 12:03:20 +02:00
oci-tools
php build-support/php: add composerStrictValidation attribute 2023-10-21 11:15:51 +02:00
pkg-config-wrapper treewide: use optionalAttrs instead of 'else {}' 2023-06-25 11:01:34 -03:00
portable-service
prefer-remote-fetch
references-by-popularity pkgs/build-support: refactor drvs using __structuredAttrs = true 2023-10-04 18:37:00 +02:00
release treewide: use lib.optionalAttrs 2023-07-24 21:59:17 +02:00
remove-references-to Merge pull request #162447 from thefloweringash/remove-references-to-region 2023-05-17 12:34:28 +03:00
replace-secret
rust lib.systems: elaborate Rust metadata 2023-11-09 10:02:24 +01:00
setup-hooks darwin: fix also .so names in darwin 2023-10-28 00:00:52 +02:00
singularity-tools
snap
src-only nixos/tests: Test that Remote SSH can patch Node 2023-06-09 18:21:41 +10:00
substitute
substitute-files
templaterpm
testers testers.testMetaPkgConfig: fix warning 2023-09-19 16:11:42 +02:00
trivial-builders shellcheck-minimal: init 2023-11-01 06:23:04 +08:00
vm build-support/vm: fix makeImageTestScript 2023-08-24 09:09:43 +01:00
wrapper-common wrapBintoolsWith: support LINK.EXE-style args in purity checks 2023-04-29 01:37:00 +00:00
writers writers/test: Refactor 2023-10-24 11:17:38 +02:00
build-maven.nix
closure-info.nix closureInfo: handle empty path set explicitly 2023-11-04 09:54:41 +01:00
make-impure-test.nix
plugins.nix
replace-dependency.nix
setup-systemd-units.nix
source-from-head-fun.nix