diff options
Diffstat (limited to 'dev-util/bazel')
-rw-r--r-- | dev-util/bazel/Manifest | 3 | ||||
-rw-r--r-- | dev-util/bazel/bazel-4.2.2.ebuild | 96 | ||||
-rw-r--r-- | dev-util/bazel/files/bazel-4.2.2-absl_numeric_limits.patch | 41 |
3 files changed, 140 insertions, 0 deletions
diff --git a/dev-util/bazel/Manifest b/dev-util/bazel/Manifest index d5cf24017882..bb3468c59ca8 100644 --- a/dev-util/bazel/Manifest +++ b/dev-util/bazel/Manifest @@ -1,5 +1,8 @@ AUX bazel-3.2.0-include-limits-for-gcc-11.patch 788 BLAKE2B 7eadc6f43c1a527584f2b4d8d59387ffa1526fb7282919d38dd8a05eaa35766addd900c105444ea6925db868ee8ef8ff8297095926cb78597d23131f350539ae SHA512 d8997f67f79aaf276f0b9b2e60928f39b34722323947c597b6bcc3a7a7211be9e7a1e65917d7e7f92bc88f9ef79a7803c352ebe823ee5f933918f6f00716218a AUX bazel-3.7.2-musl-temp-failure-retry.patch 1238 BLAKE2B d6890d77ddd256fd1fa681ecf0aad1c5ac4e4e2f4ff46276b54a3464a6394136fe239aa32a5ce11b97fc78b90fb6615746b418eb320d33a3640b4932c929431a SHA512 81e5cd55dcf3d158af88e2edf286862b75c1585abe6d37ff67a99716b6c57a338d22c2a96f8938a10a374348edc532e01670e164fb376b3df70471afa11c898b +AUX bazel-4.2.2-absl_numeric_limits.patch 2413 BLAKE2B 3e31f886b3f561faa79255aa65b163fae0ffae94db0374e033e3690119de7b87e183a8f6fc1c88d880a319bb1ea6c5d86640b864711cfb2f4d5b30095b303217 SHA512 3b32947b1e0af9ec367bafea439a4e21a57dd7c782fb6cc32f4c2a15bda05be2a676625b80cfa28c7a98e6be3bd7310ee632d5eef966615d11aaa14afea981bc DIST bazel-3.7.2-dist.zip 313677756 BLAKE2B cd6363762c68d25739a6bf6c13f10e191302a10b6fb7d97455effbc678d4f0b644c76115cad478aad7c09f703d9e594f4bdb8669ed6ab97d6a559a27723c510c SHA512 e8746ef5ec22feb95e9dbbddb3fb56cf8f49c80f326fc2a4e0ce2619607826fac22f46bfb995daee55bf9ffabb9d646b8454be2bce7b479da5cf2a7e5b3be62b +DIST bazel-4.2.2-dist.zip 279304631 BLAKE2B 2a32838e50b63c4b6400aced10085c6c9aacf28641ea555a44b9c4ed8991fc29658b4d420b26179e8eed0e00cfe7391e8eec84c7851f17493c74d1c5682427af SHA512 123f73dc87053e37705bb729f82bd722d6d2799fe106f79c51cf5566fb2771d824108cbe275aad55ae590b970c549008b433704cbf1245394769e950796eb8db EBUILD bazel-3.7.2-r1.ebuild 2740 BLAKE2B c6aaea27500b46a0aa684410307726b6ba5a306b27331cdee0e4b6af09cd711fb6918eeb0e9ac1c84e4fce1f22b870f7bf0f62b498e16ea71a232ea5280ca5af SHA512 f3b810aa3af9baf87e732029235650bb59c1f9894bc80b7973fbeed47e8c362b5c6dc75365b752043e655c8a57f52bcdb8a8aaa0f7491b7a34619d778571b4ab +EBUILD bazel-4.2.2.ebuild 2331 BLAKE2B ea7a699f20c41be2c185ea185657c16072c6aeb13ad0f89eb33bcabc44eaa1dab492e27f82af9066f38c98770c0053ae36228d6a0c1e0c07585863040aaa25b9 SHA512 42e147bcfb3f46a85ced3fd68c08019f4f6477863b68a20af5d91f54a9e2289db09a1e8c7f09261436c9d24c0cc7bd4523502a4b62f127d57c559b443f890a39 MISC metadata.xml 706 BLAKE2B 07f70164b2e809db66f4255b62635e1b93ff58269f323a0efbfd994dd425034e4896599463c900582f0863cebf8f5ee0dd56da01bafbd30c9e27e88ffb99ad46 SHA512 3a335159533ca5f0d7de3b1bde18a737ba2dca2de56121124cdb9cb05009db5fac07bef1d21d5b73bec834b7928e7ec291e2ff3cd964e395431b9deac29bfbe6 diff --git a/dev-util/bazel/bazel-4.2.2.ebuild b/dev-util/bazel/bazel-4.2.2.ebuild new file mode 100644 index 000000000000..41553e6c87d4 --- /dev/null +++ b/dev-util/bazel/bazel-4.2.2.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 bazel java-pkg-2 multiprocessing + +DESCRIPTION="Fast and correct automated build system" +HOMEPAGE="https://bazel.build/" + +SRC_URI="https://github.com/bazelbuild/bazel/releases/download/${PV}/${P}-dist.zip" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="examples tools" +# strip corrupts the bazel binary +# test fails with network-sandbox: An error occurred during the fetch of repository 'io_bazel_skydoc' (bug 690794) +RESTRICT="strip test" +RDEPEND=">=virtual/jdk-1.8:*" +DEPEND="${RDEPEND} + app-arch/unzip + app-arch/zip" + +S="${WORKDIR}" +PATCHES=( + "${FILESDIR}/${PN}-3.2.0-include-limits-for-gcc-11.patch" + "${FILESDIR}/${PN}-4.2.2-absl_numeric_limits.patch" +) + +pkg_setup() { + if has ccache ${FEATURES}; then + ewarn "${PN} usually fails to compile with ccache, you have been warned" + fi + java-pkg-2_pkg_setup +} + +src_unpack() { + # Only unpack the main distfile + unpack ${P}-dist.zip +} + +src_prepare() { + default + + # F: fopen_wr + # S: deny + # P: /proc/self/setgroups + # A: /proc/self/setgroups + # R: /proc/24939/setgroups + # C: /usr/lib/systemd/systemd + addpredict /proc +} + +src_compile() { + export EXTRA_BAZEL_ARGS="--jobs=$(makeopts_jobs) $(bazel_get_flags) --host_javabase=@local_jdk//:jdk" + VERBOSE=yes ./compile.sh || die + + ./scripts/generate_bash_completion.sh \ + --bazel=output/bazel \ + --output=bazel-complete.bash \ + --prepend=scripts/bazel-complete-header.bash \ + --prepend=scripts/bazel-complete-template.bash +} + +src_test() { + output/bazel test \ + --verbose_failures \ + --spawn_strategy=standalone \ + --genrule_strategy=standalone \ + --verbose_test_summary \ + examples/cpp:hello-success_test || die + output/bazel shutdown +} + +src_install() { + dobin output/bazel + newbashcomp bazel-complete.bash ${PN} + bashcomp_alias ${PN} ibazel + insinto /usr/share/zsh/site-functions + doins scripts/zsh_completion/_bazel + + if use examples; then + docinto examples + dodoc -r examples/* + docompress -x /usr/share/doc/${PF}/examples + fi + # could really build tools but I don't know which ones + # are actually used + if use tools; then + docinto tools + dodoc -r tools/* + docompress -x /usr/share/doc/${PF}/tools + docompress -x /usr/share/doc/${PF}/tools/build_defs/pkg/testdata + fi +} diff --git a/dev-util/bazel/files/bazel-4.2.2-absl_numeric_limits.patch b/dev-util/bazel/files/bazel-4.2.2-absl_numeric_limits.patch new file mode 100644 index 000000000000..c120255bf383 --- /dev/null +++ b/dev-util/bazel/files/bazel-4.2.2-absl_numeric_limits.patch @@ -0,0 +1,41 @@ + third_party/grpc/absl.patch | 11 +++++++++++ + third_party/grpc/grpc_1.33.1.patch | 12 ++++++++++++ + 2 files changed, 23 insertions(+) + +diff --git a/third_party/grpc/absl.patch b/third_party/grpc/absl.patch +new file mode 100644 +index 0000000000..aeb6916c6f +--- /dev/null ++++ b/third_party/grpc/absl.patch +@@ -0,0 +1,11 @@ ++diff -ur abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d_orig/absl/synchronization/internal/graphcycles.cc abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d/absl/synchronization/internal/graphcycles.cc ++--- abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d_orig/absl/synchronization/internal/graphcycles.cc 2020-03-04 12:57:37.000000000 -0800 +++++ abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d/absl/synchronization/internal/graphcycles.cc 2022-01-28 12:27:26.588456815 -0800 ++@@ -35,6 +35,7 @@ ++ ++ #include "absl/synchronization/internal/graphcycles.h" ++ +++#include <limits> ++ #include <algorithm> ++ #include <array> ++ #include "absl/base/internal/hide_ptr.h" +diff --git a/third_party/grpc/grpc_1.33.1.patch b/third_party/grpc/grpc_1.33.1.patch +index dda6fc177e..f426d02b63 100644 +--- a/third_party/grpc/grpc_1.33.1.patch ++++ b/third_party/grpc/grpc_1.33.1.patch +@@ -120,3 +120,15 @@ index c047f0c515..7c24fbc617 100644 + ":windows": "@com_github_grpc_grpc//third_party/cares:config_windows/ares_config.h", + ":android": "@com_github_grpc_grpc//third_party/cares:config_android/ares_config.h", + "//conditions:default": "@com_github_grpc_grpc//third_party/cares:config_linux/ares_config.h", ++diff -ur grpc-1.33.1/bazel/grpc_deps.bzl grpc-1.33.1/bazel/grpc_deps.bzl ++--- grpc-1.33.1/bazel/grpc_deps.bzl 2022-02-05 16:50:14.780031906 -0800 +++++ grpc-1.33.1/bazel/grpc_deps.bzl 2022-02-05 16:51:56.670953159 -0800 ++@@ -241,6 +241,8 @@ ++ name = "com_google_absl", ++ sha256 = "f368a8476f4e2e0eccf8a7318b98dafbe30b2600f4e3cf52636e5eb145aba06a", ++ strip_prefix = "abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d", +++ patch_args = ["-p1"], +++ patches = ["@io_bazel//third_party/grpc:absl.patch"], ++ urls = [ ++ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz", ++ "https://github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz", |