Age | Commit message (Collapse) | Author | Files | Lines |
|
This makes it possible to link Abseil into shared libraries, e.g. the
various Nix libraries.
|
|
Yep.
This is accomplished by symlinking the sources into the location
expected by Meson for subprojects.
|
|
|
|
'768eb2ca2857342673fcd462792ce04b8bac3fa3'
git-subtree-dir: third_party/abseil_cpp
git-subtree-mainline: ffb2ae54beb5796cd408fbe15d2d2da09ff37adf
git-subtree-split: 768eb2ca2857342673fcd462792ce04b8bac3fa3
|
|
None of these are worthy of a specific commit, or even have a real
reason behind them, but I didn't want to lose them.
|
|
Implicit constructors can be confusing, especially in a codebase that
is already as unintentionally obfuscated as this one.
https://google.github.io/styleguide/cppguide.html#Explicit_Constructors
|
|
This last change set was generated by a full clang-tidy run (including
compilation):
clang-tidy -p ~/projects/nix-build/ \
-checks=-*,readability-braces-around-statements -fix src/*/*.cc
Actually running clang-tidy requires some massaging to make it play
nice with Nix + meson, I'll be adding a wrapper or something for that soon.
|
|
|
|
|
|
|
|
This statement got included in a loop when it shouldn't have been. At
least it led to some funny derivation files!
|
|
These were not caught by the previous clang-tidy invocation, but were
instead sorted out using amber[0] as such:
ambr --regex 'for (\(.+\))\s([a-z].*;)' 'for $1 { $2 }'
[0]: https://github.com/dalance/amber
|
|
These were not caught by the previous clang-tidy invocation, but were
instead sorted out using amber[0] as such:
ambr --regex 'if (\(.+\))\s([a-z].*;)' 'if $1 { $2 }'
[0]: https://github.com/dalance/amber
|
|
Previously these structs were declared anonymously inside of the -
anonymous - union. This is not actually supported by the C++ standard,
but is merely a compiler-specific extension.
Unfortunately untangling this required a forward-declaration of the
Value type.
|
|
|
|
Fixes mistakes introduced by clang-tidy in the previous commit.
|
|
This change was generated with:
fd -e cc -e hh | xargs -I{} clang-tidy {} -p ~/projects/nix-build/ \
--checks='-*,readability-braces-around-statements' --fix \
-fix-errors
Some manual fixes were applied because some convoluted unbraced
statements couldn't be untangled by clang-tidy.
This commit still includes invalid files, but I decided to clean them
up in a subsequent commit so that it becomes more obvious where
clang-tidy failed. Maybe this will allow for a bug-report to
clang-tidy.
|
|
|
|
Changes the configuration to regroup all includes. The include groups
will be (in this order):
1. (in .cc): Include of the corresponding header
2. Includes of C++ standard library headers
3. Includes of other external headers
4. Includes of local headers
|
|
|
|
|
|
Removes the activity transfer that was previously nulled out from the
daemon protocol completely.
This might actually break Nix completely, I haven't tried yet, but
that's fine because this will be replaced with gRPC.
|
|
|
|
The progress bar has lots of complexity for little benefit. The
previous activity tracking stuff has been deleted as part of the
logging refactoring and I am not going to implement support for this
again for now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It's unclear why this toggle existed, now it doesn't.
|
|
* version must be set to use this as the system Nix
* missing busybox path is now set
* fixed build output names
|
|
This builds the mesonified Nix and is compatible with the depot
structure and nix-shell.
|
|
This belongs in the derivation itself, IMO.
|
|
|
|
Removes the autotools-based build derivations, in favour of using a
simpler build that just wraps Meson.
|
|
There are still remnants of the old build system (for example, the
build derivations are not yet updated at all), but we'll get there.
|
|
Reformatted with:
fd . -e hh -e cc | xargs clang-format -i
|
|
|
|
|
|
(cherry picked from commit b380f75867d48e6af461513d26803b61250d9c80)
|
|
1. Fix that for libsodium
2. Consistently capitalize
(cherry picked from commit 12ce28bdf21d1f261132bdefe3dac25b1aab7dcc)
|
|
(cherry picked from commit 90f9f4aef781fc5c3ead8652fc408a431f480905)
|
|
This means do autodetection if the user doesn't specify.
(cherry picked from commit 1be6ab4d3eb4d6b04c322b9ed0a108c2b5354ec5)
|
|
|
|
(cherry picked from commit 727dc569a7a13b038d550b8c98a79d5928424d9b)
|
|
1. First of all, this doesn't work in nixpkgs. Per [1], gcc ignores `-L`
for purposes of `--print-file-dirs`, which breaks horribly on linux. But
if we don't pass extra dirs, meosn first just tries `-l...`, which does
work.
2. Even if it did work, `libdir` means where we are installing libs, not
where libs are expected to be found. Those are not necessarily the
same (again, nixpkgs), and even when they are and non-standard, it is
better to use DESTDIR or have a modified toolchain.
[1]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87758
(cherry picked from commit a142164e746644e20f66908c156ca913bef4664f)
|
|
(cherry picked from commit 7ae66bbef5e92f4a0bba49780d8c316f134884f2)
|
|
(cherry picked from commit 3a968f5152d6f65ea3d9fdd36df3c188a4e20e24)
|