-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lib: Fix #30902 on 18.03 #37337
lib: Fix #30902 on 18.03 #37337
Commits on Mar 12, 2018
-
qtbase: Fix x86_64-conditional logic
Now works with cross and old and new meta checks alike.
Configuration menu - View commit details
-
Copy full SHA for dde80d7 - Browse repository at this point
Copy the full SHA dde80d7View commit details -
Configuration menu - View commit details
-
Copy full SHA for eeb8419 - Browse repository at this point
Copy the full SHA eeb8419View commit details -
treewide: Make
shouldUsePackages
copypasta use meta.availableThe old way depended on old list-of-strings `meta.platforms`, and was not good for cross.
Configuration menu - View commit details
-
Copy full SHA for 79d8353 - Browse repository at this point
Copy the full SHA 79d8353View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59c656a - Browse repository at this point
Copy the full SHA 59c656aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 94cbd14 - Browse repository at this point
Copy the full SHA 94cbd14View commit details -
Configuration menu - View commit details
-
Copy full SHA for c208ca6 - Browse repository at this point
Copy the full SHA c208ca6View commit details -
Configuration menu - View commit details
-
Copy full SHA for b152dcf - Browse repository at this point
Copy the full SHA b152dcfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d1d83d - Browse repository at this point
Copy the full SHA 2d1d83dView commit details
Commits on Mar 14, 2018
-
treewide: get rid of platforms.allBut
Negative reasoning like `allBut` is a bad idea with an open world of platforms. Concretely, if we add a new, quite different sort of platform, existing packages with `allBut` will claim they work on it even though they probably won't.
Configuration menu - View commit details
-
Copy full SHA for f79f80d - Browse repository at this point
Copy the full SHA f79f80dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c52e34 - Browse repository at this point
Copy the full SHA 4c52e34View commit details
Commits on Mar 15, 2018
-
lib, stdenv: Check
meta.platforms
against host platform and be open…… world First, we need check against the host platform, not the build platform. That's simple enough. Second, we move away from exahustive finite case analysis (i.e. exhaustively listing all platforms the package builds on). That only work in a closed-world setting, where we know all platforms we might build one. But with cross compilation, we may be building for arbitrary platforms, So we need fancier filters. This is the closed world to open world change. The solution is instead of having a list of systems (strings in the form "foo-bar"), we have a list of of systems or "patterns", i.e. attributes that partially match the output of the parsers in `lib.systems.parse`. The "check meta" logic treats the systems strings as an exact whitelist just as before, but treats the patterns as a fuzzy whitelist, intersecting the actual `hostPlatform` with the pattern and then checking for equality. (This is done using `matchAttrs`). The default convenience lists for `meta.platforms` are now changed to be lists of patterns (usually a single pattern) in `lib/systems/for-meta.nix` for maximum flexibility under this new system. Fixes NixOS#30902
Configuration menu - View commit details
-
Copy full SHA for c26252a - Browse repository at this point
Copy the full SHA c26252aView commit details -
release-lib: Adapt to work with new meta.platforms
`packagePlatforms` now filters `supportedSystems` with the new-style `meta.platforms`, rather than just plopping it in as is.
Configuration menu - View commit details
-
Copy full SHA for eae19f3 - Browse repository at this point
Copy the full SHA eae19f3View commit details
Commits on Mar 19, 2018
-
lib: Factor in tiny bit of
meta.platform
checkingI need it in stdenv and release-lib, so that seems motivation enough.
Configuration menu - View commit details
-
Copy full SHA for e547bd0 - Browse repository at this point
Copy the full SHA e547bd0View commit details
Commits on Mar 20, 2018
-
release-lib: Filter supportedSystems with
meta.platforms
-style patt……erns Instead of intersecting system strings, we filter with the sort of patterns used in `meta.platforms`. Indicating this change `forTheseSystems` has been renamed to `forMatchingSystems`, since the given list is now patterns to match, and not the systems themselves. [Just as with `meta.platforms`, systems strings are also supported for backwards compatibility.] This is more flexible, and makes the `forMatchingSystems` and packagePlatforms` cases more analogous.
Configuration menu - View commit details
-
Copy full SHA for 192f414 - Browse repository at this point
Copy the full SHA 192f414View commit details -
lib: Messed up
or
operator precedenceGithub broke oddly on my previous PR, so I tested and merged by hand. Otherwise ofborg would have caught this.
Configuration menu - View commit details
-
Copy full SHA for ec2aff0 - Browse repository at this point
Copy the full SHA ec2aff0View commit details -
lib: Make platform predicates greppable
Should have commited on here and on merged master to begin with, but I didn't, so instead I cherry-pick. (cherry picked from commit 88c04a8)
Configuration menu - View commit details
-
Copy full SHA for 175d4ab - Browse repository at this point
Copy the full SHA 175d4abView commit details
Commits on Apr 4, 2018
-
lib: Make
platforms.all
actually match all platformsOtherwise obscure cross-compilations are hampered. `all` breaks all but the initial derivation (which we can't even write yet) in an open world setting however, so we really shouldn't have it. (cherry picked from commit 3c8ae01)
Configuration menu - View commit details
-
Copy full SHA for 7ca53e2 - Browse repository at this point
Copy the full SHA 7ca53e2View commit details -
lib: Add
lib.platforms.windows
(cherry picked from commit d9a1800)
Configuration menu - View commit details
-
Copy full SHA for 6afaa74 - Browse repository at this point
Copy the full SHA 6afaa74View commit details -
libatomic_ops: Allow Building on Windows too
(cherry picked from commit e49c14c)
Configuration menu - View commit details
-
Copy full SHA for 3edb2b8 - Browse repository at this point
Copy the full SHA 3edb2b8View commit details -
haskell-generic-builder: Default to window + unix platforms,
Since GHC is a cross compiler, it's perfectly possible to make haskell binaries on platforms without GHCs. `windows ++ unix` seems good enough for now. Also don't default `hydraPlatforms` to `platforms`. The former must be a list of systems (strings), but the latter is a list of systems or patterns. (cherry picked from commit 65e24f2)
Configuration menu - View commit details
-
Copy full SHA for e7cc454 - Browse repository at this point
Copy the full SHA e7cc454View commit details -
top-level: Move comma for stylistic consistency
(cherry picked from commit abf2760)
Configuration menu - View commit details
-
Copy full SHA for df52863 - Browse repository at this point
Copy the full SHA df52863View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac3d9c3 - Browse repository at this point
Copy the full SHA ac3d9c3View commit details