diff options
author | Luke Granger-Brown <git@lukegb.com> | 2022-09-11 22:28:05 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-11 22:28:05 +0100 |
commit | f9544df64514e24bf2913a5462e69fdc1a89e08e (patch) | |
tree | 3924d7ceab348e55822379452695fd2181b03cbc /pkgs/servers | |
parent | cd7fb8d0208b3533f271a45297f501a131d9b923 (diff) | |
parent | 0a087095acc040a8cf90c59c649451b642f21e5e (diff) |
Merge pull request #190742 from lukegb/envoy
envoy: remove remaining nix store references from deps
Diffstat (limited to 'pkgs/servers')
-rw-r--r-- | pkgs/servers/http/envoy/default.nix | 43 |
1 files changed, 28 insertions, 15 deletions
diff --git a/pkgs/servers/http/envoy/default.nix b/pkgs/servers/http/envoy/default.nix index b9342ccd4fac5..ca2c38c0a1a71 100644 --- a/pkgs/servers/http/envoy/default.nix +++ b/pkgs/servers/http/envoy/default.nix @@ -1,5 +1,6 @@ { lib , bazel_5 +, bazel-gazelle , buildBazelPackage , fetchFromGitHub , stdenv @@ -48,6 +49,7 @@ buildBazelPackage rec { postPatch = '' sed -i 's,#!/usr/bin/env python3,#!${python3}/bin/python,' bazel/foreign_cc/luajit.patch sed -i '/javabase=/d' .bazelrc + sed -i '/"-Werror"/d' bazel/envoy_internal.bzl # Use system Python. sed -i -e '/python_interpreter_target =/d' -e '/@python3_10/d' bazel/python_dependencies.bzl @@ -81,8 +83,8 @@ buildBazelPackage rec { fetchAttrs = { sha256 = { - x86_64-linux = "0y3gpvx148bnn6kljdvkg99m681vw39l0avrhvncbf62hvpifqkw"; - aarch64-linux = "0lln5mdlskahz5hb4w268ys2ksy3051drrwlhracmk4i7rpm7fq3"; + x86_64-linux = "10f1lcn8pynqcj2hlz100zbpmawvn0f2hwpcw3m9v6v3fcs2l6pr"; + aarch64-linux = "1na7gna9563mm1y7sy34fh64f1kxz151xn26zigbi9amwcpjbav6"; }.${stdenv.system} or (throw "unsupported system ${stdenv.system}"); dontUseCmakeConfigure = true; dontUseGnConfigure = true; @@ -91,20 +93,18 @@ buildBazelPackage rec { find $bazelOut/external -name requirements.bzl | while read requirements; do sed -i '/# Generated from /d' "$requirements" done - find $bazelOut/external -type f -executable | while read execbin; do - file "$execbin" | grep -q ': ELF .*, dynamically linked,' || continue - patchelf \ - --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \ - "$execbin" - done # Remove references to paths in the Nix store. sed -i \ -e 's,${python3},__NIXPYTHON__,' \ -e 's,${stdenv.shellPackage},__NIXSHELL__,' \ $bazelOut/external/com_github_luajit_luajit/build.py \ - $bazelOut/external/local_config_sh/BUILD + $bazelOut/external/local_config_sh/BUILD \ + $bazelOut/external/base_pip3/BUILD.bazel + rm -r $bazelOut/external/go_sdk + rm -r $bazelOut/external/local_jdk + rm -r $bazelOut/external/bazel_gazelle_go_repository_tools/bin # Remove Unix timestamps from go cache. rm -rf $bazelOut/external/bazel_gazelle_go_repository_cache/{gocache,pkg/mod/cache,pkg/sumdb} @@ -115,6 +115,16 @@ buildBazelPackage rec { dontUseGnConfigure = true; dontUseNinjaInstall = true; preConfigure = '' + # Make executables work, for the most part. + find $bazelOut/external -type f -executable | while read execbin; do + file "$execbin" | grep -q ': ELF .*, dynamically linked,' || continue + patchelf \ + --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \ + "$execbin" + done + + ln -s ${bazel-gazelle}/bin $bazelOut/external/bazel_gazelle_go_repository_tools/bin + sed -i 's,#!/usr/bin/env bash,#!${stdenv.shell},' $bazelOut/external/rules_foreign_cc/foreign_cc/private/framework/toolchains/linux_commands.bzl # Add paths to Nix store back. @@ -122,7 +132,8 @@ buildBazelPackage rec { -e 's,__NIXPYTHON__,${python3},' \ -e 's,__NIXSHELL__,${stdenv.shellPackage},' \ $bazelOut/external/com_github_luajit_luajit/build.py \ - $bazelOut/external/local_config_sh/BUILD + $bazelOut/external/local_config_sh/BUILD \ + $bazelOut/external/base_pip3/BUILD.bazel ''; installPhase = '' install -Dm0755 bazel-bin/source/exe/envoy-static $out/bin/envoy @@ -137,10 +148,7 @@ buildBazelPackage rec { "-c opt" "--spawn_strategy=standalone" "--noexperimental_strict_action_env" - "--cxxopt=-Wno-maybe-uninitialized" - "--cxxopt=-Wno-uninitialized" - "--cxxopt=-Wno-error=type-limits" - "--cxxopt=-Wno-error=range-loop-construct" + "--cxxopt=-Wno-error" # Force use of system Java. "--extra_toolchains=@local_jdk//:all" @@ -148,7 +156,12 @@ buildBazelPackage rec { "--tool_java_runtime_version=local_jdk" "--define=wasm=${wasmRuntime}" - ]; + ] ++ (lib.optionals stdenv.isAarch64 [ + # external/com_github_google_tcmalloc/tcmalloc/internal/percpu_tcmalloc.h:611:9: error: expected ':' or '::' before '[' token + # 611 | : [end_ptr] "=&r"(end_ptr), [cpu_id] "=&r"(cpu_id), + # | ^ + "--define=tcmalloc=disabled" + ]); bazelFetchFlags = [ "--define=wasm=${wasmRuntime}" ]; |