Commit Graph

29 Commits

Author SHA1 Message Date
a-n-n-a-l-e-e
ce789e7e35
llvmPackages_{12,13,14,15,16,17,git}.{libcxx,libcxxabi}: merge libcxxabi into libcxx (#292043)
- merge libcxxabi into libcxx for LLVM 12, 13, 14, 15, 16, 17, and git.
- remove the link time workaround `-lc++ -lc++abi` from 58 packages as it is no longer required.
- fixes https://github.com/NixOS/nixpkgs/issues/166205
- provides alternative fixes for. https://github.com/NixOS/nixpkgs/issues/269548 https://github.com/NixOS/nix/issues/9640
- pkgsCross.x86_64-freebsd builds work again

This change can be represented in 3 stages
1. merge libcxxabi into libcxx -- files: pkgs/development/compilers/llvm/[12, git]/{libcxx, libcxxabi}
2. update stdenv to account for merge -- files: stdenv.{adapters, cc.wrapper, darwin}
3. remove all references to libcxxabi outside of llvm (about 58 packages modified)

### merging libcxxabi into libcxx
- take the union of the libcxxabi and libcxx cmake flags
- eliminate the libcxx-headers-only package - it was only needed to break libcxx <-> libcxxabi circular dependency
- libcxx.cxxabi is removed. external cxxabi (freebsd) will symlink headers / libs into libcxx.
- darwin will re-export the libcxxabi symbols into libcxx so linking `-lc++` is sufficient.
- linux/freebsd `libc++.so` is a linker script `LINK(libc++.so.1, -lc++abi)` making `-lc++` sufficient.
- libcxx/default.nix [12, 17] are identical except for patches and `LIBCXX_ADDITIONAL_LIBRARIES` (only used in 16+)
- git/libcxx/defaul.nix  does not link with -nostdlib when useLLVM is true so flag is removed. this is not much different than before as libcxxabi used -nostdlib where libcxx did not, so libc was linked in anyway.

### stdenv changes
- darwin bootstrap, remove references to libcxxabi and cxxabi
- cc-wrapper: remove c++ link workaround when libcxx.cxxabi doesn't exist (still exists for LLVM pre 12)
- adapter: update overrideLibcxx to account for a pkgs.stdenv that only has libcxx

### 58 package updates
- remove `NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}` as no longer needed
- swift, nodejs_v8 remove libcxxabi references in the clang override

https://github.com/NixOS/nixpkgs/pull/292043
2024-03-11 03:53:37 -07:00
Guillaume Girol
88a82d455f nix-du: 1.1.1 -> 1.2.0
Diff: https://github.com/symphorien/nix-du/compare/v1.1.1...v1.2.0
2023-12-30 22:20:45 +01:00
h7x4
41974d5ed9
treewide: add mainProgram 2023-11-27 02:17:53 +01:00
Guillaume Girol
f3adde931b nix-du: 1.1.0 -> 1.1.1
Diff: https://github.com/symphorien/nix-du/compare/v1.1.0...v1.1.1
2023-10-23 20:22:16 +02:00
Guillaume Girol
d69e1743ef nix-du: 1.0.0 -> 1.1.0 2023-10-18 12:00:00 +00:00
Guillaume Girol
33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00
Guillaume Girol
4cf3912d54 nix-du: 0.6.0 -> 1.0.0 2022-11-07 12:00:00 +00:00
kilianar
baa6fca638 nix-du: 0.5.1 -> 0.6.0
https://github.com/symphorien/nix-du/releases/tag/v0.6.0
2022-06-30 12:51:05 +02:00
Guillaume Girol
b8149cba83 nix-du: 0.5.0 -> 0.5.1
fix build with nix 2.8
2022-04-24 16:02:18 +02:00
Guillaume Girol
976a5bc9ff nix-du: 0.4.1 -> 0.5.0
fix build with nix 2.7
2022-03-13 23:00:48 -04:00
Guillaume Girol
274a9fa04f nix-du: 0.4.0 -> 0.4.1 2021-11-03 12:00:00 +00:00
Guillaume Girol
0995b30c34 nix-du: 0.3.3 -> 0.4
support for the up and coming nix 2.4
2021-10-31 12:00:00 +00:00
Guillaume Girol
46163f6fef
nix-du: 0.3.3 -> 0.3.4 (#119243)
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-04-13 13:47:23 +02:00
Ben Siraphob
8c5d37129f pkgs/tools: stdenv.lib -> lib 2021-01-15 17:12:36 +07:00
Profpatsch
4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00
Symphorien Gibol
4f89e2f313 nix-du: 0.3.1 -> 0.3.3 2020-08-27 12:00:00 +00:00
Symphorien Gibol
83c66e956f nix-du: fix with strictDeps
Fixes https://github.com/symphorien/nix-du/issues/4
2020-04-28 12:00:00 +00:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Benjamin Hipple
131a32a5af rust: update docs on legacyCargoFetcher; remove unnecessary defaults
As mentioned in #79975, the default on `legacyCargoFetcher` if left unspecified
is now `false`.
2020-02-15 22:07:47 -08:00
Benjamin Hipple
2115a2037c fetchcargo: use flat tar.gz file for vendored src instead of recursive hash dir
This has several advantages:

1. It takes up less space on disk in-between builds in the nix store.
2. It uses less space in the binary cache for vendor derivation packages.
3. It uses less network traffic downloading from the binary cache.
4. It plays nicely with hashed mirrors like tarballs.nixos.org, which only
   substitute --flat hashes on single files (not recursive directory hashes).
5. It's consistent with how simple `fetchurl` src derivations work.
6. It provides a stronger abstraction between input src-package and output
   package, e.g., it's harder to accidentally depend on the src derivation at
   runtime by referencing something like `${src}/etc/index.html`. Likewise, in
   the store it's harder to get confused with something that is just there as a
   build-time dependency vs. a runtime dependency, since the build-time
   src dependencies are tarred up.

Disadvantages are:
1. It takes slightly longer to untar at the start of a build.

As currently implemented, this attaches the compacted vendor.tar.gz feature as a
rider on `verifyCargoDeps`, since both of them are relatively newly implemented
behavior that change the `cargoSha256`.

If this PR is accepted, I will push forward the remaining rust packages with a
series of treewide PRs to update the `cargoSha256`s.
2020-02-10 10:17:29 -05:00
Symphorien Gibol
04b2c195f0 nix-du: 0.3.0 -> 0.3.1 2019-10-12 12:00:00 +00:00
Maximilian Bosch
050646af12
nix-du: update version to show actual rev's date rather than git-master 2019-09-15 18:14:11 +02:00
danme
586946829c nix-du: 0.3.0 -> master
recent master fixes the build problem.
2019-09-13 19:41:07 +02:00
volth
7bb6b373ab treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
Alyssa Ross
062210bdff treewide: update cargoSha256 hashes for cargo-vendor upgrade
A recent upgrade of cargo-vendor changed its output slightly, which
broke all cargoSha256 hashes in nixpkgs.
See https://github.com/NixOS/nixpkgs/issues/60668 for more information.

Since then, a few hashes have been fixed in master by hand, but there
were a lot still to do, so I did all of the ones left over with some
scripts I wrote.

The one hash I wasn’t able to update was habitat's, because it’s
currently broken and the build doesn’t get far enough to produce a
hash anyway.
2019-06-01 15:17:52 +00:00
Symphorien Gibol
8a8a2f61a9 nix-du: 0.2.0 -> 0.3.0 2018-11-03 11:08:23 +01:00
Symphorien Gibol
1db6cd6952 nix-du: 0.1.2 -> 0.2.0 2018-07-05 14:18:34 +02:00
symphorien
d32e2e3063 nix-du: 0.1.1 -> 0.1.2 (#41002) 2018-05-24 13:27:06 +02:00
Symphorien Gibol
87125d6d08 nix-du: init at 0.1.1 2018-05-22 16:24:00 +02:00