| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
See https://github.com/NixOS/nixpkgs/pull/50452#issuecomment-443455411
Signed-off-by: Austin Seipp <aseipp@pobox.com>
|
| |\
| | |
| | | |
Rust build-support: fixing a compilation error in some crates
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
proc-macro2)
|
|\ \ \
| |/ /
|/| |
| | | |
buildRustPackage: write cargo config to temporary file instead of source dir
|
| |/
| |
| |
| | |
... as this fails if the source dir contains a "config" directory.
|
| |
| |
| |
| |
| | |
It is now clearer what is supposed to be in the rust attribute set
without having studied type theory. The amount of code is identically.
|
|/
|
|
| |
Signed-off-by: Austin Seipp <aseipp@pobox.com>
|
| |
|
| |
|
|
|
| |
Carnix: splits input into two parts: creates from creates.io and local ones
|
|
|
|
|
|
|
|
|
|
| |
E.g. exa was wrongly put into /lib, as it matches
.*.a
but not
.*\.a
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
This commit adds test based on real-world crates (brotli).
There were a few more edge cases that were missing beforehand. Also it
turned out that we can get rid of the `finalBins` list since that will
now be handled during runtime.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The build expression got quiet large over time and to make it a bit
easier to grasp the different scripts involved in the build are now
separated from the nix file.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cargo has a few odd (old) ways of picking source files if the `bin.path`
attribute isn't given in the Cargo.toml. This commit adds support for
some of those. The previous behaviour always defaulted to `src/main.rs`
which was not always the right choice.
Since there is look-ahead into the unpacked sources before running the
actual builder the path selection logic has to be embedded within the
build script.
`buildRustCrate` currently supports two ways of running building
binaries when processing a crate:
- Explicit definition of all the binaries (& optionally the paths to
their respective `main.rs`) and,
- if not binary was explictly configured all files matching the patterns
`src/main.rs`, `src/bin/*.rs`.
When the explicit list is given without path information paths are now
being picked from a list of candidates. The first match wins. The order
is the same as within the cargo compatibility code.
If the crate does not provide any libraries the path `src/{bin_name}.rs`
is also considered.
All underscores within the binary names are translated into dashes (`-`)
before the lookups are made. This seems to be a common convention.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By setting useRealVendorConfig explicitly to true, the actual (slightly
modified) config generated by cargo-vendor is used.
This solves a problem, where the static vendor config in
pkgs/build-support/rust/default.nix would not sufficiently replace all
crates Cargo is looking for.
As useRealVendorConfig (and writeVendorConfig in fetchcargo) default to
false, there should be no breakage in existing cargoSha256 hashes.
Nethertheless, imho using this new feature should become standard. A
possible deprecation path could be:
- introduce this patch
- set useRealVendorConfig explicitly to false whereever cargoSha256 is
set but migration is not wanted yet.
- after some time, let writeVendorConfig default to true
- when useRealVendorConfig is true everywhere cargoSha256 is set and
enough time is passed, `assert cargoVendorDir == null ->
useRealVendorConfig;`, remove old behaviour
- after some time, remove all appearences of useRealVendorConfig and the
parameter itself
|
|
|
|
|
| |
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
|
| |
|
| |
|
| |
|
|\
| |
| | |
[bot] treewide: remove unreferenced code
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes the command ‘nix-env -qa -f. --arg config '{skipAliases =
true;}'’ work in Nixpkgs.
Misc...
- qtikz: use libsForQt5.callPackage
This ensures we get the right poppler.
- rewrites:
docbook5_xsl -> docbook_xsl_ns
docbook_xml_xslt -> docbook_xsl
diffpdf: fixup
|
| |
|
|\
| |
| |
| |
| |
| | |
git://github.com/marsam/nixpkgs
Set target_os properly on darwin.
|
| |
| |
| |
| |
| |
| | |
The rust compiler uses "macos" as "target_os" conditional on Mac OS[1]
[1] https://github.com/rust-lang/rust/blob/8e7a609e635b728eba65d471c985ab462dc4cfc7/src/librustc_back/target/x86_64_apple_darwin.rs#L29
|
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | | |
This is useful when build scripts do not apply linking flags
|
|\| |
| | |
| | |
| | |
| | | |
Conflicts:
pkgs/top-level/all-packages.nix
|
| | | |
|
| | | |
|
|\ \ \
| |/ /
|/| | |
buildRustPackage: Restrict `find` to files
|
| | |
| | |
| | |
| | |
| | |
| | | |
`find -executable` finds everything with the executable bit set,
including directories. Thats not harmful in this scenario as `cp` won't
copy those directories, but it does result in a few warning messages.
|
| | | |
|
| | | |
|
| | | |
|