Commit Graph

409 Commits

Author SHA1 Message Date
Guillaume Maudoux
1795976a32 bazel_7: Unse runJDK for runtime 2023-12-18 17:33:28 +01:00
Guillaume Maudoux
f35225d3d6 bazel_7: backport bazel_6 bash fixes for remote execution 2023-12-18 17:32:07 +01:00
Guillaume Maudoux
459e800b04 bazel_7: fix protobuf test on darwin 2023-12-14 13:11:19 +01:00
Guillaume Maudoux
a30a2c9f40 bazel_7: fix cpp-test with bzlmod, for linux 2023-12-14 12:25:19 +01:00
Guillaume Maudoux
0d222a3580 bazel_7: re-enable arc in xcode_locator command 2023-12-14 09:00:36 +01:00
Guillaume Maudoux
6d93cdd566 bazel_7: restore xcode_locator no-arc fix, still needed 2023-12-13 23:16:33 +01:00
Guillaume Maudoux
5fc2602a32 bazel_7: restore xcode_locator patch from no-arc patch 2023-12-13 22:55:00 +01:00
Guillaume Maudoux
f8eaea18b0 bazel_7: address most review comments 2023-12-13 22:48:28 +01:00
Guillaume Maudoux
2a92a2304a bazel_7: 7.0.0rc7 -> 7.0.0 2023-12-13 22:48:28 +01:00
Dmitry Ivankov
306e8eaf53 bazel_7: fix darwin compilation with CLang 16 & recent nixpkgs/master
Workaround for #166205 similar to
51451ac406

And warning fix similar to `bazel_6` fix for
```
external/upb~0.0.0-20220923-a547704/upb/mini_table.c:634:14: error: defining a type within '__builtin_offsetof' is a Clang extension [-Werror,-Wgnu-offsetof-extensions]
  UPB_ASSERT(UPB_ALIGN_OF(upb_StringView) ==
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2023-12-13 22:48:28 +01:00
Guillaume Maudoux
4d54ca897b bazel_7: 7.0.0rc2 -> 7.0.0rc7 2023-12-13 22:48:28 +01:00
Guillaume Maudoux
207fb75488 bazel_7: darwin (sandbox) fixes 2023-12-13 22:48:28 +01:00
Guillaume Maudoux
7dd831bac7 bazel_7: rename protobuf test lockfile, part 2 2023-12-13 22:48:28 +01:00
Guillaume Maudoux
0c13686697 bazel_7: rename protobuf test lockfile 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
a4cf97e415 bazel_7: cleanup unused files 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
058102dd42 bazel_7: cleanup protobuf tests 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
90bfff1396 bazel_7: cleanup changes made to common patches 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
5151e14e2c bazel_7: cleanup changes made to common tests 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
05ecc09b57 Bump to 7.0.0rc2 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
622804ab5d Add 7.0.0rc2, but some patches need an update 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
be69c186cc Rework repository_cache, lockfile generation, and protobuf tests as a whole 2023-12-13 22:48:27 +01:00
Guillaume Maudoux
229bce1095 bazel_7: Cleanup patchPhase 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
7051773ca8 bazel_7: Separate test deps (without binaries) 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
b09a742323 bazel_7: Filter bzlmod dependencies by name predicate 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
022befe8ae Get bazel building on all major platforms, with tests 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
30cbfd470d bazel_7: More refactors 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
9b820d98a6 bazel_7: refactor and comment 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
d1f60e013b bazel_7: split tests for clarity 2023-12-13 22:48:26 +01:00
Guillaume Maudoux
03f458b351 bazel_7: restrict USER hack to darwin 2023-12-13 22:48:25 +01:00
Guillaume Maudoux
e0a1a73c41 bazel_7: Simplify callBazelTest 2023-12-13 22:48:25 +01:00
Guillaume Maudoux
78dd0bafa6 bazel_7: init at 7.0.0-pre.20230917.3 2023-12-13 22:48:25 +01:00
Guillaume Maudoux
8cc99ed595 bazel_7: start by copying bazel_6 2023-12-13 22:48:25 +01:00
Peder Bergebakken Sundt
f41aba3739 treewide: remove unreferenced patch files
Found with `fd \\.patch$ pkgs/ -x bash -c 'rg -F "{/}" pkgs/ -q || echo {}'`
2023-12-01 06:11:20 +01:00
Uri Baghin
c3c2fe4867
Merge pull request #269481 from boltzmannrain/bazel_5_clang16
bazel_5: fix CLang 16 Werror-s on darwin
2023-11-24 21:44:50 +08:00
Dmitry Ivankov
746e394638 bazel_4: fix CLang 16 Werror-s on darwin
Fixing `bazel_4` after #234710

Error example
https://hydra.nixos.org/build/241174862/nixlog/1
```
Execution platform: //:default_host_platform
third_party/zlib/gzwrite.c:89:20: error: call to undeclared function 'write'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
            writ = write(state->fd, strm->next_in, put);
                   ^
```

Similar to #269481 and #269297
2023-11-23 20:39:38 +01:00
Dmitry Ivankov
781538c5ed bazel_5: fix CLang 16 Werror-s on darwin
Fixing `bazel_5` after #234710

Error example
https://hydra.nixos.org/build/241240612/nixlog/1
```
external/com_google_absl/absl/meta/type_traits.h:560:8: error: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Werror,-Wdeprecated-builtins]
      (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
```

Similar to #269297, and remaining `bazel_4` is WIP for another PR
2023-11-23 20:23:50 +01:00
Dmitry Ivankov
ed175a635e bazel_6: fix CLang 16 Werror-s on darwin
bazel_6 https://hydra.nixos.org/build/241090720/nixlog/1
```
external/upb/upb/upb.c:228:25: error: defining a type within '__builtin_offsetof' is a Clang extension [-Werror,-Wgnu-offsetof-extensions]
  n = UPB_ALIGN_DOWN(n, UPB_ALIGN_OF(upb_Arena));
                        ^~~~~~~~~~~~~~~~~~~~~~~
```
bazel_6 https://hydra.nixos.org/build/241127779/nixlog/1
```
In file included from external/com_google_absl/absl/algorithm/container.h:55:
external/com_google_absl/absl/meta/type_traits.h:560:8: error: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Werror,-Wdeprecated-builtins]
      (__has_trivial_assign(ExtentsRemoved) || !kIsCopyOrMoveAssignable) &&
       ^
```

Note: `bazel_5` and `bazel_4` require more work, for some reason extra
`-Wall` in combination with `-Werror` sneaks in and overrides `-Wno-`
settings, haven't managed yet to debug where exactly are the last
flags (last one wins) come from there.

ZHF: #265948
2023-11-22 22:53:47 +01:00
Uri Baghin
8c47608edd
Merge pull request #268614 from boltzmannrain/bazel_darwin_bash_binary
bazel_6: fix: make patched bash a native binary
2023-11-22 14:51:39 +08:00
Dmitry Ivankov
dd85449211
Update pkgs/development/tools/build-managers/bazel/bazel_6/default.nix
Co-authored-by: Uri Baghin <uri@canva.com>
2023-11-20 02:13:23 +01:00
Dmitry Ivankov
7377bba1c7 bazel_6: fix: make patched bash a native binary
https://hydra.nixos.org/build/240805256/nixlog/1
https://hydra.nixos.org/build/240805170/nixlog/2
Failure is a bit obscured but long story short, a script within
bazel gets custom nixpkgs shebang which in turn makes shell run
in POSIX-compatible mode. Bazel expects bash in non-POSIX mode
and osx-specific script starts to fail due to `set -e` and subshell
interaction differences in those modes (sub-shells and functions
suddently start inheriting `set -e` and fail to produce desired
output). More debug info is available in #267670

Shell scripts aren't guaranteed to work as interpreters in shebang.
In particular thin shell wrappers aren't shebang-ready on MacOS.
It may work sometimes depending on what exactly would try to execute
a script with such shebang, but generally it's not guaranteed to work.
See #124556

Bash wrapper was introduced in #266847 and so far seems like the
issue only affects darwin builds: hydra failure is in osx-specific
script, also shebang issue is usually darwin-specific.

Let's wrap it as a native binary to make it shebang-compatible.

The wrapper is only currently added to `bazel_6` so no need for
changes in other versions.

ZHF: #265948
2023-11-20 02:02:39 +01:00
Mario Rodas
9db924e702 bazel-buildtools: 6.3.3 -> 6.4.0
Diff: https://github.com/bazelbuild/buildtools/compare/v6.3.3...v6.4.0

Changelog: https://github.com/bazelbuild/buildtools/releases/tag/v6.4.0
2023-11-16 04:20:00 +00:00
Malte Poll
b1dcea4773 bazel: use bash with fallback $PATH consisting of basic shell utils
Second iteration of this change.
First attempt did not ensure `bashWithDefaultShellUtils` is available at runtime.
2023-11-11 13:22:20 +01:00
Bjørn Forsman
7e41495103 Revert "bazel: use bash with fallback $PATH consisting of basic shell utils"
This reverts commit 3576806d7e.

It broke python311.pkgs.jaxlib, see
https://github.com/NixOS/nixpkgs/pull/265041#issuecomment-1806784693.
2023-11-11 12:34:28 +01:00
Malte Poll
3576806d7e bazel: use bash with fallback $PATH consisting of basic shell utils 2023-11-11 00:25:53 +01:00
Claudio Bley
c871ce0f51 bazel_6: Fix pythonBinPath and pythonBinPathWithNixHacks tests
The tests started to fail after the repo-wide python 3.10 -> 3.11 update.

This is caused by Bazel's py_binary rule setting the [`PYTHONSAFEPATH`][1]
environment variable, which only has an effect for Python >= 3.11.

Setting this variable avoids prepending the current working directory and the
script's directory. The current test code relied on this behavior and thus
failed with:

```
Traceback (most recent call last):
  File "/build/.cache/bazel/_bazel_build/8bcfff1c77854f2a2b07d1413b0fc106/execroot/our_workspace/bazel-out/k8-fastbuild/bin/python/bin.runfiles/our_workspace/python/bin.py", line 6, in <module>
    from lib import foo
ModuleNotFoundError: No module named 'lib'
```

See also [bazelbuild/bazel#7091][2]

[1]: https://docs.python.org/3.11/using/cmdline.html#envvar-PYTHONSAFEPATH
[2]: https://github.com/bazelbuild/bazel/issues/7091
2023-10-30 09:43:28 +01:00
Claudio Bley
932ee614a4 bazel_6: 6.3.2 -> 6.4.0 2023-10-26 08:28:19 +02:00
Claudio Bley
73654d2367 bazel_6: Remove .bazelversion file in the updater sources 2023-10-26 08:28:19 +02:00
Harsh Modi
a8f616d11c bazel_6: Add diffutils and gnupatch to initialEnvironment
Nix's version of bazel has custom patches to make bazel more hermetic when used with nix. One of those is limiting the default
environment of Bash. However, this default environment is insufficient because lots of programs rely on diff being in the path like buildifier, golangci-lint, and other things since golang diff implementations aren't very good.

Ideally we'd include "diffutils" as part of this list for rules that assume the presence of "diff" and don't allow nice knobs to configure otherwise.

Furthermore, bazel has a lot of internal facilities that utilize patch (like when downloading workspaces, we have the option of patching them), so include gnupatch as well.

Fixes #249846
2023-09-12 10:14:31 -07:00
Mario Rodas
032fef37aa bazel-remote: 2.4.2 -> 2.4.3
Diff: https://github.com/buchgr/bazel-remote/compare/v2.4.2...v2.4.3

Changelog: https://github.com/buchgr/bazel-remote/releases/tag/v2.4.3
2023-08-30 04:20:00 +00:00
Uri Baghin
2c57e8f59c
Merge pull request #251336 from marsam/update-bazel-remote
bazel-remote: 2.4.1 -> 2.4.2
2023-08-26 14:19:48 +10:00