about summary refs log tree commit diff
path: root/third_party/nix
AgeCommit message (Collapse)AuthorFilesLines
2020-05-21 r/795 fix(3p/nix): Compatibility with updated SymbolTableVincent Ambo21-137/+141
The functions in SymbolTable have been renamed to match the Google Style guide, and some debug-only functions have been removed.
2020-05-21 r/794 refactor(3p/nix/libexpr): Use absl::node_hash_set in SymbolTableVincent Ambo3-32/+39
This replaces the previous use of std::unordered_set with absl::node_hash_set. This type was chosen because the current implementation requires pointer stability. This does not yet touch the 'Attr' struct. As a bonus, the implementation of the SymbolTable struct is now consolidated into a single header/implementation file pair.
2020-05-21 r/793 feat(3p/nix): Wrangle Meson/Nix/CMake into (temporary) submissionVincent Ambo2-11/+45
Meson is unable to use CMake in Nix to determine the internal structure of the Abseil libraries. This commit adds an explicit list of most of the Abseil targets that are relevant (so far) and bundles them into a list that is linked together.
2020-05-21 r/791 chore(3p/nix): Minor fixes to get rid of warningsVincent Ambo3-7/+3
2020-05-21 r/790 fix(3p/nix): Fix build of derivation if cmake is presentVincent Ambo1-0/+8
cmake automatically runs a configure hook which breaks the build, since this isn't actually a cmake project. This hook is now disabled. Additionally Abseil's sources are linked to an absolute derivation path when the build launches, as opposed to the relative path used for development builds.
2020-05-20 r/789 refactor(3p/nix): Apply clang-tidy's performance-* fixesVincent Ambo60-166/+189
This applies the performance fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html
2020-05-20 r/788 refactor(3p/nix): Apply clang-tidy's readability-* fixesVincent Ambo78-787/+858
This applies the readability fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html
2020-05-20 r/787 refactor(3p/nix): Apply clang-tidy's modernize-* fixesVincent Ambo59-321/+349
This applies the modernization fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html The 'modernize-use-trailing-return-type' fix was excluded due to my personal preference (more specifically, I think the 'auto' keyword is misleading in that position).
2020-05-20 r/786 feat(3p/nix): Add some initial Abseil build targetsVincent Ambo3-10/+13
These make it possible to link to Abseil strings.
2020-05-20 r/784 feat(3p/nix): Add Abseil as a CMAKE subproject to MesonVincent Ambo3-0/+7
Yep. This is accomplished by symlinking the sources into the location expected by Meson for subprojects.
2020-05-20 r/780 chore(third_party/nix): Dump of minor accumulated changesVincent Ambo5-25/+5
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.
2020-05-19 r/778 refactor(3p/nix): Make all single-argument constructors explicitVincent Ambo12-31/+31
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
2020-05-19 r/777 style(3p/nix): Final act in the brace-wrapping sagaVincent Ambo83-1556/+2602
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.
2020-05-19 r/776 chore(3p/nix): Remove OSX only 'resolve-system-dependencies' toolVincent Ambo4-268/+0
2020-05-19 r/775 style(3p/nix/libstore): Additional if/for bracing fixesVincent Ambo1-7/+11
2020-05-19 r/773 fix(3p/nix/libstore): Fix mistake introduced by bracing changesVincent Ambo1-1/+1
This statement got included in a loop when it shouldn't have been. At least it led to some funny derivation files!
2020-05-19 r/772 style(3p/nix): Add braces around single-line for-loopsVincent Ambo45-142/+426
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
2020-05-19 r/771 style(3p/nix): Add braces around single-line conditionalsVincent Ambo97-753/+2223
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
2020-05-19 r/770 fix(3p/nix/libexpr): Declare value union types explicitlyVincent Ambo1-43/+59
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.
2020-05-19 r/769 fix(3p/nix/libexpr): Use noexcept instead of throw()Vincent Ambo1-1/+1
2020-05-19 r/768 fix(3p/nix): Fix incorrectly braced conditionals and loopsVincent Ambo16-61/+62
Fixes mistakes introduced by clang-tidy in the previous commit.
2020-05-19 r/767 style(3p/nix): Enforce braces around loops and conditionalsVincent Ambo44-298/+661
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.
2020-05-19 r/766 style(3p/nix): Reformat all includes to match new styleVincent Ambo119-106/+298
2020-05-19 r/765 style(3p/nix): Change include formatting config for clang-formatVincent Ambo1-2/+7
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
2020-05-19 r/763 fix(3p/nix): Set C++ style to "Google" in Emacs localsVincent Ambo2-42/+1
2020-05-19 r/762 refactor(3p/nix/nix-*): Replace logging with glog in binariesVincent Ambo21-168/+120
2020-05-19 r/761 refactor(3p/nix/nix-daemon): Remove activities from protocolVincent Ambo2-112/+27
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.
2020-05-19 r/760 style(3p/nix/libexpr): Reformat with clang-formatVincent Ambo5-6/+7
2020-05-19 r/759 chore(3p/nix/nix): Remove progress bar implementationVincent Ambo2-455/+0
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.
2020-05-19 r/758 refactor(3p/nix/libexpr): Replace logging.h with glogVincent Ambo8-35/+37
2020-05-19 r/757 refactor(3p/nix/libmain): Replace logging.h with glogVincent Ambo4-98/+58
2020-05-19 r/756 refactor(3p/nix/libstore): Replace logging.h with glogVincent Ambo25-464/+514
2020-05-18 r/754 refactor(3p/nix/libutil): Replace internal logging library with glogVincent Ambo10-44/+76
2020-05-18 r/753 chore(3p/nix/libutil): Remove logging implementationVincent Ambo3-437/+0
2020-05-17 r/750 feat(3p/nix): Add glog dependencyVincent Ambo5-73/+86
2020-05-17 r/748 chore(3p/nix): Always enable the garbage collectorVincent Ambo4-64/+10
It's unclear why this toggle existed, now it doesn't.
2020-05-17 r/747 fix(3p/nix): Minor fixes to derivationVincent Ambo1-4/+6
* version must be set to use this as the system Nix * missing busybox path is now set * fixed build output names
2020-05-17 r/745 feat(3p/nix): Add new Meson-based derivation for building NixVincent Ambo1-0/+71
This builds the mesonified Nix and is compatible with the depot structure and nix-shell.
2020-05-17 r/744 chore(3p/nix): Remove symlink setup from Meson buildVincent Ambo2-86/+11
This belongs in the derivation itself, IMO.
2020-05-17 r/742 chore(3p/nix): Remove old build derivationsVincent Ambo3-506/+0
Removes the autotools-based build derivations, in favour of using a simpler build that just wraps Meson.
2020-05-17 r/741 chore(3p/nix): Remove old build system and other miscellaniesVincent Ambo56-4222/+0
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.
2020-05-17 r/740 style(3p/nix): Reformat project in Google C++ styleVincent Ambo175-34616/+32053
Reformatted with: fd . -e hh -e cc | xargs clang-format -i
2020-05-17 r/739 fix(3p/nix): Fix Meson configuration for libexprVincent Ambo1-40/+3
2020-05-17 r/738 chore(3p/nix): Use packages from depot treeVincent Ambo2-5/+4
2020-05-17 r/737 chore(3p/nix): Clean up libseccomp_depJohn Ericson1-6/+7
(cherry picked from commit b380f75867d48e6af461513d26803b61250d9c80)
2020-05-17 r/736 docs(3p/nix): Clean up descriptions in MesonJohn Ericson2-6/+6
1. Fix that for libsodium 2. Consistently capitalize (cherry picked from commit 12ce28bdf21d1f261132bdefe3dac25b1aab7dcc)
2020-05-17 r/735 fix(3p/nix): non-existent wrapper dependency .found() should be false tooJohn Ericson1-2/+2
(cherry picked from commit 90f9f4aef781fc5c3ead8652fc408a431f480905)
2020-05-17 r/734 chore(3p/nix): Make libsodium an auto dependencyJohn Ericson2-4/+5
This means do autodetection if the user doesn't specify. (cherry picked from commit 1be6ab4d3eb4d6b04c322b9ed0a108c2b5354ec5)
2020-05-17 r/733 feat(3p/nix/build): Add meson & ninja as nativeBuildDepsVincent Ambo1-0/+2
2020-05-17 r/732 refactor(3p/nix): Remove abstractions in HAVE_STRUCT_DIRENT_D_TYPE codeJohn Ericson1-3/+1
(cherry picked from commit 727dc569a7a13b038d550b8c98a79d5928424d9b)